https://x.com/bookwormengr/status/1883355712191123666
關於DeepSeek的優化改進
許多人沒注意到的是:
DeepSeek也繞過了CUDA並使用底層編程語言PTX做優化
在輝達的PTX語言實際編譯流程中
CUDA代碼首先被編譯為PTX代碼
PTX代碼再被編譯為目標GPU架構的機器碼(SASS,Streaming ASSembler)
CUDA起到了提供高級編程接口和工具鏈的作用
可簡化開發者的工作
而PTX作為中間層充當高級語言和底層硬件間的橋樑
PTX允許進行細粒度優化
如寄存器分配和Thread/Warp級別的調整
這種編譯複雜又難維護
所以其他公司用的是CUDA這種高級編程語言
V3硬體效率之所以比Meta高出10倍
關鍵在於V3針對自己需求把132個流式多處理器(SMs)中的20個修改成負責服務器間通信
而不是計算任務
變相繞過了硬體對通信速度的限制
這點是用輝達的PTX實現的,不是CUDA
雖然DeepSeek把優化做到極致
然而同行表示
DeepSeek這種直接編寫PTX代碼的做法很難移植到不同型號的GPU
針對H100優化的代碼移到其他型號上效果打折扣也可能根本不work
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 111.253.132.195 (臺灣)
※ 文章網址: https://webptt.cc/bbs/Tech_Job/M.1738151752.A.22B.html
※ 編輯: jackliao1990 (111.253.132.195 臺灣), 01/29/2025 20:04:44
推文 (141)
推
boards
恐怖!DeepSeek遭以色列公司起底 可
101.10.44.11 01/29 19:58
→
boards
生成惡意程式竊取信用卡資料
101.10.44.11 01/29 19:58
→
MoonCode
換 cpu 就重寫啊
1.160.226.8 01/29 19:58
推
hortl233
這有點猛
111.82.225.117 01/29 19:59
推
royalpichu
ASIC 噴
114.25.13.223 01/29 20:05
→
jacky40383
用PTX去優化速度早不是新聞了 就是
1.175.5.92 01/29 20:07
→
jacky40383
維護跟編寫麻煩
1.175.5.92 01/29 20:07
推
neil0611
厲害了 我的國
118.231.137.71 01/29 20:11
推
whizz
無聊 又不是首次有人用ptx
42.79.252.164 01/29 20:14
推
X28338136X
那做transformer 加速器有搞頭嗎
36.239.178.44 01/29 20:33
推
shyshyan
資料都開源了是在恐怖三小
114.47.19.55 01/29 20:42
→
olozil
翻譯:中國人礦便宜用人硬幹
223.141.133.141 01/29 21:18
推
johnjohnlin
難移植的是後端吧,前端我怎麼記得
175.183.40.89 01/29 21:42
→
johnjohnlin
CUDA 4早就改LLVM了
175.183.40.89 01/29 21:42
推
mercedeces
nv賺,還是用它的
60.198.174.240 01/29 22:10
推
MatTZerS
請問 SM 用於通訊是什麼意思
36.239.250.136 01/29 22:12
推
abc21086999
換個硬體就不能用很麻煩欸
114.136.151.105 01/29 22:30
推
c963852002
黃大:不講武德改我晶片?
111.243.10.214 01/29 22:49
推
Aquarius126
不用C語言改用ASM組合語言優化的概
101.9.135.49 01/29 23:15
→
Aquarius126
念
101.9.135.49 01/29 23:15
推
MisterSmile
井蛙:看吧,他們就是用手刻
111.71.29.38 01/29 23:43
推
HiHiCano
小量還可以啦 大量你換gpu要重寫會
218.161.53.131 01/29 23:43
→
HiHiCano
死人的
218.161.53.131 01/29 23:43
噓
IndeedGod
一樓黑熊部隊嗎?這裡是科技版不是
114.32.217.213 01/29 23:43
→
IndeedGod
八卦版
114.32.217.213 01/29 23:43
推
ohohohya
沒事 到時候真的證明抄襲chatgpt會
118.171.90.24 01/29 23:57
→
ohohohya
哭的更大聲
118.171.90.24 01/29 23:58
→
tactics2100
反正窮人又換不起 deepseek指定的硬
203.204.69.197 01/30 01:14
→
tactics2100
體 有錢換的也是一批就買幾千台以上
203.204.69.197 01/30 01:14
→
tactics2100
然後操到爛 又不會頻繁更換硬體規
203.204.69.197 01/30 01:14
→
tactics2100
格接著再頻繁改寫
203.204.69.197 01/30 01:14
推
zxp9505007
CUDA開發方便啊 但優化還是得取捨
24.7.63.0 01/30 01:35
→
musashi023
ds繞過CUDA直接寫PTX很厲害嗎 PTX對
119.14.115.109 01/30 02:49
→
musashi023
於ds來說不就只是當成另一種語言而
119.14.115.109 01/30 02:49
→
musashi023
已
119.14.115.109 01/30 02:49
→
otaku690
做cuda優化的都會碰PTX吧...
216.228.112.21 01/30 04:19
噓
pig2014
太吹,靠底層語言優化這種事也能拿
123.195.185.38 01/30 06:30
→
pig2014
來吹是三小,那大家都改寫C不就飛
123.195.185.38 01/30 06:30
→
pig2014
上天了?軟體開發發展至今會往高階
123.195.185.38 01/30 06:30
→
pig2014
語法移動不是沒有原因的,因為開發
123.195.185.38 01/30 06:30
→
pig2014
流程相較於算力需求更重要。現在問
123.195.185.38 01/30 06:30
→
pig2014
題在於nv硬體資源成本過高或是存在
123.195.185.38 01/30 06:30
→
pig2014
屏障才有這種鳥需求,等未來算力足
123.195.185.38 01/30 06:30
→
pig2014
夠或是發展到異質訓練的情況時,這
123.195.185.38 01/30 06:30
→
pig2014
東西突然就武功全廢了
123.195.185.38 01/30 06:30
→
tactics2100
你這種說法就像廠商開發UE引擎然後
203.204.69.197 01/30 07:54
→
tactics2100
開發出黑神話悟空 你就說有什麼好吹
203.204.69.197 01/30 07:54
→
tactics2100
的
203.204.69.197 01/30 07:54
推
stocktonty
就2B鉛筆超頻啊XDDD
116.89.139.191 01/30 08:42
→
xiemark
cudnn效率不是最佳
1.200.26.114 01/30 09:24
噓
w180112
支語滾
180.218.6.19 01/30 09:33
噓
NexusPrime
講的好像其他公司不懂PTX一樣
49.229.172.104 01/30 09:36
→
bnn
繞是一定能繞 使用者習慣要不要改
220.136.202.56 01/30 10:00
推
kaltu
不是繞過中層C寫底層ASM,是業界都
100.8.245.106 01/30 10:33
→
kaltu
用高層語言 Java 跨平台的時候直接
100.8.245.106 01/30 10:33
→
kaltu
寫無法移植的中層C,換張卡就要重寫
100.8.245.106 01/30 10:33
→
kaltu
一遍,復用性有限
100.8.245.106 01/30 10:34
→
kaltu
除非你這間公司只玩一張顯卡的生命
100.8.245.106 01/30 10:34
→
kaltu
週期就打算收攤,否則這種問題應該
100.8.245.106 01/30 10:34
→
kaltu
是改進tool chain,第一次編譯和第
100.8.245.106 01/30 10:34
→
kaltu
二次編譯的編譯器最佳化策略,而不
100.8.245.106 01/30 10:34
→
kaltu
是跳過第一次編譯器人肉compile然後
100.8.245.106 01/30 10:34
→
kaltu
新的顯卡架構出來整間公司的軟體資
100.8.245.106 01/30 10:34
→
kaltu
產蒸發
100.8.245.106 01/30 10:34
→
kaltu
但如果DS真的只是拿偷來的GPT權重蒸
100.8.245.106 01/30 10:35
→
kaltu
餾來重新包裝成自己做的的話,的確
100.8.245.106 01/30 10:35
→
kaltu
是可以只幹這一票騙到補助和VC之後
100.8.245.106 01/30 10:35
→
kaltu
跑路
100.8.245.106 01/30 10:35
→
kaltu
那也可以理解為什麼開源這麼乾脆,
100.8.245.106 01/30 10:36
→
kaltu
因為根本不需要為公司的未來性著想
100.8.245.106 01/30 10:36
推
a1234567289
樓上… 所謂的蒸餾不是拿權重.. 是
101.12.151.128 01/30 11:18
→
a1234567289
拿GPT的輸出入當資料訓練
101.12.151.128 01/30 11:18
→
Lordaeron
拿CHATGPT 的輸出,這樣的費用要多?
111.241.161.153 01/30 12:19
推
annboy
蒸餾可以想成是拿大模型的
114.137.197.253 01/30 12:52
→
annboy
input output去背答案
114.137.197.253 01/30 12:52
→
tactics2100
簡單來說 deepseek 就是開 血輪眼
203.204.69.197 01/30 13:04
→
tactics2100
或是 金輪法王 用小無相神功 催動
203.204.69.197 01/30 13:05
→
tactics2100
少林72絕技
203.204.69.197 01/30 13:05
→
tactics2100
更正 鳩摩智
203.204.69.197 01/30 13:06
→
tactics2100
補充 血輪眼是後天自己開發出來的
203.204.69.197 01/30 13:07
→
guteres
最幹的是openai和MS吧,花了一堆錢
42.73.126.244 01/30 13:29
→
guteres
和智慧財產權的費用,被人蒸餾去用
42.73.126.244 01/30 13:29
→
guteres
然後再開源。
42.73.126.244 01/30 13:29
→
tactics2100
一堆文學作家也抗議 openai 蒸餾他
203.204.69.197 01/30 13:34
→
tactics2100
們的創作啊
203.204.69.197 01/30 13:34
推
lolpklol0975
護城河CUDA 被繞過去?
101.12.163.70 01/30 14:51
噓
musashi023
不要在說什麼繞過去了 PTX還是nv家
116.89.142.202 01/30 15:03
→
musashi023
的 到底繞過去了什麼 這篇標題就在
116.89.142.202 01/30 15:03
→
musashi023
亂寫
116.89.142.202 01/30 15:03
噓
ellight
講的好像PTX是啥跨世紀發明
1.34.153.180 01/30 15:27
→
ellight
PTX就是N卡上面的低階語言而已
1.34.153.180 01/30 15:27
→
tactics2100
所以對岸以C++語言寫出黑神話悟空
203.204.69.197 01/30 16:12
→
tactics2100
你也會嗆C++又不是啥跨世紀發明?
203.204.69.197 01/30 16:12
→
tactics2100
基努李維出演駭客任務 你也會嗆攝影
203.204.69.197 01/30 16:12
→
tactics2100
機又不是啥跨世紀發明嗎?
203.204.69.197 01/30 16:12
推
tomet
確實沒什麼好吹的,時間會證明
114.137.199.65 01/30 16:56
→
physicsdk
跟死忠仔沒什麼好討論的 邏輯0分的
114.34.77.14 01/30 17:12
→
physicsdk
論述看了會降智
114.34.77.14 01/30 17:12
推
kingofsdtw
笑死,原來是手刻底層
27.52.133.120 01/30 18:49
→
Ekmund
如果有新聞寫基努李維繞過好萊塢
1.144.18.154 01/30 19:59
→
Ekmund
用攝影機拍JohnWick
1.144.18.154 01/30 19:59
→
Ekmund
那對 我會開嗆
1.144.18.154 01/30 19:59
→
Ekmund
這就邏輯很奇怪的講法啊w
1.144.18.154 01/30 20:01
噓
tactics2100
他也沒宣傳主打繞過什麼啊
203.204.69.197 01/31 00:10
→
tactics2100
而且好萊塢又不是協會組織
203.204.69.197 01/31 00:12
→
tactics2100
就像人踩在地球一樣呼吸空氣 「繞過
203.204.69.197 01/31 00:18
→
tactics2100
」講得好像要不依靠地球空間生存 和
203.204.69.197 01/31 00:18
→
tactics2100
不呼吸氧氣 來達成某成就才能讓你
203.204.69.197 01/31 00:18
→
tactics2100
信服
203.204.69.197 01/31 00:18
→
tactics2100
就像人人都有權利站在地球上呼吸空
203.204.69.197 01/31 00:20
→
tactics2100
氣一樣自然*
203.204.69.197 01/31 00:20
→
tactics2100
那你說看看黑神話 你有想要要求繞過
203.204.69.197 01/31 00:21
→
tactics2100
什麼?
203.204.69.197 01/31 00:21
推
Somebody99
ptx比cuda低階沒錯,但也沒有低到
114.136.190.240 01/31 07:43
→
Somebody99
沒有維護性吧,那這麼華
114.136.190.240 01/31 07:43
→
Ekmund
黑神話有繞過什麼?不就正常用UE5
1.144.26.221 01/31 08:59
→
Ekmund
這個對比更怪 他沒有特定硬體依賴
1.144.26.221 01/31 09:00
噓
tactics2100
所以黑神話不用顯卡就能玩?
203.204.69.197 01/31 09:30
→
tactics2100
我還以爲你會要求繞過windows(=電影
203.204.69.197 01/31 09:34
→
tactics2100
的好萊塢)
203.204.69.197 01/31 09:34
→
Ekmund
喔 所以你是問 黑神話"假設"要繞過
1.144.17.118 01/31 10:33
→
Ekmund
什麼的場景嗎?
1.144.17.118 01/31 10:33
→
Ron51320
一個轉譯程式的事,是要多難
1.200.10.0 01/31 14:16
→
Ron51320
也許AI都能自己轉了
1.200.10.0 01/31 14:18
噓
tactics2100
已經開始耍賴用問題回答問題了 那就
203.204.69.197 01/31 15:33
→
tactics2100
沒有必要理你了
203.204.69.197 01/31 15:33
→
Ekmund
我一直在回答問題 是你自己一個跳
1.129.18.204 01/31 20:05
→
Ekmund
過一個 場景沒建立清楚就往下跑 誰
1.129.18.204 01/31 20:05
→
Ekmund
知道你的對比標準是什麼?
1.129.18.204 01/31 20:05
→
Ekmund
你看spec或開spec也這樣搞的嗎
1.129.18.204 01/31 20:05
→
Ekmund
我想想喔 拿你最常講的黑神話來說
1.129.18.204 01/31 20:29
→
Ekmund
你要假設他繞過什麼 對照回直接用
1.129.18.204 01/31 20:29
→
Ekmund
PTX而不用CUDA的場景 那就是遊戲科
1.129.18.204 01/31 20:29
→
Ekmund
學跟Epic講好 UE整包太大不想用 只
1.129.18.204 01/31 20:29
→
Ekmund
抽某一部分lib出來做一些常見的圖
1.129.18.204 01/31 20:29
→
Ekmund
形運算和cross-platform的功能 完
1.129.18.204 01/31 20:29
→
Ekmund
成後遊戲爆紅 媒體各種報到 接著有
1.129.18.204 01/31 20:29
→
Ekmund
篇文跳出來說遊戲科學打破Epic限制
1.129.18.204 01/31 20:29
→
Ekmund
繞過UE 用xx模組做ooo...
1.129.18.204 01/31 20:29
→
Ekmund
呃 那 看起來依然是可以吐槽的樣子
1.129.18.204 01/31 20:29
推
lalamio
重寫就好 概念一樣
104.10.166.47 02/05 14:35