Skip to content
Search RunEntLinux

Searches general documentation on RunEntLinux. Each distribution has its own documentation search.

    Browse this documentation

    EL 9: x86-64-v2 baseline

    EL 9 is the first EL major release to tighten the x86-64 microarchitecture baseline: official builds require x86-64-v2, roughly Intel Nehalem / AMD Bulldozer from 2008. Older CPUs — and VMs exposing outdated CPU models — cannot install or run EL 9.

    Microarchitecture levels state the minimum instruction set a distribution’s binaries rely on as a whole:

    LevelRepresentative instructionsRough hardware era
    v1base x86-642003+
    v2SSE4.2, SSSE3, POPCNT, CX16~2008 (Nehalem)
    v3AVX2, BMI1/BMI2, F16C, MOVBE~2013 (Haswell)

    EL 8 stayed on v1; EL 9 moved to v2. The payoff is that the whole distribution may use SSE4.2-class optimizations (string handling, CRC, compare primitives); the cost is excluding pre-2008 antique hardware. EL 10 raises the baseline again to v3 — see EL 10: x86-64-v3 baseline.

    Releasex86_64 baseline
    EL 7 / EL 8v1
    EL 9v2
    EL 10v3
    • Physical machines: server CPUs from 2010 on almost all satisfy v2, so the practical impact is small.
    • Virtual machines: the main trap. Early hypervisor templates or the qemu64 default model do not expose SSE4.2/POPCNT, and installing EL 9 in them crashes with illegal instructions. Set the CPU model to Nehalem or newer, or use host-passthrough.
    • Cloud instances: mainstream cloud instance types qualify; only very old shared types are exceptions.
    Look for the key v2 instructions
    grep -o -m1 -E 'sse4_2|ssse3|popcnt|cx16' /proc/cpuinfo | sort -u
    lscpu | grep -i flags | tr ' ' '\n' | grep -cE '^(sse4_2|ssse3|popcnt|cx16)$'

    Having all four key flags (sse4_2, ssse3, popcnt, cx16) means v2 is satisfied. Inside VMs, also check the CPU model the hypervisor exposes.