Published: 26.09.2026
Virtual servers can run on two main processor families: x86 processors from Intel and AMD, and ARM processors that use a different instruction set. Both run Linux, and both can host websites, but a program built for one family does not run on the other without help. This article helps you decide, and it shows how to check your current software before you move.

In the LP-Series of our VPS, server names that start with X are x86 servers, and names that start with AX are ARM servers based on Ampere processors.
What the two families mean
x86 is the long-established family that most desktop and server software has been built for. ARM is designed around energy efficiency, is widely used in mobile devices and is increasingly common in servers. The same operating system can run on both, but the program files differ. A program built for x86-64 contains instructions that an ARM processor does not understand, and the other way round.
Software compatibility
Most open-source software is now published for both families. Web servers such as Nginx, languages such as PHP, Python and Node.js, and databases such as MySQL and MariaDB are normally available for ARM through the package manager of common Linux distributions. Trouble appears with closed-source binaries, older commercial tools, games and some container images that are built only for x86. Check each item on your list before you commit to a design.
Efficiency and performance
ARM processors are often chosen for their performance per watt. That can suit steady workloads such as web frontends, job queues and small APIs. The real result depends on your code, your libraries and your traffic pattern, so measure instead of assuming. Heavily optimised x86 binaries and software that relies on special instruction extensions may run faster on x86.
Check your stack before you choose
- List the software you need: web server, language runtime, database and any special tools.
- Confirm that each item has an ARM package for your distribution, or a version that supports ARM.
- Check the container images you plan to use. Many are published for several architectures, but not all of them.
- Ask the vendor about closed-source programs, because an x86 binary does not run natively on ARM.
- Run your application on a test server of the other type before you switch.
Checking the architecture on a server
Log in to the server and run the uname command with the machine option. The answer x86_64 means an x86 server, and aarch64 means an ARM server. The lscpu command gives more detail, including the processor model, the number of cores and an architecture line. Run these commands on the server you use today to learn what your existing software was built for.
Moving from x86 to ARM
A move between architectures is a migration, not a simple copy. Move your content and configuration, install the same versions of the software on the ARM server and test thoroughly, including cron jobs and scheduled backups. Pay attention to compiled extensions, such as a PHP module written in C, because they must be rebuilt or replaced. Keep the old server running until the new one passes your checks, and switch DNS only after that.
Which one should you choose?
Choose x86 if your software depends on x86-only binaries, if you rely on closed-source tools without ARM builds, or if you want the widest choice of ready-made packages with the least testing. Choose ARM if your stack is open source, your workload is steady and you are ready to test. When in doubt, start with the architecture your existing software already uses, because that path usually has the fewest surprises.
Frequently asked questions
Does ARM always use less power or perform better? Not always. The advantage depends on your workload and software, so test with your own application before deciding.
Can I run x86 software on an ARM server? Some programs can run through emulation, but it is slower and not always reliable. For production use, install software built for the server's processor.
Do I need a different Linux distribution for ARM? Not necessarily. You can keep the same distribution, but packages are built per architecture, so install the version for the server's processor.