Ubuntu 26.04 開始提供 x86-64-v3 的 Packages
TL;DR
確認及啓用方式:
$ ld.so --help | grep '\-v3'
x86-64-v3 (supported, searched)
$ echo 'APT::Architecture-Variants "amd64v3";' | sudo tee /etc/apt/apt.conf.d/99enable-amd64v3
$ sudo apt update
$ sudo apt upgrade
前情提要
最近 CERN 從 RHEL 系跳槽到 Debian 的新聞[1]吸引了我的注意,一直以來 RHEL 都持續在支援 x86-64-v2 與 x86-64-v1 的微架構(microarchitecture),但前一陣子開始(RHEL 10)全面更新到 x86-64-v3,拋棄了 v2 以下的支援[2]。這應該是跟前一陣子 Microsoft 把自家的 CBL-Mariner 遷移到 Fedora-based 有關(轉移後的 4.0 版本改稱 Azure Linux),微軟遷移過去之後開始瘋狂幫 Fedora 45 build v3 的包,試圖想讓 Azure Linux 在自家 Azure Cloud 上面跑地更快[3]。
不過我最近在 Ubuntu 的 apt repo 裡面亂晃一通時竟然發現 Ubuntu 也有提供 x86-64-v3 的 package。從 25.10 開始[4]提供開關讓 apt 優先安裝 x86-64-v3/amd64v3 的 package,目前 Ubuntu 26.04 也正式提供了這些 package 與選項[5]。
這也是 Ubuntu 首次為 microarchitecture level 編譯了不同架構的 package。如果想知道 v3 比上 baseline 多了什麼 Feature 可以看維基百科[6]或 Ubuntu Blog[7] 的介紹。
啓用 x86-64-v3/amd64v3 packages
如果想確定自己的 CPU 有沒有支援,可以確認是不是 Intel Haswell/Broadwell 架構或 AMD Zen 架構處理器及更新架構的處理器,或是在支援的版本中執行以下指令查詢:
$ ld.so --help | grep '\-v[0-9]'
x86-64-v4 (supported, searched)
x86-64-v3 (supported, searched)
x86-64-v2 (supported, searched)
如果想啓用 amd64v3 的 pacakge,可以執行:
$ echo 'APT::Architecture-Variants "amd64v3";' | sudo tee /etc/apt/apt.conf.d/99enable-amd64v3
$ sudo apt update
$ sudo apt upgrade
即可優先使用 amd64v3 pacakge。
https://discourse.ubuntu.com/t/introducing-architecture-variants-amd64v3-now-available-in-ubuntu-25-10/71312 ↩︎
https://documentation.ubuntu.com/release-notes/26.04/summary-for-lts-users/#architecture-variants-and-amd64v3 ↩︎
https://en.wikipedia.org/wiki/X86-64#Microarchitecture_levels ↩︎
https://ubuntu.com/blog/optimising-ubuntu-performance-on-amd64-architecture ↩︎