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.6-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (16.0 MB view details)

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

docc_ai-0.0.6-cp312-cp312-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl (15.3 MB view details)

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

docc_ai-0.0.6-cp312-cp312-macosx_14_0_arm64.whl (48.1 MB view details)

Uploaded CPython 3.12macOS 14.0+ ARM64

docc_ai-0.0.6-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (16.0 MB view details)

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

docc_ai-0.0.6-cp311-cp311-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl (15.3 MB view details)

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

docc_ai-0.0.6-cp311-cp311-macosx_14_0_arm64.whl (48.1 MB view details)

Uploaded CPython 3.11macOS 14.0+ ARM64

File details

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

File metadata

File hashes

Hashes for docc_ai-0.0.6-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 9f28fc3058df4aa0075f2d922a1d0e5ea2ce41edf113c45cf9a753c7223e9315
MD5 745034a8b9fa26c890348d5f267c66d5
BLAKE2b-256 9dd66632fd66b2385d44e99ec3153fe9bde5fa4dff0205ddbc2fc8d263afcffe

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for docc_ai-0.0.6-cp312-cp312-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 f181a1c7a5974ac992dd76a1082b0414b7badc6407c4b7727692421297942126
MD5 00591886ff13926956733b547ad28471
BLAKE2b-256 74a736fee95bd23b8fae4dd4e6ca685215a7e383de201ae082b9f3d195854186

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for docc_ai-0.0.6-cp312-cp312-macosx_14_0_arm64.whl
Algorithm Hash digest
SHA256 bf3998bd0a778502be45712489bdeabca0f3c0b416fd8a40b912d30634e0bd9e
MD5 1c0396b8b451754f1946ce09ebdbcb24
BLAKE2b-256 121fac645b3551b3cb641b9505dc79d37e868e88d9a6eb4877bbf1892559eee4

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for docc_ai-0.0.6-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 1ae5a383a3bff9816b7886f5839f6a691711b3f24c3d9d51db9c6878acbe7e78
MD5 f11efc4a7317e09791e82ec0a92e4eb6
BLAKE2b-256 5586c9e66c044db5ab6764f69b31a79a30d35b6937ba64f4e452d37a169f523b

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for docc_ai-0.0.6-cp311-cp311-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 f7546b0c154e81e99e3bfe0a075afa38ad9a2d3224aa2b37997c8a2ef0e0c247
MD5 b5ebd470eb865816479e765f39453131
BLAKE2b-256 f3ee842187be0337ae8bbc411d55ab7ca816ac83c42bb919034ef73d71e6e272

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for docc_ai-0.0.6-cp311-cp311-macosx_14_0_arm64.whl
Algorithm Hash digest
SHA256 74dd683c6fe919b46399c3cf7e7df1feb76a3543ae6810e5076b5de2db6a5bd3
MD5 22fd4086220dc3870cba261a5957095d
BLAKE2b-256 6d7ff2ced57d6fe37da7dcb25e2c31cdf5cb5d9e98d2876d8a31d2b2ba76526a

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