Hugging Face 與 Graphcore 合作開發 IPU 優化的 Transformers
Hugging Face 與 Graphcore 已達成合作,將 Graphcore 的 Intelligence Processing Units (IPUs) 整合至 Hugging Face 生態系統中。這項在 2021 AI Hardware Summit 上宣布的合作,讓開發者能夠以極低的程式碼複雜度,在生產規模下部署針對 IPUs 優化的尖端 Transformer 模型。
Intelligence Processing Unit (IPU) 架構
Intelligence Processing Unit (IPU) 是一款專為 AI 與機器學習的運算需求而設計的處理器,為 Graphcore 的 IPU-POD 資料中心運算系統提供動力。與使用 SIMD/SIMT 架構的 GPUs 不同,IPU 採用大規模並行的 MIMD 架構。
IPU 的關鍵技術特性包括:
- On-die Memory:超高頻寬記憶體直接放置在矽晶圓上的處理器核心旁。
- Specialized Silicon:硬體設計旨在處理稀疏性 (sparsity)、低精度算術 (low precision arithmetic) 以及細粒度並行性 (fine-grained parallelism)。
- Software Integration:Poplar SDK 與處理器共同設計,可與包括 PyTorch 和 TensorFlow 在內的標準框架,以及 Docker 和 Kubernetes 等部署工具整合。
透過硬體合作夥伴計畫優化 Transformers
為了縮短先進硬體與模型部署之間的差距,Hugging Face 推出了 Hardware Partner Program。這項計畫將 Transformers 函式庫與優化的 AI 硬體連結起來,以減少採用新運算平台的摩擦力。
The Optimum Library
開發者將透過 Optimum 這款全新的開源函式庫與工具包來存取硬體優化的模型。此工具包提供由 Hugging Face 認證、並與 Graphcore 合作開發的模型。這些 IPU 優化的模型旨在實現「即插即用」,開發者無需學習新的程式碼或流程即可利用該硬體。
應用範圍
此合作夥伴關係旨在涵蓋廣泛的應用,包括:
- 自然語言處理 (NLP),例如文本生成、情緒分析與翻譯。
- 電腦視覺 (例如 ViT)。
- 語音處理。
效能與基準測試
Graphcore 已展示了 IPU 加速 Transformer 模型的能力,其透過 PyTorch 使用針對 Graphcore 優化的 Hugging Face BERT 特殊實作方式。根據 Graphcore 的說法,在 IPU 系統上執行 BERT 的基準測試結果顯示,與同類型的 GPU 系統相比,具有顯著的效能優勢,這能大幅縮短訓練時間,並增加模型開發期間可進行的迭代次數。