Enable Module Flags Proxmox avx

RoomIT
2 min readNov 12, 2023

--

Support
```
kvm64 (x86–64-v1): Compatible with Intel CPU >= Pentium 4, AMD CPU >= Phenom.

  • x86–64-v2: Compatible with Intel CPU >= Nehalem, AMD CPU >= Opteron_G3. Added CPU flags compared to x86–64-v1: +cx16, +lahf-lm, +popcnt, +pni, +sse4.1, +sse4.2, +ssse3.
  • x86–64-v2-AES: Compatible with Intel CPU >= Westmere, AMD CPU >= Opteron_G4. Added CPU flags compared to x86–64-v2: +aes.
  • x86–64-v3: Compatible with Intel CPU >= Broadwell, AMD CPU >= EPYC. Added CPU flags compared to x86–64-v2-AES: +avx, +avx2, +bmi1, +bmi2, +f16c, +fma, +movbe, +xsave.
  • x86–64-v4: Compatible with Intel CPU >= Skylake, AMD CPU >= EPYC v4 Genoa. Added CPU flags compared to x86–64-v3: +avx512f, +avx512bw, +avx512cd, +avx512dq, +avx512vl.
    ```

Check your support Flags

#!/bin/sh -eu

flags=$(cat /proc/cpuinfo | grep flags | head -n 1 | cut -d: -f2)

supports_v2='awk "/cx16/&&/lahf/&&/popcnt/&&/sse4_1/&&/sse4_2/&&/ssse3/ {found=1} END {exit !found}"'
supports_v3='awk "/avx/&&/avx2/&&/bmi1/&&/bmi2/&&/f16c/&&/fma/&&/abm/&&/movbe/&&/xsave/ {found=1} END {exit !found}"'
supports_v4='awk "/avx512f/&&/avx512bw/&&/avx512cd/&&/avx512dq/&&/avx512vl/ {found=1} END {exit !found}"'

echo "$flags" | eval $supports_v2 || exit 2 && echo "CPU supports x86-64-v2"
echo "$flags" | eval $supports_v3 || exit 3 && echo "CPU supports x86-64-v3"
echo "$flags" | eval $supports_v4 || exit 4 && echo "CPU supports x86-64-v4"

So add in /etc/pve/virtual-guest/cpu-models.conf

#### Profile AMD Ryzen AX41/51
cpu-model: avx
flags +cx16;+popcnt;+sse4_1;+sse4_2;+ssse3;+ibpb;+ssbd;+f16c;+sse4_2;+svm;+rdrand;+aes;+rdseed;+avx2;+xsave;+avx;+bmi1;+bmi2;+f16c;+fma;+abm;+movbe;+xsave
phys-bits host
hidden 0
hv-vendor-id proxmox
reported-model kvm64

cpu-model: avx
flags +ibpb;+pdpe1gb;+ssbd;+f16c;+sse4_2;+svm;+rdrand;+vaes;+aes;+rdseed;+avx2;+xsave;+avx;+bmi1;+bmi2;+f16c;+fma;+avx512f;+avx512bw;+avx512cd;+avx512dq;+avx512vl
phys-bits host
hidden 0
hv-vendor-id proxmox
reported-model kvm64

Support sgx

##### Profile OVH C1 SGX Intel
cpu-model: avx
flags +sgx;+sgx_lc;+cx16;+popcnt;+sse4_1;+sse4_2;+ssse3;+ibpb;+ssbd;+f16c;+sse4_2;+svm;+rdrand;+aes;+rdseed;+avx2;+xsave;+bmi1;+bmi2;+f16c;+fma;+abm;+movbe;+xsave
phys-bits host
hidden 0
hv-vendor-id proxmox
reported-model kvm64

https://qemu-project.gitlab.io/qemu/system/qemu-cpu-models.html

--

--

RoomIT

We write around -> Blockchain | DevOps | Security | Sysadmin