AI世代的記憶體

圖一 : AI運算模型參數都是存在記憶體當中,容量需要更大一點,同時要經常去存取記憶體,對頻寬有更大的要求。

【作者: 籃貫銘】

首先,到底什麼是AI運算,它跟一般的運算有什麼不一樣?其實它是有點不一樣,因爲AI運算是專門處理AI應用的一個運算技術,是有很具體要解決的一個目標,而其對象就是要處理深度學習這個演算法,而深度學習跟神經網路有密切的連結,因爲它要做的事情,就是資料的辨識。

AI運算與記憶體的關聯

至於AI運算在硬體架構上有什麼不同?對此我們必須要從資料處理的發展來理解。

在早期的時代,一般的資料只需要用CPU來處理,但隨着大數據應用的崛起,以及人工智慧逐漸展露頭角,資料量也開始呈現爆炸性的成長。而由GPU多核心與利於平行運算的特性,於是就被用來作爲AI運算的主要處理單元。但隨着資料量持續的成長,僅使用GPU似乎又不是個最好的解決方案,除了成本高昂之外,也存在着高功耗的問題,並衍生出散熱與系統穩定度的議題。

對此,運算架構就再多了一個運算晶片,也就是AI加速晶片。它主要是加速資料運算,尤其是針對神經網路這類資料處理與分析應用,且它是作爲一個加速的輔助工具,並不是一個主要的運算的單元。

至於AI的應用,目前聲勢最大,也最廣爲人知的,就非生成式AI莫屬。但這個部分是屬大型雲端服務商的領域,也就是AMD和NVIDIA主攻的市場,主要的業者包含AWS、微軟和Google等,一般的中小型企業並無法進入,多數僅是成爲其供應鏈的一員。

但除了雲端的AI應用之外,還有另外一塊也是AI的重點應用,就是邊緣運算,而它跟雲端運算不一樣,是跟我們日常生活的裝置都能有結合之處,包含AR/VR、智慧家庭、智慧音箱、智慧穿戴等,幾乎所有東西都可以有那種邊緣運算的功能,而這裡面,都會用到這種深度學習這種技術,因此也都有需要這種AI加速晶片的機會。

一般來說,AI世代的這個記憶體,主要是聚焦在運算輔助的記憶體,也就是揮發性的記憶體。那它跟AI運算有什麼關係呢?

我們可以想像在一個倉庫裡面,那裡堆了很多的資料,而記憶體其實扮演的就是要把資料拿出來拿進去的角色。到了AI運算時代,這個人他會遇到什麼問題呢?首先,就是AI這個模型參數都是存在記憶體當中,所以第一個影響,就是容量需要更大一點,因爲當模型參數都放到裡面,就會對執行的運算空間產生影響。

第二個影響,就是AI運算必須要經常去存取記憶體,這樣就會對頻寬有大更的要求。就譬如一次拿的東西如果多一點的話,運作的效率也會比較高,處理的速度也會比較快;另外一個問題,是傳統的運算的架構,記憶體多是屬於外部存取的形式,所以當資料存取很頻繁的時候,自然就會牽涉到效率與IO瓶頸的問題。

【欲閱讀更豐富的內容,請參閱2024.6(第391期)CTIMES雜誌】

2024.6(第391期)AI PC -迎接電腦產業新典範