曠視MegEngine是如何將31*31的大核卷積計(jì)算速度提高10倍的

來源:DeepHub IMBA 本文約3400字,建議閱讀5分鐘
“大內(nèi)核的cnn可以勝過小內(nèi)核的cnn”這可能是今年來對于CNN研究最大的成果了。
內(nèi)核帶來了更多的計(jì)算和參數(shù)

如何尋找大核卷積的優(yōu)化空間?

算力:每秒所完成的浮點(diǎn)運(yùn)算次數(shù),單位為FLOP/s或GFLOP/s 帶寬:每秒所完成的內(nèi)存讀取量,單位為Byte/s或GByte/s 計(jì)算密度:又稱訪存比,是算力與帶寬的比值,即每字節(jié)讀取所完成的浮點(diǎn)運(yùn)算量,單位為FLOP/Byte

內(nèi)核塊大小為BM×BK 輸入塊大小為BK×BN 計(jì)算的次數(shù)是BM×BN×BK×2 內(nèi)存訪問為(BM×BK+BN×BK)×4 計(jì)算密度為BM×BN×2/(BM+BN)×4



浮點(diǎn)運(yùn)算次數(shù)=oh×ow×khkw×2 FLOPs 內(nèi)存訪問數(shù)= ?(kh×kw+(oh+kh?1)×(ow+kw?1))×4 bytes 內(nèi)核大小:kh×kw 輸入大小:(oh+kh?1)×(ow+kw?1) 計(jì)算密度=(oh×ow×kh×kw×2)/{(kh×kw+(oh+kh?1)×(ow+kw?1))×4}
MegEngine的表現(xiàn)


編輯:黃繼彥
評(píng)論
圖片
表情
