初めに
Web系を得意とするフリーランスエンジニアです。
また、今年中に作りたいプロダクトでニューラルネットワークを用いた技術が必要で、10コアCPU,14コアGPU,16コアNeuralEngine搭載Apple M1 pro(14インチ MacBook Pro)を購入しました。
Apple M1 Pro / Max
詳しい性能は、Appleの紹介ページで見ていただきたいですが、一言で言うとCPU,GPUパフォーマンスぶっちぎりで恐るべきスピードを誇るチップ
機械学習のためのパワフルなNeural Engineも、アップグレードされたProRes対応メディアエンジンも持っている。
買ってどう?
結論から言うと、かなりの曲者で、買う人によっては後悔する人もいると思います。
良い点と悪い点あるので、順に書いていきます。
良い点
機械学習のパフォーマンスは凄い。Tensorflowしか自分は使っていないですが、Intelのmacで機械学習するより遥かに早いです。
Intel mac, Google Colaboratory, M1 macでパフォーマンス比較した記事は、youtubeなり他の方の記事なりたくさんあるので、詳しくは自分でググってください。
悪い点
非対応のソフトウェアが結構多いことと、バージョン依存のライブラリが動かせなかったりすることです。
以下が具体例です
- VirutualBoxが動作しない
- Dockerの一部イメージが動作しない
- Tensorflowのバージョン2.4以降しか使えない (miniforge)
- ググっても同じエラーがほとんどヒットしない
etc
開発環境構築でvagrant+virtualboxを使う現場の人はたくさんいると思いますが、残念ながらApple Silicon Macは現状対応していません。また、自分が使いたいと思ったtensorflowやpytorchなどを使ったオープンソースにはApple Silicon Mac非対応のものがほとんどでした。また、新しい故にまだissueに上げっていなかったり、起票されているissueに対して「俺、apple silicon mac持ってないからサポートできない」ってニュアンスの英語が返事されたりしている機械学習用のオープンソースも目にしたりします。
一例
結論
Apple Silicon Mac非対応のソフトウェアが自分にとってクリティカルな問題でないかきちんと吟味する必要があります。もしくは、新しくMacBookを買うとき、それまで使っていたPCを売る人も多いと思いますが、IntelのMacは売らずに持っておいた方が良いと思います。
ハードウェアが素晴らしいのは事実なので、ソフトウェアのサポートが追いつくのを現状待つしかないですね。