レビュー

2台のMac StudioをThunderbolt 5で連結! 計128GBメモリ環境と分散推論「exo」でLLMを爆速化してみた(1/4 ページ)

複数デバイスを束ねてLLMを動かす「exo」を用い、Mac Studio 2台によるクラスタを構築。macOS Tahoeで解禁されたRDMAとTensor並列を組み合わせ、120B級モデルの生成速度を1.36倍に向上させた検証結果と導入手順を紹介する。

 「exo」というソフトウェアを知っているだろうか。複数のデバイスをネットワークで接続し、まるで1台の大きなマシンのように協調させてLLM(大規模言語モデル)を動かせる、オープンソースのフレームワークだ。

 通常、LLMを動かすためには膨大なメモリを搭載した高価なサーバが必要だ。しかしexoを使うと、手元にある複数のデバイスを束ねて、単体では動かせなかった大きなモデルを推論できるようになる。

 exoはテンソル並列処理という方式を採用しており、モデルの重みを複数のノードに分散して処理する特徴を持つ。対応するバックエンドはMLXやllama.cppなど複数あり、Apple Siliconを搭載したMacとの親和性が特に高いことが特徴だ。

advertisement

 さらに、OpenAI互換のAPIエンドポイントも備えているため、既存のツールやアプリケーションからもそのままクラスタを利用できるという大きなメリットがある。

 今回は16CPU、40GPUのM4 Maxに64GBユニファイドメモリを搭載した「Mac Studio」2台を使った環境を構築してみたので、その一部始終を紹介しよう。


圧巻のMac Studio、2台構成

なぜMac Studioを2台使ってクラスタを組むのか

 Mac Studioのクラスタ構成に興味を持ったきっかけは2つある。

 1つ目は、以前使っていたLLMサーバのスペックだ。Mac Studioに移行する前は、128GBのメモリを搭載したサーバでローカルLLMを動かしていた。Mac Studio 1台のユニファイドメモリは64GBだが、これを2台束ねれば合計128GBのメモリプールを構築でき、以前のサーバと同等のモデルサイズを動かせる環境を実現できると考えたためだ。

 2つ目は、Thunderbolt 5ブリッジを使った「RDMA」(Remote Direct Memory Access)のサポートだ。CPUを介さずに直接メモリ間でデータをやりとりできる技術で、TCP/IPベースの通信と比べてレイテンシが大幅に下がり、帯域をより効率的に利用できる仕組みだ。

 もともとM4チップを搭載した「Mac mini」が発売された当初、exoとThunderbolt 4を組み合わせれば小さなLLMクラスタを構成できると考えていたものの、TCP/IPでのクラスタ構成はノード間の通信がボトルネックになると考えて二の足を踏んでいた。

 そんな中、macOS Tahoe 26.3から、Thunderbolt接続でRDMAを有効化できるようになった。ユニファイドメモリの広い帯域幅を生かしつつ、Thunderbolt 4より高速なThunderbolt 5を搭載したMac Studioであれば、十分なパフォーマンスを発揮すると考え、macOS Tahoe 26.3が出た翌日にApple 丸の内で同じ構成のMac Studioをもう1台購入するに至った。

       | 次のページへ

Copyright © ITmedia, Inc. All Rights Reserved.