TensorFlow 1.9迎來優化版,詳細效能更新干貨分享!
英特爾®TensorFlow * 1.9優化版現在已經進入使用階段。當TensorFlow建立在英特爾® MKL-DNN(用於深度神經網路的英特爾®數學核心庫)時,一些人不願意基於原始碼編譯TensorFlow,去提升CPU效能,而英特爾®TensorFlow * 1.9優化的這些二進位制包就為這些人提供了方便。
除了支援英特爾®MKL-DNN之外,在生成二進位制檔案之前,以下補丁可用於原始碼:
-
將curl庫升級到7.60的補丁請參閱
-
包含英特爾®MKL-DNN許可證檔案的補丁,請參閱
-
代號為Sandy Bridge和Ivy Bridge的舊款英特爾處理器提高英特爾MKL-DNN效能的補丁,請參閱
以下是詳細的釋出說明。二進位制檔案可作為 python whl packages和Docker containers使用。
Python* Packages (whls)
有三個可用的python packages:
Python packages配置 |
|
組態 |
連結 |
Python 2.7 |
|
Python 3.5 |
|
Python 3.6 |
若要安裝英特爾Tensorflow優化版,請執行下面的一個指令將wheel安裝到現有的Python* installation中,最好是Intel® Distribution for Python*:
#Python 2.7
Pip install
https://storage.googleapis.com/intel-optimized-tensorflow/tensorflow-1.9.0-cp27-cp27mu-linux_x86_64.whl
#Pthon 3.5
Pip install
https://storage.googleapis.com/intel-optimized-tensorflow/tensorflow-1.9.0-cp35-cp35m-linux_x86_64.whl
#Python 3.6
Pip install
https://storage.cloud.google.com/intel-optimized-tensorflow/tensorflow-1.9.0-cp36-cp36m-linux_x86_64.whl
Docker Images
獲取並執行容器
這些docker映象都發布在http://hub.docker.com的intelaipg / intel-optimized-tensorflow名稱空間中,可以使用以下命令進行拉取:
$ docker pull docker.io/intelaipg/intel-optimized-tensorflow:<tag>
例如,直接執行python 2.7資料科學容器
$ docker run -it -p 8888:8888 intelaipg / intel-optimized-tensorflow
然後在 http:// localhost:8888 / 上轉到您的瀏覽器
可用的配置容器
可以使用以下標籤/配置:
Docker容器配置 |
|
組態 |
標籤 |
Python 2.7與jupyter和sample notebooks |
latest latest-mkl 1.9.0-mkl |
Python 3.5與jupyter和sample notebooks |
latest-py3 latest-mkl-py3 1.9.0-mkl-py3 |
Python 2.7與TensorFlow開發工具鏈 |
latest-devel latest-devel-mkl 1.9.0-devel-mkl |
Python 2.7與TensorFlow開發工具鏈 |
latest-devel-py3 latest-devel-mkl-py3 1.9.0-devel-mkl-py3 |
發行說明
這些發行說明僅適用於構建支援英特爾®MKL-DNN的TensorFlow時引入的更改。有關TensorFlow 1.9中引入的功能和修復,請參閱TensorFlow 1.9 發行說明 。
新功能和可用性改進
新功能
-
使用MKL構建時更改了inter_op_parallelism_threads預設值,以避免執行緒過度訂閱。
-
新增了預設的OpenMP* OMP設定,在使用MKL核心時,這些設定可以提高效能。
-
增加了查詢CPUID的功能,以保證Intel 64位體系結構上每個物理核心上的超執行緒數量。
績效改進
-
將英特爾MKL-DNN升級至版本0.14。
-
將KMP_BLOCKTIME 環境變數更改為0。
-
增加預設的inter_op_parallelism_threads引數以避免過於保守。
-
通過重用MKL-DNN原語來增強Conv2d 效能。
其他變化
-
刪除了已棄用的StringPiece 類的使用。
-
更新了基於64位元組對齊的tensorflow / compiler / aot測試
-
更新了Tensor.Slice_Basic 以進行64位元組對齊
-
更新了ScopedAllocatorConcatOpTest.Reshape 以進行64位元組對齊
Bug修復
-
修復了MKL_ML 操作的註冊問題。
-
修復了BFCAllocator : Extend 對齊問題。
-
修復了使用舊版本gcc時與MklConcat 相關的構建問題。
-
修復了AVX512版本中的對齊崩潰問題。
-
修復了convrnn 單元測試失敗的問題。
-
修復了 mkl_layout_pass_ 測試失敗的問題
-
修復了啟用MKL-DNN構建時util_cuda_kernel_helper_test_gpu 失敗的問題。
-
修復了記憶體分配檢查失敗下的英特爾MKL-DNN單元測試問題。
-
修復了// tensorflow / python / profiler:model_analyzer_test中的失敗問題
-
修復了在Mac上查詢libhdfs.so 時的錯誤; Mac OS使用libhdfs.dylib。
-
修復了不需要重新排序時mkl_input_conversion 操作中的錯誤。
-
設定EIGEN_MAX_ALIGN_BYTES = 64 以防止在使用AVX512支援編制時執行單元測試期間發生崩潰。
-
修復了單元測試single_machine_test.cc,因為啟用了英特爾MKL-DNN時插入了特殊節點。
已知問題
-
TensorFlow 1.9分支後修復了以下問題:
-
使用gcc6.3構建,在連結時未定義對'dladdr'的引用。
-
使用英特爾MKL-DNN時,Concat-related ops在混合格式/佈局中失敗
-
MklConv2DWithBiasBackpropBias只可以在使用英特爾MKL-ML進行編譯時註冊。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31542119/viewspace-2199527/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- (iOS) UICollectionViewLayoutInvalidationContext效能優化 詳細流程圖 + 範例iOSUIViewContext優化流程圖
- Java效能優化的50個細節(珍藏版)Java優化
- Java效能優化的45個細節(珍藏版)Java優化
- Django ORM效能優化之count和len方法的選擇(非常詳細推薦乾貨)DjangoORM優化
- 讓Elasticsearch飛起來!——效能優化實踐乾貨Elasticsearch優化
- 讓 Elasticsearch 飛起來!——效能優化實踐乾貨Elasticsearch優化
- 帶你詳細解讀十條關於SQL效能優化!SQL優化
- SQL效能優化的祕訣,快來圍觀,乾貨!SQL優化
- 乾貨收藏 | 如何優化前端效能?優化前端
- 前端不哭!最新優化效能經驗分享來啦 | 技術頭條前端優化
- spring原始碼乾貨分享-物件建立詳細解析(set注入和初始化)Spring原始碼物件
- 分享一個SQLite 效能優化例項SQLite優化
- 一份超詳細的MySQL高效能優化實戰總結MySql優化
- Java效能優化必知的50個細節(珍藏版):Jvm調優+MySQL+TomcatJava優化JVMMySqlTomcat
- 如何使用函式來優化效能函式優化
- 【前端效能優化】vue效能優化前端優化Vue
- 《Qcon分享-萬億級資料庫 MongoDB 叢集效能數十倍提升優化實踐》核心17問詳細解答資料庫MongoDB優化
- 最詳細版圖解優先佇列(堆)圖解佇列
- Linux系統Redis效能最佳化詳細教程。LinuxRedis
- Linux系統PHP效能最佳化詳細教程。LinuxPHP
- Linux系統Memcached效能最佳化詳細教程。Linux
- 詳細整理iOS中UITableView的效能最佳化iOSUIView
- 詳解SQL效能優化十條經驗SQL優化
- h5效能優化,細節決定結果。H5優化
- Android效能優化:手把手教你如何讓App更快、更穩、更省(含記憶體、佈局優化等)Android優化APP記憶體
- 舉個小栗子來聊下效能優化優化
- Android效能優化來龍去脈總結Android優化
- 效能優化優化
- Spark 3.x Spark Core詳解 & 效能優化Spark優化
- 前端效能優化:細說JavaScript的載入與執行前端優化JavaScript
- 詳細說明搜尋引擎優化的過程優化
- 重構之路:webpack打包體積優化(超詳細)Web優化
- 騰訊架構分享:java開發要掌握的50個效能優化細節(面試漲薪)架構Java優化面試
- 前端效能優化(JS/CSS優化,SEO優化)前端優化JSCSS
- Android效能優化——效能優化的難題總結Android優化
- Android 效能優化 ---- 啟動優化Android優化
- Android效能優化----卡頓優化Android優化
- [效能優化]DateFormatter深度優化探索優化ORM