Skip to main content

aie4ml

License PyPI PyPI - Downloads arXiv

aie4ml is an end-to-end compiler that generates optimized AIE firmware automatically, which can be then built and simulated directly using AMD Vitis. It targets the AMD AI Engine (AIE) from model-level frontends and lowers supported operators into AIE graphs and kernels as a standalone AIE project.

  • Current hardware targets: AIE-ML and AIE-MLv2 devices.
  • Current frontend paths: ONNX for explicit operator graphs, and an optional hls4ml frontend path.

Current Support

aie4ml currently supports Dense/GEMM, dynamic MatMul, Elementwise Add, quantized LayerNorm, quantized Softmax (accurate and approx.), last-two-axis Permute, Split/Slice, Concat, fanout, and fused ReLU across AIE-ML and AIE-MLv2 devices.

See the operator support matrix for coverage, tensor and transport contracts, and current limitations.

Prerequisites

  • AMD Vitis 2025.2 and a valid AIE tools license.
  • Python 3.10+.
  • Optional: hls4ml if using the hls4ml frontend integration.

Frontend Compatibility

The ONNX path is the recommended route for operator-level compiler development and for models that already express quantized tensors and Q/DQ boundaries explicitly. The hls4ml path is intended for MLP-style pipelines at the moment.

Installation

pip install aie4ml

For the ONNX frontend (recommended path), also install ONNX and onnxruntime:

pip install onnx

Install hls4ml only if you need the hls4ml frontend/backend integration:

pip install hls4ml

Documentation & Tutorials

Documentation and usage: https://github.com/dimdano/aie4ml

Tutorial 1: tutorials/tutorial_1.ipynb Tutorial 2: tutorials/tutorial_2.ipynb

General hls4ml concepts: https://fastmachinelearning.org/hls4ml

Maintainer

aie4ml is developed and maintained by Dimitrios Danopoulos.

Citation

If aie4ml contributes to your research, please cite the corresponding publications:

@INPROCEEDINGS{11552717,
  author={Danopoulos, Dimitrios and Lupi, Enrico and Sun, Chang and Dittmeier, Sebastian and Kagan, Michael and Loncar, Vladimir and Pierini, Maurizio},
  booktitle={2026 IEEE 34th Annual International Symposium on Field-Programmable Custom Computing Machines (FCCM)},
  title={AIE4ML: An End-to-End Framework for Compiling Neural Networks for the Next Generation of AMD AI Engines},
  year={2026},
  volume={},
  number={},
  pages={176-184},
  keywords={Tiles;Modeling;Arrays;Kernel;Memory;Information rates;Throughput;System-on-chip;Loading;Engines;ai engines;hls4ml;aie4ml;versal;acceleration;inference},
  doi={10.1109/FCCM68464.2026.00035}}
@misc{danopoulos2026tamingexponentialfastsoftmax,
      title={Taming the Exponential: A Fast Softmax Surrogate for Integer-Native Edge Inference},
      author={Dimitrios Danopoulos and Enrico Lupi and Michael Kagan and Maurizio Pierini},
      year={2026},
      eprint={2604.02292},
      archivePrefix={arXiv},
      primaryClass={cs.LG},
      url={https://arxiv.org/abs/2604.02292},
}

Download files

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

Source Distribution

aie4ml-0.1.7.tar.gz (563.4 kB view details)

Uploaded Source

Built Distribution

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

aie4ml-0.1.7-py3-none-any.whl (230.6 kB view details)

Uploaded Python 3

File details

Details for the file aie4ml-0.1.7.tar.gz.

File metadata

  • Download URL: aie4ml-0.1.7.tar.gz
  • Upload date:
  • Size: 563.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.10.20

File hashes

Hashes for aie4ml-0.1.7.tar.gz
Algorithm Hash digest
SHA256 291f6caf1f8e05cbd11923bbfe51aebdf69fbfd2443ded1c9fb498868747a7fe
MD5 6cb44281bade753aa5b5fee991110e88
BLAKE2b-256 04ac25eeeb40e4eb2e45ea03985b17a871720c5b4e4cbc6a4bd36fddee32fcb1

See more details on using hashes here.

File details

Details for the file aie4ml-0.1.7-py3-none-any.whl.

File metadata

  • Download URL: aie4ml-0.1.7-py3-none-any.whl
  • Upload date:
  • Size: 230.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.10.20

File hashes

Hashes for aie4ml-0.1.7-py3-none-any.whl
Algorithm Hash digest
SHA256 f712c8fd8f428704bf7ee166ce56b33935dcf55cec0c2381705af406f0ec5227
MD5 f3aaebb845e4d4b87ac497f9091fef7a
BLAKE2b-256 b250fccdc17266159ecd35f925fbd56f052d573048cb1d8b126c05d367d7b3b4

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

0.1.7 This release

2 files

0.1.6

2 files

0.1.5

2 files

0.1.4

2 files

0.1.2

2 files

0.1.1

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page