窗外,西山暮色蒼茫,霧氣深鎖。
他們推門而出,一頭扎進這無邊的暗夜。
去造那一束光。
……
數天後,無錫,國家超級計算中心。
凌晨三點,機房內依然燈火通明。
巨大的led螢幕上,即時顯示著“神威·太湖之光”的負載狀態。往日里那些藍色的氣象模擬任務塊全部消失了,取而代之的是一片刺眼的紅色——那是最高優先順序的“lpu架構模擬”任務。
海絲首席架構師李工,正帶著團隊在進行lpu架構的全系統模擬。
他們面臨著一個核心決擇:資料精度與頻寬的平衡。
在晶片設計中,這就象是在走鋼絲。精度高了,資料量就大,傳輸通道(頻寬)就會堵死;精度低了,計算結果就不準,模型就會變傻。
“李工,全精度浮點數fp32方案的模擬結果出來了。”
一位負責微架構的博士指著螢幕上的資料,面色凝重,“雖然計算準確率完美,但片上快取(sra)的命中率只有40。大量的資料堵在路上,計算單元有一半時間在空轉。”
片上快取就象是晶片內部的“臨時倉庫”,離計算核心最近,速度最快。如果倉庫太小,或者資料太大塞不進去,計算核心就得停下來等資料從外面運進來,效率會大打折扣。
李工看著資料,眉頭緊鎖。slr模型中,每一個邏輯概念都是一個高維空間中的“盒子”。推理過程,就是成千上萬個盒子在空間中不斷求交集、求並集。這些“盒子”的資料量太大了。
“我們必須壓縮資料。”李工沉聲道,“但在哪裡壓?怎麼壓?”
會議室裡,幾位核心骨幹圍坐在白板前,展開了激烈的討論。
“試試量化?轉成8位整數t8?”有人提議。
“不行。”另一位演算法專家立刻反駁,“slr的核心是計算盒子的體積,這代表機率。體積計算需要連乘,連乘對精度非常敏感。t8的精度不夠,連乘幾次誤差就飛了。”
討論陷入了短暫的僵局。
這時,一直盯著徐辰論文推導過程的一位資深工程師,在白板上寫下了一個公式:vo = exp(∑ log(l?))。
“大家看,”他指著公式說道,“徐辰在論文裡提到,為了數值穩定性,機率計算最好在對數域進行。”
“對數域……”李工若有所思,“在對數域裡,乘法會變成加法,除法會變成減法。”
“沒錯!”那位工程師接著推演,“如果我們讓lpu內部的所有資料,從輸入那一刻起,就全部轉換為對數形式儲存和傳輸呢?”
眾人的眼睛逐漸亮了起來。這不是靈光一閃,而是順著數學邏輯推匯出的必然方向。
“在對數域下,資料的動態範圍會極大壓縮。”李工迅速在腦海中構建架構圖,“原本需要32位浮點數才能表示的機率值,在對數域下,可能只需要16位甚至更少的定點數就能表示,而且精度損失極小。”
“不僅如此,”另一位硬體專家補充道,“加法器的電路面積和功耗,遠小於乘法器。如果我們把核心計算全變成了加減法,那就能省下大量的電晶體,用來堆更多的核心!”
“唯一的難點是gubel-softps運算元,它需要非線性變換。”
“查表法。”李工當機立斷,“神威的異構核正好擅長做這個。全對數域資料流+查表法’的精度損失。”
。爐出果結,後鐘分十
”!圍範棒魯的rls在全完!5-e1於小差誤“
”!子樣的有該upl是才這!06低降耗功,半一掉。流料資域數對全!構架個這定就“,子桌拍一地猛工李”!好“
”。了合綜理始開以可,版封經已計設端前,邊那圳深知通“,令指了達下工李”。碼式程ltr包打備準“
……








