2017-04-22 18 views
2

每當我用tensorflow,它會顯示消息「TensorFlow庫編譯時不使用SSE3指令,但這些都可以在機器上,並可以加快CPU的計算」和2更類似的消息。 所以我決定從源頭上構建tensorflow以擺脫這些消息。我在Debian上使用python 3.5,並遵循https://www.tensorflow.org/install/install_sources(僅限CPU,無GPU)的指示。 它在構建期間詢問構建是否應該用於構建它的機器,我選擇了它,它在某些編譯器選項中包含-march = native。 一切似乎都工作,但是當我跑python3測試構建,它仍然提供了有關信息「的TensorFlow庫編譯時不使用SSE3指令,但這些都可以......」等。如何我做建立使用它正在運行的硬件?構建tensorflow使用SSE3和SSE4

+0

的可能的複製[如何使用SSE4.2和AVX指令編譯Tensorflow?](http://stackoverflow.com/questions/41293077/how-to-compile-tensorflow-with-sse4-2-and-avx -instructions) –

回答

1

也出現了類似的問題,大多數的答案都是錯誤的。他們說有必要在構建中指定諸如「--copt = -msse4.1 --copt = -msse4.2」之類的選項;它不是。使用默認選項「-march = native」,如果GNU編譯器可用,則它將使用SSE4.1和SSE4.2指令。

真正的問題是,如果你從源代碼編譯tensorflow,安裝默認的建立與PIP後,PIP不會與新的版本替換舊版本。一切似乎都奏效,但你的舊版本仍然保留在〜/ .local下的目錄中。 解決方案只是用pip('pip uninstall tensorflow'或'pip3 uninstall tensorflow')卸載舊的tensorflow,然後從源代碼重建。如果你已經做了一個構建,並想知道爲什麼似乎沒有什麼改變,你不必重複建設,但可以只執行最後幾個步驟(https://www.tensorflow.org/install/install_sources),即巴澤爾斌/ tensorflow /工具/ pip_package/build_pip_package/tmp目錄/ tensorflow_pkg,然後進行pip安裝。

+0

'pip install --upgrade'替換已安裝的tensorflow –