web-dev-qa-db-ja.com

TensorFlowはSSE(など)命令を使用するようにコンパイルされていませんでしたが、これらは利用可能です

TensorFlowを初めて実行し、いくつかのサンプルコードを使用しています。コードの実行中にこのエラーが発生しました。誰がこれが起こったのか、そしてそれを修正する方法を知っていますか?ありがとう!

2017-03-31 02:12:59.346109: W c:\tf_jenkins\home\workspace\release-win\device\cpu\os\windows\tensorflow\core\platform\cpu_feature_guard.cc:45] The TensorFlow library wasn't compiled to use SSE instructions, but these are available on your machine and could speed up CPU computations.
2017-03-31 02:12:59.346968: W c:\tf_jenkins\home\workspace\release-win\device\cpu\os\windows\tensorflow\core\platform\cpu_feature_guard.cc:45] The TensorFlow library wasn't compiled to use SSE2 instructions, but these are available on your machine and could speed up CPU computations.
2017-03-31 02:12:59.346975: W c:\tf_jenkins\home\workspace\release-win\device\cpu\os\windows\tensorflow\core\platform\cpu_feature_guard.cc:45] The TensorFlow libbrary wasn't compiled to use SSE3 instructions, but these are available on your machine and could speed up CPU computations.
2017-03-31 02:12:59.346979: W c:\tf_jenkins\home\workspace\release-win\device\cpu\os\windows\tensorflow\core\platform\cpu_feature_guard.cc:45] The TensorFlow library wasn't compiled to use SSE4.1 instructions, but these are available on your machine and could speed up CPU computations.
2017-03-31 02:12:59.346983: W c:\tf_jenkins\home\workspace\release-win\device\cpu\os\windows\tensorflow\core\platform\cpu_feature_guard.cc:45] The TensorFlow library wasn't compiled to use SSE4.2 instructions, but these are available on your machine and could speed up CPU computations.
2017-03-31 02:12:59.346987: W c:\tf_jenkins\home\workspace\release-win\device\cpu\os\windows\tensorflow\core\platform\cpu_feature_guard.cc:45] The TensorFlow library wasn't compiled to use AVX instructions, but these are available on your machine and could speed up CPU computations.
2017-03-31 02:12:59.346991: W c:\tf_jenkins\home\workspace\release-win\device\cpu\os\windows\tensorflow\core\platform\cpu_feature_guard.cc:45] The TensorFlow library wasn't compiled to use AVX2 instructions, but these are available on your machine and could speed up CPU computations.
2017-03-31 02:12:59.346995: W c:\tf_jenkins\home\workspace\release-win\device\cpu\os\windows\tensorflow\core\platform\cpu_feature_guard.cc:45] The TensorFlow library wasn't compiled to use FMA instructions, but these are available on your machine and could speed up CPU computations.
35
Jsleshem

これらはエラーではなく警告です(コロンの後のWで示されています。エラーにはEがあります)。

警告は、ご使用のCPUが SSE命令 をサポートしていることを示しています。これにより、ハードウェア並列での高速操作が可能になります。これらの操作の有効化はコンパイル時の操作です(つまり、SSEを使用するには、ターゲットから特定のSSE_バージョンを有効にするソースからライブラリをビルドする必要があります)。かもしれません この質問を見てください

ただし、SSEサポートは計算速度のみに影響することに注意してください。 TensorflowはSSEの有無にかかわらず動作しますが、コードの実行に時間がかかる場合があります。また、これはCPUのみに影響することに注意してください。 TensorflowのGPUビルドを使用している場合、GPUで実行されるすべての操作はSSE命令の恩恵を受けません。

52
GPhilo

これらの警告を隠すには、実際のコードの前にこれを行うことができます。

import os
os.environ['TF_CPP_MIN_LOG_LEVEL']='2'
import tensorflow as tf

詳細な議論については、こちらを参照してください https://github.com/tensorflow/tensorflow/issues/7778

他の人の助けになることを願っています。 :)

15
nanangarsyad

これはエラーではなく、ソースからTensorFlowをビルドすると、マシン上で高速になる可能性があることを警告するだけです。

そして、警告が言うように、TFをより速くする必要がある場合にのみ、これらのフラグを使用してTFをコンパイルする必要があります。

TF環境変数TF_CPP_MIN_LOG_LEVELを使用でき、次のように機能します。

  • デフォルトは0で、すべてのログが表示されます
  • INFOログを除外するには、1に設定します
  • WARNINGSさらに、2
  • さらに、ERRORログをフィルターで除外するには、3に設定します

そのため、次の手順を実行して警告を黙らせることができます。

import os
os.environ['TF_CPP_MIN_LOG_LEVEL']='2'
import tensorflow as tf

詳細な議論については SSE4.1、SSE4.2、およびAVXを使用してテンソルフローをコンパイルする方法 を参照してください。

3
Aashish