Run and analyze SVE code on non-SVE platforms

Arm Instruction Emulator (ArmIE) runs on AArch64 platforms and emulates SVE instructions. ArmIE enables you to compile SVE code with Arm Compiler and run the SVE binary without SVE-enabled hardware. Based on the DynamoRIO dynamic binary instrumentation framework, ArmIE enables the customized instrumentation of SVE binaries, which enables you to analyze specific aspects of runtime behavior.

Get started

Armie Block Diagram.
  • Square with arrow pointing through (Download icon).
  • Download

    Download ArmIE binaries for leading Linux distributions running on Arm

    Download
  • High performance computing.
  • DynamoRIO and ArmIE

    Emulating SVE on existing Armv8-A hardware using DynamoRIO and ArmIE

    Learn more
  • Human head showing understanding.
  • Tutorials

    Browse our tutorials to learn about how to use Arm Instruction Emulator.

    Learn more
  • Manual containing technical information.
  • Command Reference

    See which options you can use when invoking the armie command.

    Learn more
  • A line drawing of documentation.
  • Emulation Functions Reference

    Details about the emulation functions applicable to Arm Instruction Emulator

    Learn more
  • A line drawing of a book.
  • Get Started

    A complete workflow from installation to running your first SVE program with Arm Instruction Emulator.

    Get Started

FAQ

Information regarding Arm Instruction Emulator

Q: What does Arm Instruction Emulator support?
Arm Instruction Emulator supports emulation and runtime analysis of all AArch64 and SVE instructions when running on Armv8-A compatible hardware. Note that the emulator does not support emulation and analysis of Armv8.x instructions, namely Armv8.1 and Armv8.2. 

Q: Which Linux distributions are supported?
Arm Instruction Emulator is available on several Linux distributions including Ubuntu, RHEL and SUSE.

Help and support

Get in touch if you have questions, feedback, or want to raise an issue.

Get support