MacBookPro M2MAXを買った
MacBookAir M1を愛用していた。
軽くて小さくて高性能。まさに相棒。好きだった。いまでも好きだけれども。
しかし、3年前にMBAを買った時には全く想定していない使い方をするようになった。なぜかWebサービスを作る日々に戻ってしまったのである。
これも、ChatGPTとか使うと恐ろしくはかどる。
SublimeTextちゃんを長年愛用してきたが、GPT4との接続性を考えるとVSCodeに変更せざるを得ない。ファイラー付いてた方が便利だし。
Webサービスに限らず、何らかのフロントエンドを含むものを作る時の大原則は、画面がでかいということである。
次の問題は、ストレージだった。
MBAのストレージは2TB。これでもとうじは積めるだけ積んでいた。
今もMBAは2TBが限界じゃないかな。
しかし2TBが埋まってしまった。
僕は職業柄、UberEats配達員のとき以外は講演とかをすることが多い。講演でなくても、クライアントに資料を作ったり過去の資料を見せたりすることが異様に多い。
ぼくの資料はものすごく画像や動画を使うので、ファイルサイズがいちいちでかい。大体500MB-3GBある。だから、あっという間にSSDが埋まってしまい、その大半はiCloudにある。
のだが、それを検索するのがまた面倒なのだ。
んで毎回「あのスライドどこだっけなあ」と片っ端からiCloud上のファイルをダウンロードしては探すという、およそAIを生業にしてる人とは思えない愚かな振る舞いをしてしまう。
だから買い換えるなら4TBは最低でも必要。
そしてヒープだ。
時代は変わる。NVIDIAのGPUが必須だったAIの世界も、今はそうとも言えなくなりつつある。
Raspberry Piで曲がりなりにも大規模言語モデルが動いてしまう時代だ。
必要なのはメモリである。
MBAも16GBのメモリがあった。
16GBのヒープは、M1チップにとってはほぼ無限と言っていい広さだった。
PhotoShopとIllustratorとDavinciとKeynoteを同時に起動して、なおかつInsta360の変換が走っていてもどうってことない。
MBAで「重い」処理だと感じたことはほとんどないのだが、買い換えるならヒープは32GBは欲しい。
そうすると必然的に選択肢はMBAでは無くなってしまう。
MacBookPro、それも16インチのやつを買うしかない。
正直、M2MAXにしたいわけではなかった。
AppleSiliconのAIアクセラレート対応というのはほとんど冗談のようなものである。セールストークというか、未だAppleSiliconのニューラルエンジンがまともに役立っているのを見たことがない。
しかし、最近の大規模言語モデルはついにAppleSiliconを使い始めた。
PyTorchも対応してる。信じられないくらい動作遅いけど。
多分NVIDIAしか持ってない特許的な何かがないと本当はAIとかちゃんと使えないんだろうなと思いつつ、インファレンスだけに特化すればギリギリ冗談で使う、くらいのことはできるのかもしれない。
それでもNVIDIAのGPUを使わないAIエンジニアなんていたら笑い物でしかないが、最近はSambaNovaという選択肢もある。NVIDIAのGPUはHBM3というめちゃくちゃ高価なメモリを使うのでなかなか容量が増やせず、それが大規模言語モデルを扱うファシリティの値段を爆上げしていた。例えば80GBのVRAMを持つH100は、475万円である。
普通の人の感覚なら、128GBのSDカードが数千円で買えるわけで、「高すぎだろう」という感覚になるのだろうが、GPUの世界では80GBは莫大な大容量だ。ところがSambaNovaは640GBくらい積んでるらしい。HBM3にしなかったからそれだけ積めたんだとか聞いた。640GBといえば80GBの8倍である。当然、一つのシステムにたくさんメモリがあった方が効率的なので、SambaNovaがGPTの推論に関してNVIDIAのGPUより10倍速いと主張するのは嘘ではなさそうだ。
ひょっとすると、OpenAIのGPT3.5-Turboが突然1/10の価格になったのも、裏側はSambaNovaにしただけかもしれない。10倍速いということはコストを1/10にできるということを意味するからだ。
GPT4はまだSambaNovaに載ってないだけかもしれない。それかSambaNovaでGPT4を動かしたら10倍遅くなったから10倍の価格なのか。
まあどのみちSambaNovaはラック単位でしかリースできないので、個人開発者にとってはあまり意味がないのだが、SambaNovaの1ユニットあたりの単価はNVIDIAのH100の数分の1だ。つまりファシリティも一気にプライスダウンするわけである。
NVIDIA一強時代の終焉が見えてきたわけだ。
こうなると、NVIDIA側もある程度は価格を下げざるを得なくなるので、いい感じに価格競争が起きてくれると我々ユーザーとしてはありがたい。
元々NVIDIAのGPUを鬼のように積んでいた富嶽がSambaNovaを採用したので、日本人にとってもSambaNovaが少しずつ身近になるだろう。ABCIにもSambaNovaをぜひ導入していただきたい。
NVIDIAからSambaNovaへの人材流出も起きてるらしい。
まあより早く、より面白いものに行くのは自然な流れだろう。
しかしAMDのROCmはいつまで経ってもCUDAに対抗できないなあ。まったく。
AppleSiliconも頑張って欲しいが、やっぱり不思議なほどCUDAの特許的な何かが効いているのだろう。ただ、特許はやがて切れる。
僕が大企業で学んだ大切なこととして、「本当に大切なものは特許を取るな」という原則だった。例えばコカコーラの作り方とか、ケンタッキーのレシピとかは特許化されていない。だからこそ100年続く商売ができているわけだ。
特許というのは一時的に権利を独占するためのもので、わずか20年の寿命しかない。
CUDAが出てから10年は経過しているし、プログラマブルシェーダーが登場してからは20年以上経っている。そろそろ根幹になる特許が切れてくる頃なので今後、AMDが巻き返したりAppleSiliconが使い物になるようになったり、SambaNovaやEsperant Technologyのような新興メーカーが盛り返してくる可能性は十分ある。
実際、すでにSambaNovaは性能を上回った上で低価格化に成功しているわけだし。
そもそも、ゲーム/CG用とAI用というのは用途が最初から違うので一つの設計で両方やろうというのがそもそも無理である。
皮肉にもこの構造は元々「CPUがあるのになぜGPUが必要なのか」という問いに対する答えと同じだ。
「違う処理をするからだ」としか言いようがない。
実のところ自然言語処理系は元々GPUは得意ではなかった。
研究者の方がGPUに合わせてアルゴリズムを作っていただけで、GPUが元々自然言語を扱うように作られていたわけではないのである。
それに少し不思議なのは、OpenGLのシェーダーでニューラルネットを動かすようなことも少し効率は落ちるがやってる人はVRChatにちらほらいて、それは決してNVIDIAのGPUだけで動くわけではないのだ。
SambaNovaのようなアーキテクチャに最適化したアルゴリズムも今後出てくるだろうし、そうなると昔のパソコンブームの時みたいに、いろんなメーカーが思い思いの変なアーキテクチャを突っ込んできて「俺はNEC派」「俺は富士通派」みたいな感じで群雄割拠するようになるとそれはそれで面白いが、これが非常に非効率的だということは歴史を通じてみんなが学んでいるのでどこかに収斂していくだろう。
その時、グラフィックスとAIの両採りをしたい方針を維持するか、それともいっそSambaNovaみたいにAIに全振りするかで棲み分けが起きることもかんがえられる。
興味深いのは、本来GPUがないとまったくダメだったはずのStableDiffusionまでもが、民主化によって少なくとも推論に関しては必ずしも高価なGPUを必要としなくなったことだ。
そして逆に、市場はどんどん、ヘビーなGPUを必要とするようなゲームに対して興味を失っている。
僕が1999年にポリゴン数競争に飽きていっそ何もない文字だけの携帯電話ゲームの世界に飛び込んだのと同じような感覚が、今、ChatGPTに夢中になり始めた人たちの間で起きている。
こうした技術の揺り戻しは、周期的に何度も起きる。
絵なんておまけでしょ。本質は何を伝えるかでしょ
という感覚になってきているのだ