Using the Arm VM execution environment
You can access the Arm VM (virtual machine) execution environment for a job by using the machine executor, specifying a Linux virtual machine image that includes Arm resources, and then specifying an Arm resource class.
Available resource classes
The following Arm resources are available part of the machine
executor:
Class | vCPUs | RAM | Disk Size | Cloud | Server |
---|---|---|---|---|---|
| 2 | 8GB | 100 GB | ||
| 4 | 16GB | 100 GB | ||
| 8 | 32GB | 100 GB | ||
| 16 | 64GB | 100 GB |
Using server? Check with your systems administrator whether you have access to the Arm execution environment. |
For pricing and plans information, see the resource class pricing overview.
View resource usage
To view the compute resource usage for the duration of a job in the CircleCI web app:
-
Select Dashboard from the sidebar menu
-
Use the dropdown menus to select a project, and a branch
-
Expand your workflow ( )
-
Select a job by clicking on the job name
-
Select the Resources tab to view CPU and RAM usage for the duration of the job
You can use these insights to decide whether to make changes to the job’s configured resource class. You can also access resource class Insights.
Images with Arm support
Arm resources are accessible by using the machine executor when using one of the following images:
Ubuntu 20.04 - focal
-
ubuntu-2004:current
- most recent, recommended for all users -
ubuntu-2004:2023.07.1
-
ubuntu-2004:2023.04.2
-
ubuntu-2004:2023.02.1
-
ubuntu-2004:2022.10.1
-
ubuntu-2004:2022.07.1
-
ubuntu-2004:2022.04.1
-
ubuntu-2004:202201-02
-
ubuntu-2004:202201-01
-
ubuntu-2004:202111-02
-
ubuntu-2004:202111-01
-
ubuntu-2004:202107-01
-
ubuntu-2004:202104-01
-
ubuntu-2004:202101-01
-
ubuntu-2004:202011-01
- deprecated as of Feb 3, 2021
Ubuntu 22.04 - jammy
-
ubuntu-2204:current
- most recent, recommended for all users -
ubuntu-2204:2023.07.1
-
ubuntu-2204:2023.04.2
-
ubuntu-2204:2023.02.1
-
ubuntu-2204:2022.10.2
-
ubuntu-2204:2022.07.2
For a full list of machine executor images, see the CircleCI Developer Hub. And for announcements about image updates, see CircleCI Discuss.
Limitations
-
Some orbs that include an executable may not be compatible with Arm at this time. If you run into issues with orbs on Arm, you can open an issue.
-
We currently do not provide support for 32-bit Arm architectures. Only 64-bit
arm64
architectures are supported at this time. -
There may be up to 2 minutes of spin-up time before your job actually starts running. This time will decrease as more customers start using Arm resources.
-
If there is software you require that is not available in the image, you can open an issue to let us know.
-
In CircleCI server, Arm resources are only available when using the EC2 provider for VM service. This is because there are no Arm instances available in GCP.
M1 Mac support
Docker images built on M1 Macs, are by default, not compatible with the CircleCI standard platform. The spin up environment
job in your pipelines will give you a green tic, but you will see the following message in the response:
WARNING: docker image ghcr.io/{your_username}/runner-test:latest targets wrong architecture (found arm64 but need [amd64 i386 386])
If you build an image on an M1 you need to specify docker build --platform linux/amd64
as the default builds arm64
.
Arm on Docker
For further information on using Arm with the Docker execution environment, see the Using the Docker execution environment page.