執行大模型GPU佔用計算公式:
\(M=\frac{(P * 4B)}{32 / Q} * 1/2\)
- M : 以GB標識的GPU記憶體
- P : 模型中的引數數量,例如一個7B模型有70億引數
- 4B : 4個位元組,表示用於每個引數的位元組
- 32 : 4個位元組中有32位
- Q : 應該用於載入模型的位數,例如16位、8位、4位
- 1.2 : 表示在GPU記憶體中載入其他內容的20%開銷
常用大模型記憶體佔用
大小(billion) | 模型位數 | 視訊記憶體佔用(GB) |
---|---|---|
1.5B | 4 | 0.9 |
1.5B | 8 | 1.8 |
1.5B | 16 | 3.6 |
7B | 4 | 4.2 |
7B | 8 | 8.4 |
7B | 16 | 16.8 |
9B | 4 | 5.4 |
9B | 8 | 10.8 |
9B | 16 | 21.6 |
40B | 4 | 24 |
40B | 8 | 48 |
40B | 16 | 96 |
70B | 4 | 42 |
70B | 8 | 84 |
70B | 16 | 168 |
量化大模型的標準寫法
經常看到量化大模型後面帶著q2_k
、ft16
、 q5_k_s
、q8_0
等寫法。這類寫法代表著大模型的量化後的指標,釋義如下:
傳統量化
包括q4_0、q4_1、q8_0等方法。
如q4_0。代表模型位數=4,0表示保留0位小數。即資料會被量化到0-255之間的整數
K值量化
如q2_k
、q5_k_s
等方法。實際上就是不同層用不同精度量化,以比傳統量化更智慧的方式分配bit。解壓縮方式與傳統量化類似,同樣快速