Who is this for?

This is an introductory topic for software developers migrating Node.js workloads from x86_64 to Arm-based servers, specifically on Google Cloud C4A virtual machines (VMs) built on Axion processors.

What will you learn?

Upon completion of this Learning Path, you will be able to:

  • Provision an Arm-based SUSE Linux Enterprise Server VM on Google Cloud C4A instances with Axion processors.
  • Install and configure Node.js on a SUSE Arm64 (C4A) instance.
  • Validate Node.js functionality with baseline HTTP server tests.
  • Benchmark Node.js performance using Autocannon on Arm64 (AArch64) architecture.

Prerequisites

Before starting, you will need the following:

Summary

AI-assisted

This summary was drafted with an approved AI-assisted workflow and reviewed by Arm contributors before publication. Human technical review remains part of the process so the final page reflects engineering rigor, accuracy, and Arm editorial standards.

Close
?
You’ll deploy and benchmark a Node.js workload on an Arm-based Google Cloud C4A VM. First, you’ll provision a SUSE Linux Enterprise Server instance on Google Axion, then install Node.js with Node Version Manager (NVM). You’ll then validate the runtime in the read-eval-print loop (REPL) and with a minimal HTTP server. Finally, you’ll use Autocannon to measure request throughput and latency and capture a baseline for the VM.

Frequently asked questions

AI-assisted

These FAQs were drafted with an approved AI-assisted workflow and reviewed by Arm contributors before publication. Human technical review remains part of the process so the final page reflects engineering rigor, accuracy, and Arm editorial standards.

Close
?
Which VM options should I select when creating the instance?
Use a C4A machine type, such as c4a-standard-4 with four vCPUs and 16 GB. Select a SUSE Linux Enterprise Server image for Arm64.
How do I select Node.js v24 for new terminal sessions?
After installing Node.js with nvm install v24, add nvm use v24 to your ~/.bashrc file. Place it after the commands that load NVM so that new Bash sessions select Node.js v24.
How do I confirm that Node.js is working before I benchmark?
Run the REPL test to print a message and start the sample HTTP server. Proceed when the server responds to an HTTP request on the configured port.
What URL should I pass to Autocannon?
Use http://localhost:80 when you run Autocannon on the same VM as the sample Node.js server.
How can I change the load and duration of the Autocannon benchmark?
Adjust -c to set the number of concurrent connections and -d to set the test duration in seconds. The example uses -c 100 -d 10 to run 100 concurrent connections for ten seconds.
Next