DeepSeek 為什么這么牛?幻方三大核心技術(shù)解密!
梁文峰說(shuō),我們?nèi)钡膹膩?lái)都不是錢,而是高端芯片。
幻方官網(wǎng)顯示,2022年,公司員工“一只平凡的小豬”一個(gè)人就向捐助了1.38億。你說(shuō),這是錢的事嗎?
為了突破卡脖子,幻方選擇了搞AI的另一條路:從軟件架構(gòu)突破。理解了這個(gè)戰(zhàn)略方向,就不難理解幻方核心技術(shù)突破點(diǎn)了。
要搞AI,存儲(chǔ),通信,計(jì)算三者缺一不可。
幻方的軟件架構(gòu)優(yōu)化三大核心技術(shù),正好與其一一對(duì)應(yīng)。
- 存儲(chǔ)模塊,核心技術(shù):3FS
- 通信模塊,核心技術(shù):hfreduce
- 計(jì)算模塊,核心技術(shù):hfai.nn
殺手锏一:3FS
(1) 3FS是什么?
一個(gè)用C++寫的高性能分布式文件系統(tǒng)。
(2) 幻方為什么要搞3FS?
AI訓(xùn)練與推理的業(yè)務(wù)需求,傳統(tǒng)分布式文件系統(tǒng)已經(jīng)難以滿足:
- 海量數(shù)據(jù)順序讀(語(yǔ)料輸入);
- 檢查點(diǎn)(分步驟重算);
- 順序?qū)懀P蛥?shù)保存);
- 隨機(jī)讀(特征查詢);
任何脫離業(yè)務(wù)的架構(gòu)設(shè)計(jì)都是耍流氓。既然已有的分布式文件系統(tǒng)無(wú)法滿足需求時(shí),幻方就說(shuō),那我自己重寫一個(gè)。
(3) 重寫后的3FS有多牛逼?
- 讀:8T/s
- 寫:500G/s
- IO響應(yīng):18億次/s
- 集群使用率:96%
- GPU使用率:85%
這個(gè)項(xiàng)目已開源,感興趣的同學(xué)可在git查看細(xì)節(jié)。
殺手锏二:hfreduce
(1) hfreduce是什么?
一個(gè)高性能多卡并行通信工具。
本質(zhì)上hfreduce相當(dāng)于PyTorch中的DistributedDataParallel(DDP),只不過使用CPU做加法運(yùn)算以計(jì)算總梯度,而不是調(diào)用其他的集體通信庫(kù)(CCL),傳遞梯度到不同的顯卡上,再各自計(jì)算總梯度。
(2) 幻方為什么要搞hfreduce?
還是那句話,任何脫離業(yè)務(wù)的架構(gòu)設(shè)計(jì)都是耍流氓?;梅紸I之所以采用CPU來(lái)做加法運(yùn)算,計(jì)算總梯度,是因?yàn)榛梅降闹饕狝I場(chǎng)景是金融行為分析、自然語(yǔ)言處理、生物分子結(jié)構(gòu)預(yù)測(cè)等。
在這些場(chǎng)景中,基本是數(shù)據(jù)規(guī)模大而模型大小適中。換句話說(shuō),在A100顯卡40G的顯存中,完全可以裝得下一個(gè)完整的模型和批次樣本數(shù)據(jù)。因此,模型的加速主要是依賴大量的數(shù)據(jù)并行,讓盡可能多的顯卡參與訓(xùn)練,再同步梯度。
(3) hfreduce達(dá)到什么效果?
如上圖所示,對(duì)比傳統(tǒng)通信方案,訓(xùn)練速度提高了多少,不用我多說(shuō)了吧。
殺手锏三:hfai.nn
(1) hfai.nn是什么?
幻方AI深度學(xué)習(xí)算子。
(2) 幻方為什么要搞hfai.nn?
深度學(xué)習(xí)框架的流行(如PyTorch,Tensorflow等)極大方便了我們研發(fā)設(shè)計(jì)各種各樣的AI模型,而在實(shí)際落地的環(huán)節(jié)中,模型代碼往往面臨著性能、準(zhǔn)確度、資源等各種各樣的問題。
幻方自研了一系列AI基礎(chǔ)設(shè)施:3FS,hfreduce之后,同樣需要對(duì)Pytorch框架進(jìn)行了深度優(yōu)化,結(jié)合自身集群特點(diǎn)與自身業(yè)務(wù)特點(diǎn),對(duì)一些常用的AI算子重新研發(fā),提升效率,于是,就有了hfai.nn。
幻方按照PyTorch框架風(fēng)格,在hfreduce的基礎(chǔ)上進(jìn)行進(jìn)一步封裝,使用方法和PyTorch的DDP基本相同,但性能與表現(xiàn)明顯比后者更好。
(3) hfai.nn達(dá)到什么效果?
最重要的三個(gè)算子:
①LSTM(長(zhǎng)短期記憶網(wǎng)絡(luò))
畫外音:記住重要的,忘記無(wú)關(guān)的,核心是根據(jù)重要性打分。
訓(xùn)練性能提升8倍。
②Attention(注意力機(jī)制)
畫外音:動(dòng)態(tài)關(guān)注當(dāng)下最相關(guān)的,核心是QKV。
訓(xùn)練性能提升40%+,推理性能提升30%+。
③LayerNorm(歸一化)
畫外音:把數(shù)據(jù)拉到均值0,方差1的標(biāo)準(zhǔn)范圍。
訓(xùn)練性能提升88%。
總結(jié)
幻方軟件架構(gòu)三大核心技術(shù),對(duì)于幻方的發(fā)展,對(duì)于deepseek的發(fā)展,至關(guān)重要。在幻方的官網(wǎng),在最顯眼的地方,是這么描述的:
思路,比結(jié)論更為重要。