MacBook Pro に GeForce GTX970 をThunderboltで外付けしてVR向けにしてみた

はじめに

普段はMacBook(Air/Pro)の携帯性を活かせて、本気の開発とか、デモとか勉強会とかするときは外付けでブースターつけるとGPUがめっちゃ速いとしたら、いいなと思っていました。どうせなら、Oculus Rift 製品版(CV1)の推奨性能を満たすところまでいけると良いですよね!ということで、MacBook Pro Retina 13インチ (Early 2015) にthunderbolt外付けで Geforce GTX970 を接続するお話です。ちなみに、こういう外部GPUというのは、海外では 「eGPU」 (external GPU)というカテゴリのようです。

 

結果、どんな感じになるかというとこんな感じです ↓

 

f:id:hammm:20151118012822p:plain

MacBook ProのThunderbolt2ポート経由で外部GPUをつなげました(PCI-E x4接続)。GTX970のパワーで3Dゲームがサクサク動きます。また、特に設定せずとも実質Optimus (NVIDIA GPUIntel GPU経由でノートPC画面に映像を出す)になっており、MacBook Proの液晶画面で3Dゲームをスムーズにプレイすることもできます。(一定fps落ちるらしいです)

 

 ただし、Oculus RiftがOptimusと相性が悪いために、対策として、GTX970のDisplayPortに別途プロジェクターをつなげてそれをプライマリモニタとして、GTX970のHDMIポートにつないだOculusに映像を出すということをしています。(きゅーこん氏の情報を参考にさせて頂きました)

また、現状ではThunderboltケーブルを刺したまま再起動すると固まるので、必ずシャットダウンで電源を落としてから特定のタイミングで挿し直す、ということが必要になります。ちょっと面倒ではあります。

 

ちなみに、現状のThunderbolt2では、今回のAkitioを含め、外部GPUサポートをうたっているPCI-Eインタフェーボックスは存在しないのですが、Thunderbolt3では対応するという噂が出ていますので、もしかするとこのような構成のPCが各社から出てくる日は近いのかもしれません。

  

以下、実現方法について書いていきます。

 

なお、安全という観点からはだいぶよろしくないことをやっています!完全無保証です!真似をする場合は自己責任でお願いします!

もし実施する場合は、電気に関する一定の知識と、基本、ほったらかしの状況では使わないといった、慎重さが必要になりますし、火事になったりする可能性もないとはいえないので、どうかご理解ください!

 

・・・と注意をした上でですが、部品を揃えれば、危険な中では「比較的」安全にコトを行う環境ができつつあります。

 

もし万が一、やってみようという方は、準備の前に・・・Windows環境でやろうとしているなら、

今すぐ「復元ポイント作成」をやっておきましょう!後できっと感謝することになると思います!

 

概要

全体像を図解しておきます。

f:id:hammm:20151117210301p:plain 

参考情報

以下の情報を主に参考にしました。

 

・eGPU(外部GPU)全般について:tech-infernoフォーラム(英語)

 ・ACアダプタ DA-2を利用した簡潔なケーブリングについて

http://forum.techinferno.com/enclosures-adapters/9426-220w-dell-da-2-ac-adapter-discussion.html  (※2番目にある w4vz さんの記事が今回の元ネタ)

  ・今回と同構成 (MacBookPro - Akitio Thunder2 PCI-E Box) (英語)

http://forum.techinferno.com/implementation-guides-apple/10614-2015-13-macbook-pro-gtx970%4016gbps-tb2-akitio-thunder2-win8-1-osx10-10-%5Btranj10%5D.html

 ・Mac系ハードでのまとめ情報(英語)

http://forum.techinferno.com/apple-egpu-discussion/10061-basic-egpu-hardware-guide-macs.html

 

・OptimusでのOculus Rift DK2対応について:きゅーこん氏

Devel/OculusRift/OptimusノートでのDirectモード - cubic9.com

 

続きを読む