undefinedTenSorFlow警告 このTensorFlowバイナリが使用するためにコンパイルされていない命令を、あなたのCPUはサポートしています。AVX
ランタイム環境 : python 3.6.0
サードパーティライブラリ : tensorflow 1.9.0
問題点:
tensorflowのインストールは、CPUのバージョンですpip install tensorflow清華イメージを使用して、インストールがスムーズに行った、プログラムも正常に実行することができますが、問題は、プログラムが赤いフォントのうち、この文の過程で実行されることです、プログラムは実行できますが、常にこの種のことは特に不快であると感じています...
2019-07-25 09:00:48.684950: I T:\src\github\tensorflow\tensorflow\core\platform\cpu_feature_guard.cc:141]
Your CPU supports instructions that this TensorFlow binary was not compiled to use: AVX2
どういう意味ですか?
それは、次のことを意味します。あなたのCPUは、TensorFlowのバイナリが使用するためにコンパイルされていない命令をサポートしています。AVX2
理由: 最近のCPUは、通常の演算・論理に加えて、SSE2、SSE4、AVXなど、拡張となる低レベルの命令が多数用意されています。
AVX命令セットは、Sandy BridgeおよびLarrabeeアーキテクチャの新しい命令セットです。AVXは、従来の128ビットから256ビットに拡張されたものです。 単一命令複数データストリーム . Sandy Bridgeの単一命令マルチストリームアルゴリズムユニットは256ビットに拡張され、データ転送も改善されているため、理論的にはCPUコアの 浮動小数点演算 性能は2倍に向上しています。
インテル AVX 命令セット、で 単一命令複数データストリーム 演算性能の向上を図るとともに、同じMMX/RXを踏襲しています。 SSE命令セット . ただし MMX /SSEは、命令形式から大きく変わったAVX命令の強化が異なります。x86(IA-32/Intel 64)アーキテクチャは、プレフィックス(Prefix)の追加が基本なので、新しい命令が実装され、より複雑な命令が可能になり、x86 CPUの性能が向上しています 。
もちろんです。
これはCPUのみに限定されます。 GPU をお持ちの場合、ほとんどの高価な処理は GPU デバイス間で分割されるのが一般的であるため(yo が明示的にブックマークしない限り)、これは気にする必要はありません。 その場合、この警告は無視できます。
では、なぜこのような警告が出るのでしょうか?
SSE4.1, SSE4.2, AVX, AVX2, FMA などの CPU 拡張を使わずにビルドされているためです。 デフォルトバージョン(pip install tensorflowによる) は、できるだけ多くのCPUに対応させることを意図しています。また、これらの拡張機能を使っても、CPUはGPUよりはるかに遅く、中・大規模な機械学習の学習はGPUで行うことを想定している点です。
解決方法 :
- GPUバージョンがインストールされている場合
GPUを持っている場合、ほとんどの高価な操作はGPUデバイスに割り当てられるので(明示的に設定されていない限り)、AVXサポートについて気にする必要はありません。その場合、この警告を無視すればよいのです。
インポート os
os.environ['TF_CPP_MIN_LOG_LEVEL'] = '2' です。
- CPU版がインストールされている場合(pip install tensorflow)
1. 以下のコードを追加して、警告を無視します。
インポート os
os.environ['TF_CPP_MIN_LOG_LEVEL'] = '2' です。
2. TensorFlowのソースコードをコンパイルする
GPUを持っておらず、CPUをできるだけ活用したい場合、CPUがAVX、AVX2、FMAをサポートしていれば、CPUに最適化されたソースからtensorflowをビルドすべきです。これについては、このGitHub issueと同様に、このissueで説明されています。Tensorflowはbazelというアドホックなビルドシステムを使っており、ビルドはそれほど簡単ではありませんが、確実に実行可能です。この後、警告が消えるだけでなく、tensorflowのパフォーマンスも改善されるはずです。
実はエラーではなく警告で、osモジュールで警告レベルを設定すればOK
関連
-
pipインストール時のエラー ERROR: EnvironmentErrorのため、パッケージをインストールできませんでした。[WinError 5] アクセス拒否 (解決済み)
-
Keras、TensorFlowのインポート時にTensorFlowのネイティブランタイムのロードに失敗しました。
-
カーネル再始動
-
RandomizedSearchCV と GridSearchCV で、fit メソッドを呼び出すと list オブジェクトに属性 'values' がないエラーが発生する。
-
ValueError: ubuntu の pycharm で matplotlib をインストールすると、 max() arg が空のシーケンスになる。
-
tensorflowに一致するディストリビューションは見つかりませんでした。
-
正規化にsoftmax関数を使用すると、「OverflowError: math range error」エラーが発生する。
-
Kerasを使ったテンソルの乗算と和算
-
pip install インストール [WinError 10061] ターゲットコンピュータが積極的に拒否するため、接続できません。(Win10) Windows(10) pip install install [WinError 10061] ターゲットコンピュータによる積極的な拒否のため接続できません。
-
ロジスティック回帰のエラー問題:警告メッセージ。1: glm.fit: アルゴリズムが集約されていない 2: glm.fit: 適合率が0か1の値で計算されている
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
ValueError: 入力に NaN、無限大、または dtype('float32'64) に対して大きすぎる値が含まれている 考えられる原因
-
Python on %matplotlib inline
-
モジュール 'matplotlib.mlab' には属性 'normpdf' がありません。
-
ImportError: scipy.sparseという名前のモジュールはありません。
-
複数の要素を持つ配列の真偽値が曖昧である問題を解決する a.any() または a.all() を使用する。
-
呉恩陀ディープラーニング授業後プログラミング問題解説(python)
-
Python プロンプト TypeError: write() の引数はバイトではなく str でなければなりません。
-
[機械学習実践編 - ch09] TypeError: Unsupported operand type(s) for /: map' と 'int' です。
-
シグモイドとソフトマックスの概要
-
DataFrame オブジェクトに dtype 属性がない