DeepSeek繞過了英偉達引以為傲的CUDA,使用更底層的編程語言做優化
這一次是DeepSeek-V3論文中的更多細節,被人挖掘出來。
V3的硬件效率之所以能比Meta等高出10倍,可以總結為“他們從頭開始重建了一切”。
在使用英偉達的H800 GPU訓練DeepSeek-V3時,他們針對自己的需求把132個流式多處理器(SMs)中的20個修改成負責服務器間的通信,而不是計算任務,變相繞過了硬件對通信速度的限製。
這種操作是用英偉達的PTX(Parallel Thread Execution)語言實現的,而不是CUDA。
PTX在接近匯編語言的層級運行,允許進行細粒度的優化,如寄存器分配和Thread/Warp級別的調整。
這種編程非常複雜且難以維護,所以行業通用的做法是使用CUDA這樣的高級編程語言。
換句話說,他們把優化做到了極致。
“首先要明確的是,PTX仍然是英偉達GPU架構中的技術,它是CUDA編程模型中的中間表示,用於連接CUDA高級語言代碼和GPU底層硬件指令。
CUDA起到了提供高級編程接口和工具鏈的作用,可以簡化開發者的工作。而PTX作為中間層,充當高級語言和底層硬件之間的橋梁。
所以說,DeepSeek做了PTX級別的優化不意味著完全脫離了CUDA生態,但確實代表他們有優化其他GPU的能力。我們不知道DeepSeek內部是否使用AI輔助編寫了PTX代碼——但是確實剛剛見證DeepSeek-R1編寫的代碼顯著提升大模型推理框架的運行速度。”
也許是DeepSeek團隊,先教會Deepseek用PTX,然後引導Deepseek直接用匯編編程, 他們隻需要監督就行。 通過並行部分的程序,再讓DeepSeek去蒸餾這個過程,學會如何編PTX重寫 numpy, scipy