メガネをかけたキリンのブログ

アウトドアや旅行の記事を中心に投稿します。

M1 Macめっちゃ速いけどPython環境にはクセありすぎ問題

2018年夏、私の右腕とも呼んでもいいMacBook Proを入手し、一緒にいろんなところに行ったり、学生時代の研究にもフル活用してました。

 

そして、最近話題になっているM1 Mac。

 

今まではIntelのCPUを搭載していたわけですが、M1というApple自社開発のCPUを搭載した新しいMacはどうやら処理が速くてバッテリー持ちがいいらしいという話を聞いて、居ても立っても居られなくなった私。

 

もう新型MacBook Proの噂が出始めてるにも関わらず、1ヶ月前にポチってしまったわけです。

 

今更感もありますが、1ヶ月使って思ったことを記事にしておきたいと思います。

 

 

やっぱり新品はいいよね

私が購入したのはMacBook Proでメモリを16GB、ストレージを1TBにカスタマイズしたモデルでした。

 

この箱はApple製品おなじみですね。配達時にApple製品であることが分からないように工夫されているんでしょうか?でも、そろそろバレバレな気もしますね。

f:id:null10blgcom:20210417221224j:image

 

こちらが中身。今までのパッケージと大きく変わったところはないですかね。
f:id:null10blgcom:20210417221231j:image

 

おほ〜〜〜〜やっぱり開封はテンション上がりますね。
f:id:null10blgcom:20210417221234j:image

 

てことで、旧型からデータ移行を行います。これ、ホントはIntel版とM1版で色々と勝手が違ったりするので、不具合の原因になってしまうかもしれないですね。
f:id:null10blgcom:20210417221227j:image

 

M1 Macで変わったと思うこと

キーボードのタッチ感

私は普段、Pythonというプログラミング言語で簡単なプログラム書いたり、競馬のデータ解析したりしています。

 

2018年モデルのMacBook Proから明らかに変わったと思うのは、キーボードの感覚です。

 

押し心地が全然違っており、最初こそ違和感がありましたが、今ではこちらのキーボードのほうがいい感じに思うようになりました。

 

これはM1 Macだからというわけじゃないですが、キーボードは押しやすいと思います。

 

Touch IDでのロック解除のスピードが速い

これは抜群に速くなったと思います。今までは何回か触らないと認識されなかったりしたのですが、触れたと思った瞬間にロック解除される感じになりました。

 

勢い余って2回押してしまうくらいには速いです。

 

ファンがほぼ無音

2018年モデルはPythonでプログラム実行をした際に、結構頻繁にファンが回っていたのですが、同じプログラムでも全然ファンが回りません。

 

本体も全然熱くないので、膝上にMacを乗せて作業しても全然問題ないですね。

 

MacBook Airの方はファンレスになっているので、そもそもファンの音がしなかったりしますが、MacBook Proでもほぼファンの音はしないように思います。

 

Pythonのforループが速くなった

Pythonでは繰り返し処理のforループが非常に時間がかかったりするのですが、こちらはなんの工夫もせずにスピードアップしました。

 

あ、ホントにM1 Macって速いんだなと素で感じることができました。

 

本来はforループをできるだけ使わないように工夫すべきところですが、ひとまず動かしたいという場合でも処理スピードが上がるなら、結果的に開発スピードは上がるように思います。

 

M1 Macで気になったこと

Python周りの環境構築が沼

これはPythonだけの問題かもしれないですが、私がよく使うライブラリはほぼ全てインストールに苦労しました。

 

例えば、以下のライブラリは要注意だと思います。

  • numpy
  • scikit-learn

 

そもそもARMにPythonのライブラリが対応しきれていないのが原因だったりしますが、それにしてもpipでライブラリインストールしようとしたときにエラーが出るのは結構心が折れますね。

 

numpyとscikit-learnについてはminiforgeを使うことでインストールできるようになりました。

github.com

ただし、私がよく使うライブラリのOptunaはどうやってもダメでした。miniforgeはcondaベースなのですが、Optunaってpipなんですよね。

 

私の環境ではpip経由でnumpyがインストールできなかったので、Optunaをpipでインストールしようとするとnumpy周りでエラーがでます。

 

私はそこをどうやっても回避できなかったので、もしM1 MacでOptuna使ってる方がいらっしゃったら是非インストール方法を教えてください。

 

せっかくの処理スピードもライブラリが対応していないのでは活かしきれないので、残念という他ないですかね…

 

追記(2021/4/21)

ようやくインストールの方法がわかりました。

miniforgeのconda環境でconda install scipyからのpip install optunaでいけました。

そしてoptunaの処理が速い...これは感動だ...(泣)

 

外部モニターが実質1枚しか使えない

これは地味に痛かったです。

 

Thunderbolt3の端子が2つしかないのもちょっと不便ではあったのですが、さらに追い討ちをかけるように、外部モニターは1枚しか公式サポートされていません。

 

Display Link対応のハブを使うことで2枚以上のモニターを接続できるようになるのですが、そのハブも結構な値段するんですよね...

 

今現在MacBookを使っていて、2枚以上のモニターを接続しているという方は、次のモデルまで待った方がよいと思います。

 

まとめ

今回はM1 Macを使ってみて思ったことをまとめてみました。

 

じゃあ、買ってよかったどうかどっちなんだと聞かれたら間違いなく買ってよかったですね。

 

ブレイクスルーというに相応しい性能があると日々感じることができるプロダクトってそうそうないように思うんですよね。

 

バッテリーも持つし、処理も速いし、気になるところはありますがそれを補って余るほどの良さがあると思います。

 

え、前回の記事から大分空いてたけど何してたんだ?ですって?

 

もちろん、お分かりの方もいらっしゃるでしょう。

 

いつも通り、ただのサボりです。

pre{ position: relative } #selectPre{ position: absolute; top: 0; right: 0; border: none; padding: 2px 3px; font-family: consolas }