捷徑

後端最佳實務

x86 CPU

在現代 x86 CPU 上編譯的工作負載通常會透過單指令多重資料 (Single Instruction Multiple Data, SIMD) 指令集進行優化。SIMD 是一種典型的高效能運算平行處理技術,例如深度學習模型訓練和推論。透過應用 SIMD,每個運算單元在任何給定的時段,都會使用不同的分配資料來執行相同的指令。最常部署的啟用 SIMD 的 x86 指令集架構 (ISA) 包括 AVX、AVX2、AVX-512AMX

您可以使用 collect_env script 來檢查您的機器所支援的 ISA。由於該 script 提供 PyTorch 的完整環境資訊,我們可以利用 grep 來提取包含 ISA 資訊的行。

python collect_env.py | grep "a[(v|m)]x"

通常,如果支援 AVX-512,則應該會觀察到以 "avx512" 開頭的指令 (例如 avx512favx512bwavx512_vnni)。如果支援 AMX,則應該會觀察到以 "amx" 開頭的指令 (例如 amx_tileamx_bf16amx_int8)。

特別是,對於啟用 AMX 指令的伺服器,可以透過利用 AMX 來進一步提升工作負載效能。

文件

取得 PyTorch 的完整開發者文件

檢視文件

教學

取得適合初學者和進階開發者的深入教學

檢視教學

資源

尋找開發資源並獲得問題解答

檢視資源