# Arm Instruction Emulator (armie)

## About this Install Guide

| Reading time: | 10 min |
|---------------|--------|
| Last updated: | 5 Aug 2026 |

| Author:         | Jason Andrews, Arm [GitHub](https://github.com/jasonrandrews) [LinkedIn](https://linkedin.com/in/jason-andrews-7b05a8) |
|-----------------|----------------------------------------------------------------------------------------------------|
| Official docs:  | [View](https://developer.arm.com/documentation/102190)                                           |

This guide shows you how to install and use the tool with the most common configuration. For advanced options and complete reference information, see the official documentation. Some install guides also include optional next steps to help you explore related workflows or integrations.

[Arm Instruction Emulator](https://developer.arm.com/Tools%20and%20Software/Arm%20Instruction%20Emulator) is a software tool that runs on 64-bit Arm platforms and emulates [Scalable Vector Extension (SVE)](https://developer.arm.com/documentation/102476/latest/instructions). This tool allows you to run your compiled SVE application binaries on hardware that is not SVE-enabled. It does not require a license.

SVE hardware  
AWS Graviton 3 and Graviton 4 processors are available and recommended for SVE application development.

Arm Instruction Emulator runs as an executable on your Linux host. It runs on Red Hat Enterprise Linux (RHEL), SUSE Linux Enterprise Server (SLES), and Ubuntu Linux distributions.

In this guide, you’ll learn how to install Arm Instruction Emulator.

## Before you begin

Confirm you are using an Arm machine by running:

```
uname -m
```

The output should be:

```
__output__
aarch64
```

If you see a different result, you are not using an Arm computer running 64-bit Linux.

You must also ensure that either [Environment Modules](https://modules.readthedocs.io/en/latest/index.html) or the [Lmod Environment Module System](https://lmod.readthedocs.io/en/latest/) are installed on your Linux machine. The GNU Compiler (GCC) is also required.

For Ubuntu Linux, install the following required packages.

```
sudo apt-get install build-essential -y
sudo apt-get install environment-modules -y
```

## Download Arm Instruction Emulator

You need an Arm account to download the Arm Instruction Emulator. If you don’t have one, you can create one for free at [developer.arm.com](https://developer.arm.com/).

Log in and download the installer package for Ubuntu Linux from [Arm Instruction Emulator downloads](https://support.arm.com/downloads/view/ARMIE).

## Install Arm Instruction Emulator

To install the Arm Instruction Emulator, extract the downloaded package and run the install script.

Extract the downloaded package:

```
tar -xvzf ARMIE-BN-UBUNT-r25p0-00rel0.tgz
```

Run the install script:

```
sudo ./arm-instruction-emulator_25.0_Ubuntu-22.04/arm-instruction-emulator_25.0_Ubuntu-22.04.sh -a
```

Set up the environment, for example, in your `.bashrc` and add module files:

```
echo "source /usr/share/modules/init/bash" >> ~/.bashrc
echo "module use /opt/arm/modulefiles" >> ~/.bashrc
source ~/.bashrc
```

List available modules:

```
module avail
```

Configure Arm Instruction Emulator:

```
module load armie25/25.0
```

To confirm `armie` is installed, print the version:

```
armie --version
```

## Get started with Arm Instruction Emulator

To verify everything is working after installation, see [Get started with Arm Instruction Emulator](https://support.arm.com/documentation/102190/25-0/Get-started/Get-started-with-Arm-IE) for instructions on how to compile and run examples with `armie`. The examples demonstrate how to compile Scalable Vector Extension (SVE) code and run the resulting binary with Arm Instruction Emulator.

You are now ready to use the Arm Instruction Emulator.
