Back to blog

// OSSeva Blog

Operations

MongoDB 5.0+ Requires a CPU with AVX Support: Causes and Fixes

Matt Reynolds4 min read

The short answer

MongoDB 5.0 and later require the AVX instruction set on x86_64. The MongoDB production notes set the minimum as Intel Haswell or later Core processors (or Tiger Lake or later Celeron and Pentium) and AMD Bulldozer or later. On a CPU that does not support AVX, mongod is widely reported to crash at start-up with an "Illegal instruction" error. The official mongo Docker image prints this warning first:

WARNING: MongoDB 5.0+ requires a CPU with AVX support, and your current system does not appear to have that!

MongoDB 4.4 was the last version without the requirement. There is no official non-AVX build of 5.0 or later.

The AVX requirements usually surface during an upgrade. A 4.4 replica set runs fine, then the first member moved to 5.0 binaries will not start. Check every host before you upgrade, including arbiters, hidden members and the machines that restore backups.

How to check for AVX

grep -o -w avx /proc/cpuinfo | head -1
lscpu | grep -o -w avx

No output means the CPU, as the operating system sees it, has no AVX. Run the check inside the VM or container host, not on the hypervisor. The most common cause is not old hardware but a virtual CPU model that hides AVX from the guest.

Fixes for virtual machines

Proxmox and KVM

In Proxmox VE the backend default CPU type is kvm64, and new VMs created in the UI default to x86-64-v2-AES. Neither exposes AVX. x86-64-v3 adds AVX and AVX2 for Haswell and later hosts. Setting the CPU type to host passes through every host flag, but a live migration to a host with a different CPU can fail.

VMware vSphere

An EVC baseline below Intel Sandy Bridge or AMD Opteron Generation 4 hides AVX. Raise the EVC mode, then fully power off and power on each VM. A guest reboot is not enough.

Other fixes

  • Newer hardware. Check low-power parts carefully: MongoDB only lists Celeron and Pentium from Tiger Lake onwards.
  • ARM64. MongoDB supports arm64 on ARMv8.2-A or later, where AVX does not apply.
  • Stay on 4.4. Upstream support for 4.4 ended on 29 February 2024. MongoDB has shipped a few later patches, the latest known being 4.4.31, but no support contract comes with them.

Staying on MongoDB 4.4 safely

Where hardware cannot change soon, 4.4 needs a patch source. OSSeva provides MongoDB extended support with backported fixes for 4.4, and maintained MongoDB images. See the MongoDB 4.4 end-of-life page and MongoDB at OSSeva.

Frequently asked questions

Why did MongoDB 5.0 add the AVX requirement?

For 5.0, MongoDB set a minimum x86_64 microarchitecture at build time (SERVER-54407). It is a build decision, so there is no setting to disable it.

Which MongoDB version runs without AVX?

4.4 and earlier. Every Mongo DB release from 5.0 onwards requires AVX on the x86_64 platform.

Does MongoDB Atlas need AVX on my side?

No. Atlas runs on MongoDB's infrastructure.

Tags

MongoDBAVXMongoDB 5.0ProxmoxVirtualisation

Ready to get your open source under control?

Talk to an OSSeva engineer about CVE coverage, compliance, and migration support for your stack.