Backend Development 11 min read

Migrating Services to ARM‑Based Kunpeng Cloud Servers: Architecture Evolution, Benefits, and Practical Steps

This article explains the shift from x86 to ARM architectures, outlines why services should be migrated to ARM‑based Kunpeng cloud servers, describes Huawei's migration tools and community support, and provides concrete C/C++ migration examples and common pitfalls for backend developers.

Architects' Tech Alliance
Architects' Tech Alliance
Architects' Tech Alliance
Migrating Services to ARM‑Based Kunpeng Cloud Servers: Architecture Evolution, Benefits, and Practical Steps

The article begins by contrasting CISC (x86) and RISC (ARM) CPU architectures, noting that RISC designs simplify instruction decoding and pipelines, allowing more registers and higher throughput, which historically favored x86 due to power‑insensitive workloads.

Recent growth of ARM in mobile, IoT, and server markets has unlocked performance advantages, especially for highly concurrent backend services, and enables end‑to‑end ARM homogeneity between devices and cloud.

Huawei’s second‑generation Kunpeng 920 (and upcoming 930) ARM server CPUs, built on a 7 nm process with up to 64 cores, 2.6 GHz, 8‑channel DDR4 and 100 Gb RoCE, illustrate the industry’s move toward ARM data‑center processors.

Migration is motivated by ARM’s smaller die area (≈1/7 of x86), higher core density, and better scalability for distributed workloads, but requires handling ISA differences; compiled languages like C/C++ and Go must be rebuilt with an ARM64 (aarch64) toolchain, while interpreted languages such as Java and Python often run unchanged.

Typical ISA translation examples include replacing the x86 PAND xmm1 , xmm2/m128 instruction with the ARM NEON equivalent AND Vd. , Vn. , Vm. .

Huawei provides extensive migration assistance through the Huawei Cloud Academy and Kunpeng Community, offering free tools such as Dependency Advisor, Porting Advisor, and Tuning Kit, as well as free cloud lab resources (ECS, EIP, VPC, security groups) for hands‑on experiments.

A practical C/C++ migration workflow involves updating build scripts, adding aarch64 macros, enabling NEON SIMD, adjusting inline assembly, recompiling, and testing the resulting binaries.

Common migration challenges include GCC flag adjustments, missing libraries, unsupported third‑party packages, compilation errors due to macro or type mismatches, and the need to rewrite inline assembly for ARM.

Java web applications generally migrate more easily because of their platform‑independent bytecode, often requiring no code changes.

For complex stacks (e.g., MySQL, Redis, Apache, Hadoop) most components already have ARM‑compatible versions; less common software like Kudu, Impala, or Ceph may need newer releases or code modifications.

The overall cost of migration depends on the freshness of the software stack and the extent of ARM support; modern, open‑source stacks migrate with relatively low effort, whereas legacy or commercial binaries may demand significant re‑engineering.

In summary, while ARM cloud platforms present a clear trend and performance benefits for backend services, x86 will remain viable for the foreseeable future, and organizations should weigh migration costs against expected gains.

performancecloud computingbackend developmentC++ARMKunpengServer Migration
Architects' Tech Alliance
Written by

Architects' Tech Alliance

Sharing project experiences, insights into cutting-edge architectures, focusing on cloud computing, microservices, big data, hyper-convergence, storage, data protection, artificial intelligence, industry practices and solutions.

0 followers
Reader feedback

How this landed with the community

login Sign in to like

Rate this article

Was this worth your time?

Sign in to rate
Discussion

0 Comments

Thoughtful readers leave field notes, pushback, and hard-won operational detail here.