1. ホーム
  2. パイソン

解決済みお客様のCPUは、このTensorFlowバイナリが使用するようにコンパイルされていない命令をサポートしています。AVX AVX2

2022-01-23 18:06:11
<パス

問題を解決する

tensorflowをインポートして操作を実行すると、赤いエラーが発生します!?

tensorflow を tf としてインポートする。

numpyをnpとしてインポートする

プロフィール参照

アドバンスト・ベクトル・エクステンション (AVX、別名Sandy Bridge New Extensions) Advanced Vector Extensions (AVX, 別名Sandy Bridge New Extensions) は、2008年3月にインテルとインテルが提案したマイクロプロセッサ用のX86命令セットアーキテクチャの拡張機能で、2011年第3四半期に初めてインテルがサポートし、その後SoeBoE Bridgeプロセッサの出荷に対応しています。2011年第3四半期にブルドーザープロセッサを出荷したAMD。avxは新機能、新命令、新エンコーディング方式を提供。avx2はほとんどの整数コマンドを256ビットに拡張し、fused multiply accumulate(fma)演算を導入。avx-512はインテルが提案した新しいevexプリフィックスエンコーディングを用いてavxを512ビット対応に拡張。

import os  
os.environ["TF_CPP_MIN_LOG_LEVEL"]='1' # This is the default display level, which shows all messages  
os.environ["TF_CPP_MIN_LOG_LEVEL"]='2' # Show only warning and Error   
os.environ["TF_CPP_MIN_LOG_LEVEL"]='3' # Show only Error  

アイデア分析


ネチズンを参考にしたコメントで解説しています。これは実際には、ダウンロードしたTensorFlowがAVXとの互換性が低すぎてコンパイルできないことを意味します。ソースコードをダウンロードして、そのコンピュータで再コンパイルすれば、AVXをサポートします。実際には、コンピュータはAVXをサポートしていますが、コンパイルしたTensorFlowをサポートしていないだけなのです。

ネット解析の方が正しいので、参考にしてください。

1. 最初のネチズン

https://github.com/lakshayg/tensorflow-build 以下、誰かがまとめたものです。

2. 第二のネチズン

ソリューション

先頭行に書く

インポート os
os.environ['TF_CPP_MIN_LOG_LEVEL'] = '2' です。

警告メッセージを一時的にブロックするこの方法は、少し快適そうです。もし、もっと良い解決方法があれば、ぜひコメントを残して、一緒に議論して学びましょう

コードは以下の通りです。

import os
os.environ['TF_CPP_MIN_LOG_LEVEL'] = '2'

import tensorflow as tf
sess=tf.Session()
a=tf.constant(1)
b=tf.constant(3)
print(sess.run(a+b))