eGPU、外部拡張 GPU のはじまりとこれから
Razor Core など Windows で使用されていた外付けの GPU である eGPU が、Apple の High Sierra に際に正式対応した。
多分、Apple 製品でインプットデバイスやオーディオ機器以外で Mac を拡張する機能やデバイスを追加するのは久しぶりな感じ。
基本的には単体製品での使いやすさを求める Apple において eGPU の拡張機能という選択肢を取ったのは理由があると思われる。
現行の Mac は基本 GPU の変更ができないため、eGPU で拡張させる選択肢を提供するのもわかる。
また、筐体の小型化や軽量化をする際、GPU による発熱の排熱や消費電力を考えると、eGPU を使い外部にグラフィックボートを分けて、電源を別で供給するのは理にかなっている。
以下、eGPU を使用して機能が向上する例
- 3DCG で AMD ProRender などの GPU レンダリング
- 2DCG アプリのプレビュー
- 編集や動画のエンコード
- Unity や Unreal Engine などのゲームエンジンのエディター
- ゲームの高画質化などの体験向上
- Metal を使用した機械学習
eGPU の利用ケースとして、ラップトップに対して持ち運びしていない状態では GPU を強化するというケースがもっと適しているだろう。
それ以外でも、複数の GPU を繋ぎさらに加速させる利用ケースがある。
一般的な利用方法ではないので 2018 の MacBook Pro の Web ページでは紹介されていないが、WWDC 2018 では iMac Pro に eGPU を3台繋ぎ使用したデモを行なっていたり、動画編集アプリの Davinci Resolve の有料版では複数使用できるようになっている。
(一応、アプリ開発者向けだが Mojave の Metal 2 ではさらに複数の GPU を使用時の動作に対して施策を行なっている)
利点しかないようだが、問題がないわけではなく、Thunderbolt 3 で接続するため最大40 Gbpsのデータ転送しかできない。
現状でロジックボード (マザーボード) へ直接 GPU を繋ぐ PCI Express 3.0 x16 では 128 Gbps なので 1/3 しかでない。
Metal での演算性能の差はそこまで劇的ではないが、ゲームなどは PCI Express で接続した GPU の方が速さは顕著になる。
また、USB-C のケーブルも注意。使える種類もあるし、転送の問題点で長いケーブルが使えない。
あと、一応アプリ側の対応も必要。
現状、Adobe 系のアプリは Metal 2 には完全に最適化されていないので eGPU の効果を受けられない可能性がある。
(Adobe さんは iOS の Photoshop をつくる前に Metal をちゃんと対応して欲しい)
これからの eGPU
Thunderbolt 3 で繋いでいるため、転送スピードが問題になる。
もしかすると今後 Apple が新しい規格のコネクタをつくるかもしれない。
グラフィックボード側の改善を行う可能性もある。Radeon Pro SSG のようにストレージを持ち、前処理やリソースをあらかじめそこに置き処理を向上させる可能性もある。
8K ディスプレイは内部処理の問題でファンが付いている。ディスプレイ自体をコントロールする構造を考えると、今後、ディスプレイ自体に GPU を積んだり、グラフィックボードを装填できるようになるかもしれない。
ディスプレイへ繋ぐだけになり、ケーブルの取り回しが楽になるので、こういうプロダクトを Apple が出しそうではある。
また、ソフトウェア面から考えると、GPU は CPU からの命令を受けて処理をしており、そのため CPU や GPU で処理待ちが起こってしまうと全体の処理が遅くなってしまう。
Apple は Metal 2 で最適化しており、本来は全体の処理スピードを速めるために使用しているものだが、eGPU にも良い影響はあるだろう。
実現できるかわわからないが、いつか eGPU は無線で接続できるようになるのではないかと思っている。
ただ、次期 Wi-Fi の規格 IEEE 802.11ax でも最大転送速度が 9.6 Gbps なのでまだまだだけど。
(ちなみに docomo は 8K 映像配信をセルラー回線で実験成功しているので論理値ではThunderbolt 3 を大幅に超える)
自分が無線で eGPU を使用できるようにしてほしい理由は iOS や tvOS での使用できるようにして欲しいから。
もうそろそろスマートフォンなどの SoC のプロセッサをファンレスで動かし高めの処理をする場合、発熱が厳しくなると思われるので。