騰訊旗下的圖像技術(shù)團(tuán)隊—優(yōu)圖團(tuán)隊,近日在國際著名深度學(xué)習(xí)開源框架Cuda-Convnet2項目上做出了重要的代碼提交,將其GPU訓(xùn)練性能提升50%之多,顯示了騰訊在深度學(xué)習(xí)領(lǐng)域的又一重大進(jìn)展及騰訊積極參與開源項目與業(yè)界共享技術(shù)研究進(jìn)展的開放心態(tài)。
近年來,深度學(xué)習(xí)及相關(guān)領(lǐng)域已然成為最活躍的計算機(jī)研究領(lǐng)域之一,無論是學(xué)術(shù)界還是互聯(lián)網(wǎng)科技巨頭,均在此方向投入了巨大的研究資源。深度學(xué)習(xí)在計算機(jī)視覺、語音識別等領(lǐng)域均帶來了巨大的、非常領(lǐng)先的研究成果。但由于其超級龐大的網(wǎng)絡(luò)計算規(guī)模和海量的訓(xùn)練數(shù)據(jù),深度學(xué)習(xí)的訓(xùn)練往往耗時巨大,已經(jīng)成為深度學(xué)習(xí)目前研究和實踐中一個巨大瓶頸。騰訊優(yōu)圖團(tuán)隊在GPU kernel層面做了大量底層優(yōu)化工作,極大緩解了深度學(xué)習(xí)訓(xùn)練性能這個瓶頸。
優(yōu)圖團(tuán)隊的優(yōu)化工作主要基于Alex Krizhevsky實現(xiàn)的CUDA-Convnet2框架。Alex Krizhevsky是深度學(xué)習(xí)領(lǐng)域非常有影響力的研究者之一,是著名的AlexNet模型的發(fā)明者。CUDA-Convnet2模型是一種支持多GPU并行運行的深度學(xué)習(xí)算法框架,是所有同類開源框架中性能最優(yōu)秀的框架。
優(yōu)圖團(tuán)隊的深度學(xué)習(xí)系統(tǒng)在CUDA-Convnet2的基礎(chǔ)上,實現(xiàn)了更為高效的GPU利用。測試結(jié)果表明(如圖表1所示),batchSize為32或64時,優(yōu)化后的內(nèi)核速度提升超過50%,這也彌補了之前CUDA-Convnet2在batchSize 32或64時的不足。batchSize為128時,內(nèi)核速度有10%以上的提升,在對jpeg解碼部分做優(yōu)化后,整體性能提升也達(dá)到50%。
圖表 1 優(yōu)圖優(yōu)化前后的性能對比
之所以取得如此大的進(jìn)展,是因為優(yōu)圖團(tuán)隊在精通GPU硬件架構(gòu)和深度學(xué)習(xí)算法的基礎(chǔ)上,采用了更加前沿的優(yōu)化策略。優(yōu)圖團(tuán)隊的優(yōu)化理念源自于當(dāng)前的GPU計算主頻已足夠高,而數(shù)據(jù)訪問速度跟不上運算速度,造成GPU的空轉(zhuǎn)。其優(yōu)化點主要包含如下幾點:
1. 更大的共享內(nèi)存帶寬。現(xiàn)在的GPU都具有高達(dá)64~128 bit的共享內(nèi)存帶寬,且共享內(nèi)存具有訪問速度快等特點。為了充分利用共享內(nèi)存的硬件性能,優(yōu)圖團(tuán)隊采用矢量化的數(shù)據(jù)類型來匹配更大的內(nèi)存帶寬,使得數(shù)據(jù)的訪問速度呈倍數(shù)增加,極大提升了數(shù)據(jù)的傳輸速度;
2. 巧妙的數(shù)據(jù)拓?fù)浣Y(jié)構(gòu)和精心組織的訪問指令順序。由于大部分GPU都支持并發(fā)訪問的特性,為了進(jìn)一步提升內(nèi)存訪問速度,優(yōu)圖團(tuán)隊巧妙的排列數(shù)據(jù)拓?fù)浣Y(jié)構(gòu)和數(shù)據(jù)訪問指令順序。眾所周知,頁面沖突是內(nèi)存并發(fā)訪問的最大的難題,因此,通過巧妙的排列數(shù)據(jù)結(jié)構(gòu)可以最大程度減少頁面沖突,提升并發(fā)訪問的幾率。同時在充分利用指令集的并發(fā)流水線基礎(chǔ)上,優(yōu)化數(shù)據(jù)的訪問指令順序,提升指令間并行度,也可以大幅提升數(shù)據(jù)訪問速度;
3. 高效的數(shù)據(jù)傳輸粒度。由于GPU程序分為運算和數(shù)據(jù)訪問兩個部分,當(dāng)數(shù)據(jù)訪問速度跟不上GPU的運算速度時,為了最大程度利用GPU性能,應(yīng)盡量避免GPU的運算部分或數(shù)據(jù)訪問部分處于長期空轉(zhuǎn)的狀態(tài),因此必須優(yōu)化數(shù)據(jù)的訪問粒度。將過大的數(shù)據(jù)訪問粒度切割成若干個小的訪問粒度,合適插入到GPU的運算周期中。
騰訊優(yōu)圖團(tuán)隊長期致力于各種圖像技術(shù)和深度學(xué)習(xí)方向的研究和應(yīng)用。在人臉檢測和人臉識別,圖像美化和人像美容等方向上均有深厚的積累并取得了業(yè)內(nèi)領(lǐng)先的成果。此次深度學(xué)習(xí)性能優(yōu)化的重要進(jìn)展和開源貢獻(xiàn)相信能夠為業(yè)界在深度學(xué)習(xí)的研究上提供非常有益的幫助。
特別提醒:本網(wǎng)內(nèi)容轉(zhuǎn)載自其他媒體,目的在于傳遞更多信息,并不代表本網(wǎng)贊同其觀點。其原創(chuàng)性以及文中陳述文字和內(nèi)容未經(jīng)本站證實,對本文以及其中全部或者部分內(nèi)容、文字的真實性、完整性、及時性本站不作任何保證或承諾,并請自行核實相關(guān)內(nèi)容。本站不承擔(dān)此類作品侵權(quán)行為的直接責(zé)任及連帶責(zé)任。如若本網(wǎng)有任何內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系我們,本站將會在24小時內(nèi)處理完畢。