生きることにこだわりを。魚住惇です。 今回はちょっと長くなりますが、どうかまたこだわりに、お付き合いください。
Mac mini 2018 + eGPUでzoom + Obsidianを快適にする
先日、ナレッジスタックというnewsletterの有料会員向けのセミナーが開催されていた時のこと。
ビデオ会議の代表的存在と言えば、zoom.usです。もしくはGoogleMeetですね。
僕は常々、zoomを使うときに不満を抱えていました。
どこかで語ったかもしれませんが、CPU使用率が異常なまでに上がってしまうんですよ。いにしえのIntel Macでは。
愛用しているメインマシン、Mac mini 2018は、Intel製CPUを搭載しています。しかも少し古めの第8世代。2023年1月には第13世代が発売されているので、5世代も前のCPUとなってしまいました。
2018年には最新のIntel CPUでしたが、それももう5年前の話。Intelは毎年新しい世代の CPUを発売しているので、型番や年式からいつの時代なのかが分かり易いんですが、当然買ってから長い間使えば使うほど、毎年のように古くなっていきます。
そして忘れもしません。2020年の秋に登場したApple Siliconと呼ばれるCPU、M1。爆熱爆速というこれまでのIntelの方向性とは違い、翻訳やテキスト認識処理に特化したNeural Engineや、動画をエンコード(変換)とデコード(再生)を担当するメディアエンジンを搭載して、更にiPhone・iPad時代に全振りし続けてきた省電力性能に重きを置いた設計をしていました。
ムーアの法則を追い求めるIntelに対して、Apple自身も爆速のCPUを作ったわけではないことをわかっているので、消費電力あたりの能力値などをPRしていたのも印象的でした。
Appleが見出したこの方向性というのが、僕はその時あまり理解してなかったんですよ。確かに性能は凄い。でも、別にファンがブン回ればIntel CPUだって負けてはいないし、まだ使えるし。そんな慌てて買い替える必要もない。(それにゆかさんも買い替えには絶対に賛成しない。)
なので、Mac mini 2018だってまだまだ現役だし、動画も4K解像度のH.264+AACのmp4が再生できるし、全然大丈夫だって思っていました。
しかし、最初の話に戻るんですが、zoomなどのビデオ会議を使うときだけは、嫌というほど不満を味わうことになりました。
Mac mini 2018でzoomを使っていると、テキスト入力さえリアルタイムに反応してくれなくなって、かなりストレスを感じることが増えたんです。
本当にね、あかんの。具体的にいうと、平常時ですらObsidianで直接タイピングしていると、自分の入力に対して、コンマ何秒か遅れる感覚が実はあります。これがSublime Textだと感じないので、多分Obsidianがちょっとだけ他のエディタよりも動作が重たいんだろうなって思っています。
それがもう、zoom中だと本当に遅くなります。入力して1秒くらい経たないと、入力した文字が画面に出てきません。
僕は親指シフトを使わずとも「指がしゃべる」という感覚を持っているくらいの速度でタイピングができると自負している訳ですが、その感覚で入力することが叶わなくなります。
これがもう、本当にストレスです。zoom中なんて、もう人の話を聞きながらメモを入力しまくりたいのに、それが自分の思う速度でできない。人の話を聞いているときこそ、内容をまとめながら聞いたり、途中で思いついた質問事項などをメモしておきたいのに、それが満足にできません。
それだけ、Intel CPUが古くなってしまったのでしょうか。それくらい残念な気持ちになりました。
なので今回は、そんな問題をどうやって解決していくことにしたのか。そんな話を書こうと思います。(ここまでが前振りです)
M1 Mac miniを買おうか考える
手っ取り早く問題を解決するならば、M1のMac miniを買えばいいじゃないか。
脊髄反射的にそう思いました。M1のmacを買えば全て解決。
まぁこれには購入費用がかかってしまうので、あくまで最終手段にはしておこうと思ったものの、まずは現状をお金で解決するとなると、いくら必要なのかを知ることは大事だなとも考えたのでした。
僕は中古のAppleデバイスを探すとき、まず、じゃんぱらという中古ショップを探します。
Apple Mac mini 512GB MGNT3J/A (M1・2020)の詳細|じゃんぱら
僕が使っているMac miniのストレージは512GBです。メモリは16GBから8GBになったとしても、そこはユニファイドメモリだってことで大丈夫かなとも思って、まずはストレージだけがアップグレードされているモデルを探しました。
うん、最安値で84000円か。高いな。ちょっとこれはお高い。
メモリ8GBでSSD256GBだと最安値で73000円くらいです。これならちょっと手が届きそう。ただし、1万円足すとストレージが2倍になる。悩ましい。
ちなみにM1のMacBook Airだと中古で10万円切るくらいです。つまりMac miniに2万5000円足すと、画面とキーボードとトラックパッドとバッテリーが付く。うん、これも悩ましい。
しかしMacBook Airを買ってしまったら、昔、五藤晴菜さんに相談したiPad Pro用のMagic Keyboardを買うのか、M1のMacBook Airを買うのか、どっちが正解なのか相談したはいいけど、後になって結局両方買ってしまったっていうことになりかねません。
ごりゅごCastの五藤晴菜さんと一緒に考える「iPad用キーボード」「M1 Mac」どちらにするか問題 144
これはちょっといただけない。「お前結局両方買ってんのかい」となってしまいます。
しかもどうせ買うならM2のMacBook Airでしょとか言い出してしまったら、もうM2のiPad Proが置いてきぼりになってしまいます。これも無駄遣いになるわけにはいかない。
まぁそんなわけで、堂々巡り。M2のMac miniが出るまでこの件は保留にしとこうと思うようになりました。
そこでeGPUの出番ですよ
M1のMac miniのちょうど裏面を眺めていると、気になるところがありました。
これを見ると、 Thunderbolt3/USB4端子が2つしかありません。僕は今のMac miniでデュアルディスプレイにしているし、マイクやらHHKBやらトラックボールやらとUSB機器もたくさん接続しているので、これでは絶対に足りない自信しかありません。
となると、M1 Mac miniを買うとなると、そのまま周辺機器が使いまわせず、またUSB-Cのハブを購入することになります。Ankerなどのメーカーでハブを揃えるとなると予想外の出費として痛すぎます。
これはちょっとなぁ・・・。
しかも、僕はIntel CPUに対してそこまで不満はなくて、どちらかと言えばグラフィック、GPUだけに不満があります。
ん?ということは?GPUだけを拡張すれば、今のMac miniでも十分使えるんじゃないのか?
そう、eGPUの出番です。そう思いつきました。M1のMac miniを買おうと思い立ってからeGPUに行き着くまでに、一晩かかりました。
eGPUというのは、Thunderbolt3でPCI-Expressを拡張して、なおかつそこにグラフィックボードを接続してしまおうという規格です。
僕はたまたまゲーミングPCが欲しいなと思っていたところにeGPUという存在を知り、Mac miniでBootCampを利用してゲームをしたいと考えていました。
その時に一緒にRadeon RX5700XTも購入しました。
eGPUとRADEON RX5700XTでMac mini 2018をゲーミングPC化した – さおとめらいふ
このeGPUボックスは結局ゲーミングPCを友人に組んでもらったことで不要となり、その友人に貸していました。購入したグラボはゲーミングPCに組み込んで使っていました。
そこで、その友人がeGPUボックスをもう使っていないという事実を教えてもらい、急遽返してもらうようお願いしました。
早速ゲーミングPCを解体してRadeon RX5700XTを取り出してeGPUボックスに入れてMac miniに接続して、使ってみることにしました。
eGPUの設定に難航、そしてまさかの挙動
グラボ(グラフィックボードの略)の認識は思いの外うまくいきました。接続するだけ。あと内蔵グラフィックを使わせないために、デュアルディスプレイのケーブルを2本ともeGPUに接続しました。
この状態でzoomを起動して、GPUの使用率を見てみることにしました。zoomは単体でも良かったんですが、せっかくなのでお隣にあるM2のiPad Proと接続しました。
その時のMac miniのアクティビティモニタの様子が上の画像です。
CPUばっかり使いまくっているのと、GPUの欄は内蔵グラフィックの使用率ばかりが上がっていて、eGPUの恩恵を全く受けていない様子でした。
なんでじゃい。しかもzoomのバーチャル背景を有効にすると、これもCPUを使って演算していてファンがぶん回りました。Mac miniの。これじゃ意味ないじゃないか。
プロセスを見ていると、VTDecoderXPCServiceというサービスがCPUを食っていました。おい待てこれってどう見ても動画をデコードしているやつ。
こいつの処理をeGPUにさせたいんじゃ!
そう慌てていると、eGPUボックスをわざわざ自宅まで届けてくれた友人が、この様子を見かねた様子で「eGPUのドキュメントは読んだのか」と声をかけてくれました。
そうか、Apple公式のドキュメントに書いてある内容をしっかり読まなければ。
Mac で外付けのグラフィックプロセッサを使う - Apple サポート (日本)
そう思って読み漁ってみると、アプリの情報の項目に「外部GPUを優先」というオプションがあるのを見つけました。
よし、これでeGPUを優先して使ってくれるに違いない。
と思ったら、全然ダメじゃんか。なんでじゃ。
ちなみにzoomを終了してから、同じくVTDecoderXPCServiceを使うOBS Studioを起動してみると、
eGPUを使ってくれました!なんでじゃ!!
しかしこの時、zoomを使っていても、OBSを使っていても、実はObsidianが快適に使えていました。
なんで?zoomで内蔵GPUを使ったままでも、OBSでeGPUを使っても、これまでと違ってObsidianが普通に使えている。なんでなの?
そう思ってもう一度アクティビティモニタの項目を見ていると、なんとObsidian Helper(GPU)というプロセスがeGPUを使っているではありませんか!
つまりこういうことです。zoomはきっと、eGPUに最適化されていません。zoomが選んだ道はIntel Macへの対応ではなくて、Apple Siliconへの最適化でした。そりゃそうですよね。今後のことを考えたら使うリソースの先としては正解です。
OBSはeGPUに対応していました。だから恩恵を受けることができていました。
それに加えて、まさかのObsidianがeGPUを使ってくれていたわけです。ObsidianのエンジンはElectron。ChromiumレンダリングエンジンとNode.jsで動いています。ChromiumレンダリングエンジンがGoogleChromeと同じように、ハードウェアエンコードとしてeGPUを使ってくれていた。そう考えると説明がつきます。
なんということでしょう。Mac miniの動作をこれでもかと思うほど重たくしていたzoomは、非力な内蔵GPUを一生懸命使うことしかできません。しかしその代わりに、Obsidianが余裕のあるeGPUをふんだんに活用しているだなんて。
これはもう、ゲーミングPCでObsidianだけを使っているようなもんです。あぁ勿体無い。
でもまぁ、これでzoomを使いながらもObsidianを余裕を持って使える状態になりました。なんかかなり勿体無い感じがしますが、Mac mini 2018を延命して使うことができるようになりました。
余談ですが、これならMac mini上でMinecraftもやれそうな気もします。
本音を言うと、zoomがeGPUに最適化してくれたらもう、言うことないんですけどね。Intel Macのためにリソースを割くなんてことは、まぁないでしょう。
zoom以外のアプリは結構eGPUを使ってくれるので、本当に例外なのはzoomだけです。Google MeetはChrome上で動くので、きっとeGPUを使ってくれるでしょうし。
問題は解決したと言えばしたんですが、なんともまぁ煮え切らない結果となりました。
あぁ早くApple SiliconのMac miniに買い替えたい。でもzoomのためだけにお金を使うのも、ちょっと違う気がする。現状Mac miniは壊れていません。ひとまずeGPUで延命しつつ、Mac miniを使い倒す方向で落ち着きました。
あぁ、そうそう。eGPUのためにRadeon RX5700XTを取り外した、抜け殻となったゲーミングPCはそのあとどうなったかというと、
その友人が、Radeon 7 3700XとRX 6700 XT 12GB GDDR6 OCモデルを置いて行ってくれました。目ん玉飛び出るほどの機材です。なんでこれだけの部品を今使っていないのか不思議なほどですが、これもありがたく使わせてもらうことにします。
本当にありがとうね。
今回のnewsletterは以上となります。 「いいね」を押していただけるとうれしいです。M1チップ搭載のMacを安く譲っていただける方がいらっしゃいましたら、「#こだわりらいふ」をつけたツイートや、Substack内のコメントまでお願いします。
もうすぐM2 maxがでたらM1 MacBook Airを手放すつもりなので、いかがですか?16GBメモリ、1TB SSDに増設済みです。