Skip to main content

Python bindings and MLIR conversion for JIT compiling PyTorch models to SDFGs.

Project description

MLIR

The MLIR module contains a dialect and translation of core MLIR dialects to SDFGs.

  • SDFG Dialect: A dialect to represent SDFGs in MLIR.
  • Conversion: Conversion passes to convert core dialects (arith, linalg, etc.) to the SDFG dialect.
  • Translate: A translation pass to dump an SDFG from the SDFG dialect.

Build from Sources

To build the MLIR component from source install LLVM/MLIR dependencies first:

sudo apt-get install -y libmlir-19 libmlir-19-dev mlir-19-tools

Second, build from the root of the repository using cmake:

mkdir build && cd build
cmake -G Ninja \
    -DCMAKE_C_COMPILER=clang-19 \
    -DCMAKE_CXX_COMPILER=clang++-19 \
    -DCMAKE_BUILD_TYPE=Debug \
    -DMLIR_BUILD_FRONTEND=ON \
    -DMLIR_BUILD_TESTS=ON \
    -DMLIR_DIR=/usr/lib/llvm-19/lib/cmake/mlir \
    -DLLVM_EXTERNAL_LIT=/usr/lib/llvm-19/build/utils/lit/lit.py \
    -DWITH_SYMENGINE_THREAD_SAFE=ON \
    -DWITH_SYMENGINE_RCP=ON \
    -DINSTALL_GTEST=OFF \
    -DBUILD_TESTS:BOOL=OFF \
    -DBUILD_BENCHMARKS:BOOL=OFF \
    -DBUILD_BENCHMARKS_GOOGLE:BOOL=OFF \
    ..
ninja -j$(nproc)

To verify, the basic dialects and translation work, run the tests:

ninja check-docc-mlir

License

This component is part of docc and is published under the BSD-3-Clause license. See LICENSE 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 Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

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

docc_ai-0.0.5-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (17.5 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

docc_ai-0.0.5-cp312-cp312-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl (16.8 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.27+ ARM64manylinux: glibc 2.28+ ARM64

docc_ai-0.0.5-cp312-cp312-macosx_14_0_arm64.whl (49.3 MB view details)

Uploaded CPython 3.12macOS 14.0+ ARM64

docc_ai-0.0.5-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (17.5 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

docc_ai-0.0.5-cp311-cp311-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl (16.8 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.27+ ARM64manylinux: glibc 2.28+ ARM64

docc_ai-0.0.5-cp311-cp311-macosx_14_0_arm64.whl (49.3 MB view details)

Uploaded CPython 3.11macOS 14.0+ ARM64

File details

Details for the file docc_ai-0.0.5-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for docc_ai-0.0.5-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 68354ddd40699f75641d67348e0ff61eb79b9bac85d0c812d7db2441228f9e47
MD5 19fc6c6fda2e55343b95d76119fe4762
BLAKE2b-256 75e06efad694f527aebcfc20dab2ee4f5602cd92c9443b1932e516057787b379

See more details on using hashes here.

File details

Details for the file docc_ai-0.0.5-cp312-cp312-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for docc_ai-0.0.5-cp312-cp312-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 f448334308ae486acdd0c3ac92a739773106da9f780707aa4adf626a88281d60
MD5 ba3eb950339c061c2eb421cd79f61322
BLAKE2b-256 d0ea58dce912012b38dc62b56d4cb5d8954adba0b4168dca5d943dcef349b642

See more details on using hashes here.

File details

Details for the file docc_ai-0.0.5-cp312-cp312-macosx_14_0_arm64.whl.

File metadata

File hashes

Hashes for docc_ai-0.0.5-cp312-cp312-macosx_14_0_arm64.whl
Algorithm Hash digest
SHA256 49bc08e47a4ee143fd5b3646d85abf51f2dc6d7c0607f3533316fc65ed1b22c8
MD5 9959cff541a06a61667fb8da2c8e01d5
BLAKE2b-256 a8b77f4df878d41442b1e7f649d63536b006c14f4c44baec52fb6937b5ddbe6d

See more details on using hashes here.

File details

Details for the file docc_ai-0.0.5-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for docc_ai-0.0.5-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 78884dc73e428e07c5a102e3ece29728ea8568147085647865a34ba614b91f1b
MD5 ded1ff2b17939a52f35ad5ab34d59b76
BLAKE2b-256 d24032b14622ad2671a1007425d314f5a30e4ded41006019ace72e7a3d022b75

See more details on using hashes here.

File details

Details for the file docc_ai-0.0.5-cp311-cp311-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for docc_ai-0.0.5-cp311-cp311-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 2f4680c1bccb5d3c53c552e757e9be769a56f29864faeb50ad46dacc069b9afb
MD5 c8007aa70255b5433da51e2d0d2d6950
BLAKE2b-256 90e02635df3592e91c4d9266a2a9e7f8e5f7e9e0fc261ddd48693d01c8712e75

See more details on using hashes here.

File details

Details for the file docc_ai-0.0.5-cp311-cp311-macosx_14_0_arm64.whl.

File metadata

File hashes

Hashes for docc_ai-0.0.5-cp311-cp311-macosx_14_0_arm64.whl
Algorithm Hash digest
SHA256 cf93b45dda799054b3ace2304e20dfdc8a4a400ab5cd9e3fb4647800e73241f7
MD5 75266a48f9c6af948ef72523a2774ac2
BLAKE2b-256 b97c4b8b60ee8c3eb37c5091030abaef3f1a3a67ac1459ef48a19c41b784f6ad

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