AI模型量化後速度為什麼變慢了?

時間 2022-01-09 10:31:56

1樓:pogg

這題我遇到過,小弟獻醜了~先說結論,我認為這是比較正常的現象。

現在很多向前推理框架都支援int量化,mnn甚至支援int4量化,但大家發現量化後的模型在板子上跑,速度比原先的fp16,甚至是fp32更慢,追其原因,是因為很多模型量化是屬於一種偽量化,也就是雖然你的卷積是存的int8的資料型別,但是在兩個卷積,或者卷積和啟用函式進行點乘後,資料由2^8*2^8=2^16次,資料型別變成了int16,而fp32的數值範圍是[-35565,35565],int16是[0,35565],這其實和fp32相比並不能體現多大的優勢,也需要板子有這類專門的指令操作進行偽量化的數值範圍截斷。

而最典型的是,就是樹莓派,我建議樓主跑下樹莓派3B和樹莓派4B,樹莓派4B的armv8(還是v7也忘了。。。)架構和neon指令就有對int8進行過優化,所以同樣是arm架構,你會發現跑出來的效果不一樣。

在路上打字,小打怡情,大佬們將就著看

如何建立乙個模型來量化知識提公升速度

好想法!通過建立模型來追蹤自己的學習進度是非常有效的自我管理手段。提供一種很基本的建立模型的思路,權當拋磚引玉。假設,我需要看一本課本並且掌握該課本的大部分知識 假設為90 再假設,除了課本以外,我還有一本習題集。習題集的內容包括了該課本內的所有知識且習題集內容足夠多。當我看完第一章,我隨機從題庫中...

高中動量守恆定律彈簧模型為什麼速度相等的時候彈簧彈性勢能最大?

雪人 彈性勢能最大就是兩球相對位移取極大值,相對位移取極大值就是其對t求導為0,也就是相對速度為零。同理,速度最大就是速度對t求導為0,也就是合外力為0。高中這類題目挺常見,抓住不變點 什麼最大就是它的變化率為0。x最大就是v為0,v最大就是a為0,彈簧模型,繩船模型多要用到此招 阿克學長 但彈簧伸...

為什麼玻璃上兩水滴相遇後速度變快?

凌晨 這個就得考慮水的張力了。乙個水滴下落時,水分子和玻璃間的粘合力以及摩擦力跟重力抵消成了勻速運動。兩個水滴結合時,這個時候變化更大的是水的張力,附著面不是正比例變化了,使得重力和那啥粘合的摩擦力合力向下,所以加速向下運動,速度越快,水和杯子間的接觸面積會越小,加速度也在加速變大.這樣講能看懂嗎?...