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?

After completing this Learning Path, you'll be able to perform the following tasks:

  • 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'll need the following prerequisites:

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