Intel® Atom®・プラットフォームでOpenVINO™・トレーニング後最適化ツールキット (POT) を実行する際に「不正な命令」エラーを解決するオプション
POT を使用して、Intel® Atom®・プラットフォームのOpenVINO™・ツールキットで推論のために Tensorflow (TF) または MXNet モデルを最適化できません。
- pot -h を実行します。
- エラーメッセージを受け取る: 不正な命令の例外
次 の 2 つのオプションのいずれかを選択します。
- ほとんどの場合、POT に TensorFlow (TF) または MXNet は必要ありません。 使用 virtualenv クリーンな Python 環境の場合:
$ python3 -m pip インストール virtualenv
$ python3 -m virtualenv -p 'どの python3'
- TF または MXNet をバックエンドとして使用するモデルを評価する際に POT または AccuracyChecker を使用する場合は、TF/MXNet の非 AVX バージョンを 使用 します。例えば、conda ディストリビューションを使用するか、ソースからコンパイルします。
ソースから構築するには、次のリンクを参照してください。
MXNet と同様に、pypi の TensorFlow (TF) はバージョン 1.6 から AVX で出荷されています。Intel® Atom® E3950 プロセッサーは SSE 命令をサポートしており、AVX をサポートしていません。したがって、TF または MXNet モデルをインポートすると、AVX をサポートしないデバイスで POT を実行すると不正な命令エラーが発生します。
POT自体はTFまたはMXNetに直接依存するものではありません。POT はモデル・オプティマイザーと精度チェッカーに依存しますが、TF または MXNet に依存する場合があります。このような状況を最小限に抑えるために、OpenVINO™・ツールキット 2021.1 では、TF をバックエンドとして使用するモデルを評価する場合など、このライブラリーを実際に使用する場合に TensorFlow をインポートする制限があります。MXNetも同様のシナリオで面倒なので、同じようにすることも可能です。
ただし、Intel® Atom®・プラットフォームなどの SSE システムは、キャリブレーションの目的には使用されません。POTの量子化には、Intel® Atom®プラットフォームを使用することは推奨されません。