金山云和英特爾是如何做深度學習框架優(yōu)化的?
時間:2022-04-04 17:21:01 | 來源:行業(yè)動態(tài)
時間:2022-04-04 17:21:01 來源:行業(yè)動態(tài)
我們知道TensorFlow是目前在AI領域使用最為廣泛的深度學習開源框架,可以很好地支持AI應用較為普遍的計算機視覺、語音識別、自然語言處理等紛紛做負載。Google在Tensorflow官方網(wǎng)站上原生Tensorflow并沒有調(diào)用MKL/MKL-DNN 來加速在CPU上的運行,因此原生Tensorflow在英特爾至強處理器上運行時性能不夠理想。英特爾與Google緊密合作,將基于MKL-DNN的優(yōu)化代碼集成到Tensorflow中,并發(fā)布到了Tensorflow官網(wǎng)。
用戶下載針對英特爾平臺優(yōu)化過的Tensorflow可以很好地利用英特爾至強處理器的AVX-512指令集加速,相對于原生的Tensorflow性能有了很大提升。
Caffe也是一個使用十分廣泛的開源框架,主要是針對計算機視覺方面的應用做了針對性的開發(fā),尤其是在國內(nèi)的很多安防類企業(yè),目前來看使用的范圍還是比較廣泛。
相比Tensorflow,Caffe并沒有版權(quán)方面的限制,英特爾在開源網(wǎng)站github上面有專屬的分支(https://github.com/intel/caffe),針對英特爾的x86 CPU 架構(gòu)做了許多有針對性的優(yōu)化,比官方版本的BVLC caffe在性能上有了大幅度的提升,在一些典型的CNN拓撲上,提升幅度達到數(shù)十倍。另外英特爾積極響應客戶的需求,針對目前國內(nèi)許多安防類型的企業(yè)有很多的工作負載仍然運行在Windows上,也進行了在Windows上的性能優(yōu)化。
從第一代至強可擴展處理器開始,英特爾至強處理器提供了全新的AVX-512指令集,該指令可以同時處理16個單精浮點數(shù),比上一代至強處理器處理單精浮點數(shù)的能力提升2倍,這個特性在處理人工智能這種高密度計算的工作負載時展現(xiàn)了前所未有的優(yōu)勢。
AI 算法的開發(fā)基本上都是基于一些開源框架進行的,如TensorFlow, Caffe, MxNet等。為了能夠?qū)⒌讓拥挠布嬎懔θ酷尫?,英特爾針對這些開源框架做了大量的優(yōu)化工作,其中非常關(guān)鍵的一點是通過調(diào)用英特爾數(shù)學核心庫(MKL/MKL-DNN)很好的利用到了英特爾處理器的AVX-512指令集。