Translate

2018年4月26日木曜日

TensorFlow 1.5.1 以降をインストールしてimportすると落ちる件


#まえにも書いた記事の続編です。







多分これで悩んでいる人多いと思います。
イロイロためしてみてなんとなくわかったことを書いておきます。


手元にThinkPad X230 と やや古いマウスコンピュータ製PCがあり
両方にTensorFlowを入れてみたのですが
どちらも1.5.0 までで1.5.1以降は
import tensorflow で落ちてしまいます。

..で、近年のWindows10渋々移行の波に乗り
X230のかわりにThinkPad T470 を使いだしたのですが
コッチでは最新版が動作することがわかりました。
そのときのInformationでようやくリリースノートの意図がわかってきました。


----
ThinkPad X230(Windows 7)
Intel(R) Core(TM) i5-3320M
→命令セット拡張 Intel(R) AVX

マウスコンピュータ製PC
Intel(R) Core(TM) i7 CPU         860  @ 2.80GHz
→命令セット拡張 Intel(R) SSE4.2

ThinkPad T470(Windows10)
Intel(R) Core(TM) i5-7200U
→命令セット拡張 Intel(R) SSE4.1, Intel(R) SSE4.2, Intel(R) AVX2
----


たしかに1.6.0からはAVX対応してないPCでは
コンパイルが必要とかリリースノートに書いていましたが、
それはCPUの命令セット拡張の
Intel(R) AVX ではなく
Inten(R) AVX2 でないといけない
ということだと思います。

それ以外は該当環境のオプションを付けて
再コンパイルしないと動作しません。

で、再コンパイルしようと思ってふと
わざわざイチからコンパイルして時間かけてできた
TensorFlowは遅いことが約束されたライブラリでしかないわけで
そんなの使う手間があったらほかのことしたほうが良いよね...


と、いうことでi7クアッドが載っている
マウスコンピュータ製PCも1.5.0 で諦めることにしました...


それまでやたらInformationを無視していましたが
これまでも警告が出ていたのですねえ..

みなさんも搭載CPUのスペックをインテル社サイトで調べて
「命令セット拡張にAVX2」の有無を確認してみてください。






..動けばいい、の刹那的技術者はやっぱりダメだな..

0 件のコメント:

既存アプリケーションをK8s上でコンテナ化して動かす場合の設計注意事項メモ

既存アプリをK8sなどのコンテナにして動かすには、どこを注意すればいいか..ちょっと調べたときの注意事項をメモにした。   1. The Twelve Factors (日本語訳からの転記) コードベース   バージョン管理されている1つのコードベースと複数のデプロイ 依存関係 ...