AI 浪潮下,專用晶片將成為 AI 發展中不可或缺且成長快速的一員
2023 年隨 ChatGPT 爆紅,加上各大科技巨頭紛紛投入 AI 的競爭,爭相推出各種 AI 模型、自研 AI 晶片,亦或是購買 (GP)GPU 提升算力,AI 成為了最熱門的話題,彷彿回到了 2000 年網路(.com)的出現一樣,回顧歷史,我們認為,也許一個新的時代,目前也正在開啟,本篇文章將從過去處理器所經歷的一連串因新興應用推出而產生的專用晶片的發展開始討論,進而推論在 AI 浪潮下最重要的硬體基礎就是訓練 AI、 進行 AI 推論運算的各種晶片,也是台灣半導體產業下一波成長的重要機會。
下圖是目前主流處理器發展的過程,以下就會依這個發展順序依序介紹。
資料來源:富果研究部
從上圖可以發現,最早的處理器發展是由 CPU 開始,之後隨著電腦圖形介面的出現,以及遊戲產業的快速發展,而有了 GPU 的圖形專用處理晶片出現,進而帶動了 NVIDIA 過去超過 10 年的一代盛世;2016 年,在 AlphaGo 打敗世界棋王後,機器學習 / 深度學習變成顯學,Google 推出了 TPU 這樣的專責處理器來加速機器學習的運算,而近年來,隨著手機照相要有各種自動修圖、細節處理、還有語音辨識等機器學習或 AI 的應用,NPU 開始廣泛出現在各家手機處理晶片中,在 2023-2024 年這個 AI 快速發展的元年,未來是不是又有什麼應用帶動新的晶片(xPU)成長?這篇文章將帶大家鑑往知來,從過去各種處理器的發展,發掘未來 AI 所帶來的成長可能方向。
中央處理器 CPU(Central Processing Unit)— 所有處理器的總指揮
中央處理器 CPU(以下同),負責執行和處理電腦上主要的工作和運算,可獨立運作,也能調度其他處理器的資源進行運算,是任何電腦設備中不可或缺的一環。
CPU 身為「通用處理器」,能處理所有類型的工作,但對於一些特定應用場景,CPU 逐漸無法有效率的解決這類運算需求,為了分攤 CPU 的運算壓力,從而開始出現各種專用的 xPU,也就是計算卸載(Computation offloading)的概念,將原本 CPU 執行的各種工作,依功能分給對應的「專用 xPU」,讓 CPU 能專注在它最適合的任務上。
註:通用處理器代表各類型的運算都能進行,不會受限於應用,目前僅 CPU 及 GPU 兩種為公認的通用處理器。
這樣的概念下,首顆 xPU 的出現就是目前與 CPU 同為通用處理器的 GPU,以解決圖形處理任務為首要目標。
圖形處理器 GPU(Graphics Processing Unit)— 加速數據運算的重要推手
GPU 前身為圖形加速器,是在電腦進入圖形使用者介面 GUI(Graphical User Interface)的時代,加上各類電動遊戲、街機崛起的背景下所誕生的,功能是在 CPU 進行圖像運算完後,將圖像繪製並顯現在螢幕上。曾紅極一時的 3dfx Voodoo(巫毒卡)就是依靠 3D 圖像處理的優秀性能,在圖形加速卡市場一度擁超過 85%的市佔率。
不過隨電動遊戲開始走進個人電腦、以及 3D 圖像技術發展的遊戲快速成長,圖像運算任務漸趨繁重,從而有 NVIDIA 推出了第一顆 GPU 「GeForce 256」,不同於過往的圖形加速器,GPU 的核心在支持硬體 T&L(註),讓原本 CPU 做的絕大部分運算轉移到 GPU 上,為 CPU 減少大量繁重運算,至此,電腦單機遊戲獲得了硬體 GPU 獨立顯卡的支援,各式大作如雨後春筍的出現,開啟了超過 20 年的 gaming 黃金發展階段。
註:硬體 T&L(Transform & Lighting)指的是圖像晶片內建 T&L 運算單元,讓 GPU 能運算原本 CPU 才能運算的 T&L 資訊,而 T&L 指的便是座標轉換 T(決定視角旋轉後各多邊形的位置)跟光源處理 L(影響物體光線及背後陰影分布、形狀),是在 3D 圖像繪製過程中相當重要的兩部分。
另一個 GPU 應用的突破是 2006 年 NVIDIA 推出的統一計算架構 CUDA(Compute Unified Device Architecture) 技術,解放 GPU 的平行運算能力,也帶來了圖形處理器通用計算 GPGPU(General-purpose computing on graphics processing units)的概念。
GPU 的平行運算能力是來自 GPU 大量的計算單元,而線性代數或矩陣運算的特性適合拆成多個小運算,分散給 GPU 裡大量的compute units 同時運行以提升運算速度。在 CUDA 推出前一直沒被完整開發,主因是沒有合適語言去寫出適合 GPU 進行平行運算的程式。
資料來源:AMD – MI200 GPU 架構圖
註:平行運算概念可參考 NVIDIA DEMO 影片
https://www.youtube.com/watch?v=-P28LKWTzrI&source_ve_path=MjM4NTE&feature=emb_title
隨 CUDA 的推出並開始支援 C 語言,搭配 NVIDIA 自家程式設計模型後,平行運算的程式設計更加便利、直觀,加速 GPU 平行運算能力的開展,GPU 從此不再只能執行圖形運算,更能進行通用運算,也就是所謂的 GPGPU,開始應用到科學、氣象、生物等領域的計算上,也為現今人工智能的發展奠定了良好基礎。
註:CUDA 推出前其實有可編程的 GPU,當時使用 NVIDIA 在 C 語言基礎上所開發的 CG 語言,不過缺點一是新語言需培養人才、市場學習,二是當時主要只給圖像運算使用,所以發展較緩,但為後續的 CUDA 奠定了基礎。
GPU 生態成熟、AI 應用多元化後,各大廠為訓練 AI 模型,對 GPU 的需求也持續提升,因為訓練 AI 模型相當仰賴 GPU 的算力,但問題在 GPU 需消耗大量的運算資源,衍生出龐大運算成本,2023 年隨著大型語言模型 LLM(large language model),更大幅加速了 GPGPU 的需求上升,在供不應求的狀況下,GPU 價格居高不下,對於一些特定應用的場景,其實用不到整個 GPGPU 的能力,用昂貴的全功能 GPU 來處理並不合適,讓許多科技大廠開始另闢蹊徑,選擇了 ASIC 晶片的道路,從而有了 TPU、NPU 的出現。
閱讀進度