1
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Qiita全国学生対抗戦Advent Calendar 2024

Day 15

M3 MacでTensorflow,PyTorchの導入にかなり苦戦した話

Last updated at Posted at 2024-12-04

環境

  • M3 Macbook
  • Sonoma 14.5
  • Intel Macから移行した状態

したかったこと

tensorflowやPyTorchでGPUを使いたかった.

pip install tensorflow-macos
pip install tensorflow-metal
pip install torch torchvision torchaudio

をしたかっただけです.

起きたこと

エラー

なんどやっても以下のようなエラーが起きてしまった.

TensorFlow binary is optimized to use available CPU instructions in performance-critical operations.
To enable the following instructions: SSE4.1 SSE4.2, in other operations, rebuild TensorFlow with the appropriate compiler flags.
...
RuntimeError: This version of jaxlib was built using AVX instructions, which your CPU and/or operating system do not support. This error is frequently encountered on macOS when running an x86 Python installation on ARM hardware. In this case, try installing an ARM build of Python. Otherwise, you may be able work around this issue by building jaxlib from source.

よく見ると,M3のはずなのにCPUと書かれている...

原因

原因はIntel Macからデータ移行したことでした.HomeBrewがx86_64版になっていたのです.つまり,arm64版に移行すれば良いのです.

確認方法
print(platform.platform())

x86_64と出てきたあなたは変更をしましょう
詳しい移行方法は参考文献をご覧ください.すでにインストールしているものをそのまま移すことができます.

やったこと

  • python 初期化
  • HomeBrew変更
  • requirement.txtの作成
  • python 再インストール

結果

Python Platform: macOS-14.5-arm64-arm-64bit
Tensor Flow Version: 2.16.2
Keras Version: 3.7.0

Python 3.11.11 (main, Dec  4 2024, 21:48:20) [Clang 16.0.0 (clang-1600.0.26.4)]
Pandas 2.2.3
Scikit-Learn 1.5.2
SciPy 1.14.1
GPU is available

終わりに

試行錯誤している間に環境が壊れていき,泣きそうでした.8時間かかりました.

参考文献

1
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?