Skip to main content

A Python package for program analysis and custom instruction generation

Project description

Pixi (Pass for Instruction eXtraction and Inference)

License: MIT Python 3.8+ pypi

Pixi is a tool for analyzing LLVM IR and generating custom hardware instructions to optimize performance-critical code sections in the von-Neumann pipeline. The project follows the idea of everything is computation both hardware and software but they come with different computational cost models.

Requirements

  • Python 3.10+
  • LLVM and Clang (automatically set up by the installation process)
  • Ninja build system
  • CMake 3.13.4+

Installation

# Clone the repository
git clone https://github.com/JoyenBenitto/Pixi.git
cd Pixi

# Install the package in development mode
pip install -e .

# Set up LLVM dependencies
pixi setup -c <jobs>

[!Note] The setup process clones and configures the LLVM project, which may take some time during the initial setup. Subsequent setups will be much faster.

Usage

Pixi provides a comprehensive command-line interface for analyzing code, generating LLVM IR, and creating custom hardware instructions.

Command Reference

Command Description
setup Sets up the LLVM environment for Pixi

License

This project is licensed under the MIT License - see the LICENSE file for details.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

py_pixi-0.0.1.tar.gz (8.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

py_pixi-0.0.1-py3-none-any.whl (9.3 kB view details)

Uploaded Python 3

File details

Details for the file py_pixi-0.0.1.tar.gz.

File metadata

  • Download URL: py_pixi-0.0.1.tar.gz
  • Upload date:
  • Size: 8.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for py_pixi-0.0.1.tar.gz
Algorithm Hash digest
SHA256 b3fd9390128aff3d3aa2237eead8f661c930f3b9e2d76822e1689c4622e45446
MD5 a12f0e1fd86ec32963f51780c813129c
BLAKE2b-256 5ecc5616f93382920a60bd1d7449606b968c93a1edd92f75dbfbd172d5d77f3c

See more details on using hashes here.

File details

Details for the file py_pixi-0.0.1-py3-none-any.whl.

File metadata

  • Download URL: py_pixi-0.0.1-py3-none-any.whl
  • Upload date:
  • Size: 9.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for py_pixi-0.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 745189161bf37ff20af255c2b32bee7a0db0474d196a0a08066b872513435aa3
MD5 c961bcf1fc3bc27bda3cca2f03fd1dcd
BLAKE2b-256 910367f743b6dc30aacca9770dea1c318f600ca03c5688508fa50104a3f149e4

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page