Start Building for Free
CircleCI.comAcademyBlogCommunitySupport

Using the Arm VM execution environment

2 months ago2 min read
Cloud
Server v4.x
Server v3.x
On This Page

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:

ClassvCPUsRAMDisk SizeCloudServer
arm.medium (default)28GB100 GB
arm.large416GB100 GB
arm.xlarge832GB100 GB
arm.2xlarge1664GB100 GB

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:

  1. Select Dashboard from the sidebar menu
  2. Use the dropdown menus to select a project, and a branch
  3. Expand your workflow ( )
  4. Select a job by clicking on the job name
  5. 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.

Resources tab

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, please 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, please open an issue to let us know.
  • In server 3.x, 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 enviornment page.


Suggest an edit to this page

Make a contribution
Learn how to contribute