MacBook Pro(14インチ, M1 Max 2021)を購入しました!

こんにちはー、ニアです。

先日に私は、MacBook Pro(14インチ, M1 Max 2021)を購入しました!

昨年、検証のためにMacBook Air(M1 2020)を購入し、スキマ時間に使用している開発ツールやミドルウェアの動作確認をしていたのですが、私が使っているものがほぼ動作することを確認できたので、Appleの10月のイベント「Unleashed」の後、すぐに予約しようと決めていました。

1. ニアは、何をカスタマイズしたの?

スペックは今使っているものと同じにしつつ、持ち運びしやすい14インチの方を選択しました。

先月までは在宅ワークでMacBook Pro(16インチ, 2019)をメインに使っていましたが、最近オフィスに出社したり、コワーキングスペースで作業する日が増えたので、少しでも荷物を軽くしたかったのです。

Nia-TN-SDfs-surprised.png
ここ最近、16インチのMacBook Proを持って出社すると、翌日は肩こりになるんだ(汗)
MacBook Pro(14インチ, M1 Max 2021)
(今回購入した方)
MacBook Pro(16インチ, 2019)
(今まで使用していた方)
CPUCore-i9 9980HK(8コア16スレッド)
GPURadeon Pro 5500M(8GB)
SoCApple M1 Max(CPU10コア、GPU32コア)
メモリ64GB(ユニファイド)64GB
SSD2TB2TB
入出力ポートMagSafe 3、Thunderbolt 4×3、HDMI端子、SDカードスロット、ヘットホン端子Thunderbolt 3×4、ヘットホン端子
重量1.6kg2kg

メモリは32GBか64GBで迷いましたが、Apple SiliconのGPUはユニファイドメモリをCPUなどと共用するので、私は念には念を入れて64GBの方にしました。
(多分32GBでもいけそうだけど、新型MacBook Proはメモリの換装が出来ないのが悩みどころです)

重量はMacBook Pro(16インチ, 2019)の時より400g軽くなるので、これで少しは肩が楽になればいいな。
(ちなみにMacBook Pro(16インチ, M1 Max 2021)は2.2kg。流石にこれは重すぎですw)

あと、SDカードスロットやHDMI端子が付いたのは嬉しいです。特に前者は旅行の時にはデジカメを使うので、SDカードを直接入れて写真を取り込めますね。

新型MacBook Proでは充電端子としてMagSafe 3が新たに搭載されたのですが、Thunderbolt 4経由でも充電できるので、私は家ではUSB-Cドッキングステーションを使い(WIndowsのノートPCと共用)し、外ではMagSafeケーブルを使っていこうと思います。

お値段は、AppleCare+込みで50万円ほどでした。奮発した分、仕事で発揮しないとね!

2. 早速開封して使ってみる

注文してから1週間ちょっとでMacBook Pro(14インチ, M1 Max 2021)が届きました。早速開封っと。

Nia-TN-SDfs-normal2.png
色はいつものスペースグレイです。
外箱

今まで使っていたMacBook Pro(2017〜2019)と比べると、全体的に角張っています。MacBook Pro モデルの一覧ページにある歴代のMacBook Proと見比べると、Early 2008からディスプレイ部分を薄くしたようなフォルムに見えますな。

箱を開けた時の様子

キーボードはTouchBarが廃止され、物理のファンクションキーになりました(しかも縦幅が大きいので、押しやすくなった気がします)。

Nia-TN-SDfs-sad.png
私にとってはTouchBarは便利でよく使っていたので、ちょっと寂しい。。。
ただ、TouchBarはバグった時にファンクションキーが打てなくなってしまうので、物理キーになったのはその点で安心かな。
キーボード

新型MacBook ProのディスプレイはバックライトがミニLEDになったおかげか、MacBook Air(M1 2020)やMacBook Pro(16インチ, 2019)のディスプレイと比べると、黒色がより引き締まって見えます。

気になるノッチですが、私は黒背景ベースの壁紙を設定して、ノッチが壁紙に溶け込むように工夫しています。

ディスプレイ(画面はインストール直後)
ノッチ周りの様子

ちなみにディスプレイに貼っている保護シートは、「ミヤビックス OverLay Plus(反射防止タイプ)」です。

MacBook Pro(14インチ, M1 Max 2021)を入れるケースは、「MOFTのノートパソコン用キャリーケース」にしました(ケースとスタンドの1台2役!)。サイズは13.3インチ用ですが、新型MacBook Proのディスプレイのベゼルがかなり狭く、本体の縦横サイズがコンパクトなので、14インチでも普通に入れられました。

3. 気になる性能はどれくらい?

ベンチマークでいつも使っているGeekbench 5とCinebench R23で測定し、今まで使っていたMacBook Pro/Airと比較してみました。(MacBook Pro(13インチ, 2017)は故障のため除外)

Geekbench 5

MacBook Pro
(14インチ, M1 Max 2021)
MacBook Air
(M1 2020)
MacBook Pro
(16インチ, 2019)
Core-i9 9980HK)
MacBook Pro
(15インチ, 2018)
Core-i9 8950HK)
CPU(シングルコア)1790137511601079
CPU(マルチコア)12790757572465428
GPU(Metal)68262189604882(iGPU)/
26825(dGPU)
4796(iGPU)/
17600(dGPU)
GPU(OpenCL)62620169315435(iGPU)/
28170(dGPU)
5009(iGPU)/
17423(dGPU)

Cinebench R23

MacBook Pro
(14インチ, M1 Max 2021)
MacBook Air
(M1 2020)
MacBook Pro
(16インチ, 2019)
MacBook Pro
(15インチ, 2018)
CPU(シングルコア)1535149311111136
CPU(マルチコア)12375689390685888

Aplle M1 MaxのCPU・GPU性能はともに、MacBook ProのCore-i9やRadeonを大幅に上回っていました。特にGeekbench 5のGPUのスコアがぶっ飛んでいますw

MacBook Pro(15インチ, 2018 / 16インチ, 2019)も、購入当初はモンスターマシンと呼ばれるほどだったのに、それをあっさり超えてしまうM1 Maxのモンスターっぷりでした。

Nia-TN-SDfs-normal2.png
Apple M1もCore-i9と十分に対抗できるほどのモンスターっぷりなので、購入する時は使っているアプリや環境、予算などとよく検討して、自分にとってベストなものにしましょ。

3.1. 冷却ファンが回る機会があまりなかった件

MacBook Pro(14インチ、M1 Max 2021)をしばらく使ってみて思ったのは、冷却ファンが回る機会があまりなかったことです。

CinebenchのCPU(マルチコア)測定やnodenvによるNode.jsのコンパイルでCPUをフルに使う時はさすがに作動しましたが、それ以外(例えば、Dockerでコンテナで立ち上げたり、Node.jsアプリをビルドしたり、JetBrainsのIDEやXcodeなどの開発環境をセットアップしたりなど)では、特にファンは回らなかったです。本体も熱くなりにくかったです。

ちなみにMacBook Pro(15インチ, 2018 / 16インチ, 2019)では、冷却ファンが回るのは日常茶飯事で、TouchBarよりの上の部分がとても熱かったです(汗)。

4. セットアップ中に気づいたこと

ここでは、セットアップ中に気づいたことのメモを書いておきます。

4.1. ターミナルからNode.js 12や14を使う時は、必ずRosetta 2を使う

Node.js 12や14はApple SiliconのMacで利用できますが、Apple Siliconにネイティブ対応ではないので、インストールやNode.jsアプリのビルドをする時は、Rosetta 2(以降、Rosetta)を使う必要があります。

あらかじめRosettaをインストールし、ターミナルからarchコマンドでzshなどのシェルをRosettaを使ってログインして、Node.jsをインストールします。

# あらかじめ、Rosettaをインストールしておきます。

# uname -mで、アーキテクチャーを確認します。
# arm64ならApple Siliconのネイティブで、x86_64ならRosettaで動作しています。
uname -m
arm64

# Rosettaを使ってzshにログインします。
arch --x86_64 /bin/zsh

# uname -mで「x86_64」が出力されればOK
uname -m
x86_64

# あとはnodenvで普通にNode.js 12をインストールします。(nodenv自体はRosetta不要でインストールできます)
nodenv install 12.16.3

# archコマンドに実行したいコマンドを渡して、そのコマンドをRosettaで実行するということもできます。
arch --x86_64 nodenv install 12.16.3

もしくは、ターミナルを「Rosettaを使用して開く」に設定するのも有効です。ただ私はそこでアーキテクチャーをいちいち切り替えるのが煩わしいので、必要に応じてarchコマンドで切り替えるようにしています。

ちなみに、RosettaなしでNode.js 12をコンパイルすることもできましたが、npmのインストールやNode.jsアプリのビルドが絶望的に遅すぎて使い物にならなかったです(Rosettaを使って実行すれば普通に高速で動作します)。

Nia-TN-SDfs-panic.png
試しにRosettaなしで、Node.js 12のアプリにてnpmインストールしたら、1時間くらいかかりました・・・(汗)
(そのアプリではRosettaを使ったり、Node.js 16にアップグレードしたりすれば1分足らずでnpmインストールが完了したので、Apple Siliconネイティブに非対応のNode.jsは必ずRosettaを使いましょ)

Node.js 15からはApple Siliconにネイティブ対応しています(LTSバージョンではNode.js 16から対応しています)。

「Node.js 16」が公開 ~Apple Silicon向けのプリビルドバイナリを初めて提供 – 窓の杜

4.2. x86_64(arm64)用Dockerイメージを利用するには、platformオプションを明示的に指定する

Docker自体はApple SiliconのMacに対応しているのですが、イメージによってはarm64(arm64v8)用のものがないので、x86_64(amd64)用のイメージを利用するために、platformオプションでlinux/amd64」と明示的に指定する必要があります。

# x86_64(amd64)用のイメージをpull
docker pull --platform linux/amd64 ${IMAGE}

# x86_64(amd64)用のイメージからコンテナを実行
docker run -it --rm --platform linux/amd64 ${IMAGE} ${CMD}
# Dockerfile
FROM --platform=linux/amd64 ${IMAGE}
...
# docker-compose.yml
version: "3"
services:
  hoge:
    image: ${IMAGE}
    platform: linux/amd64
    ...
Nia-TN-SDfs-sweet.png
アーキテクチャー違いで、同じイメージの同じタグをpullすると、先にpullした方のイメージのタグが「<none>」になってしまうのが悩みどころです。

ubuntuなど公式のイメージであれば「アーキテクチャー/イメージ名」と、アーキテクチャーのプレフィックスを付けてpullする手があります。

Docker Official Images – GitHub

5. おわりに

セットアップと既存のプロジェクトのApple Silicon対応化をほとんど終えて、MacBook Pro(14インチ, M1 Max 2021)をメインのMacに、MacBook Pro(16インチ, 2019)を予備のMacに世代交代しました。

MacBook Air(M1 2020)は一旦初期化して、別の用途に使おうかなと思います。(せっかくのAirかつゴールドなので、サブ機としてとっておきたいです)

今回のMacBook Proは、今シーズンで購入したiPhone 13 Pro、iPad mini 6、Apple Watch 7とともに、初めてAppleストアにて予約注文(という名の争奪戦に参加)しました。特にiPhoneとApple Watchは激しかったですな(開始からわずか数分で発売日到着分が完売するほど)。

MacBook Proの時はAppleストアのサイトになかなか繋がりにくく、バッグに追加ボタンを押しすぎて、バッグ内にMacBook Proを4台入れてしまうハプニングがありましたw(その後サイトが安定してきた時に、バッグ内を整理して、必要な分だけ注文できました)

新しいMacBook Proとその仲間達をこれからたくさん使っていきますぞ!

Nia-TN-SDfs-normal1.png
あとはこれを機に、オフィスへの出勤やノマドでの外出時のバッグ中身を整理したいな

(END)

タイトルとURLをコピーしました