読者です 読者をやめる 読者になる 読者になる

焼肉が食べたい

ただの日記です。技術的に学んだことも書こうと思っていますが、あくまで自分用メモです。

Surface Bookを買ってGPGPUで遊ぼうと思ったけど障壁が高かった話

はじめに

Surface BookNVIDIAGPUが付けられる!ということで、 仮想サーバ上でGPGPUを試してみよう!と思ったけど、挫折したときの記録です。

Surface Bookゲット

持ち歩き用にずっとMacBookAirを使ってたけど、今どきメモリ4GBとかで結構不便を感じることが多かったので、 思い切ってSurface Bookを買ってみた。

オプションでNVIDIAGPUが付けることができるということ。 ちなみに、Surface Bookでは、CPU/メモリ/ストレージ/バッテリといった主なモジュールは画面側についているけれど、GPUはキーボード側についているらしい。 こんな薄いのにcorei7だしメモリ16GB、SSD512GBでGPUつきとか、すごい!!!

ということで、ぽん!買ってしまった!高かった!!!

仮想サーバでGPU

とりあえずGPU使うならLinuxでしょ!と思った。 VirtualBoxでは、デフォルトでPCIパススルーの機能がないらしいので、使えない。 (Linux版のVirtualBoxでは、現在experimentalでextension packsがあるらしい。)Hyper-Vは仮想GPU対応しているということなので、 Hyper-V上にUbuntuたててみた。 よしよし、GPUが見えるか確認するぞ! どん!

$ lspci | grep -i nvidia
(何も表示されない。)

???

Hyper-Vの設定->物理GPUの設定を確認する。 Surface Bookには、

の2つのGPUを搭載している。

f:id:chie8842:20170322223730p:plain:w320

このうち、NVIDIA GeForce GPUを指定すると、 「このGPUはRemoteFXの最小要件を満たしていません」 とのこと。 Windows上で仮想CPUを使う場合、RemoteFXというのが必要らしい。 RemoteFXの詳しい説明は、以下参照。

マイクロソフト RemoteFXの説明.aspx)

Surface Bookに搭載されているGPUの調査

そもそも、GeForceのバージョンがかいてないけど、こいつは何者なのか。。。 DeviceManagerとか確認しても、バージョンがどこにも書いていなかった。。。

そこで、GPU-Zという、搭載されているGPUに関するスペックやステータスなどの情報が見られる軽量ツールをインストールしてみた。

尚、GPU-Zを使うには、OpenCLがないと、エラーが発生してGPU情報がうまく見られない。OpenCLインストール後は、OS再起動が必要となる。

GPU-Zで確認できたSurface BookGPU情報はこちら。

f:id:chie8842:20170322223724p:plain:w320

この情報を、NVIDIAのGeForceのスペックページNVIDIA モバイルグラフィックス・スペック性能比較|パソコン実験工房資料室で確認されるほかのGeForceシリーズのGPUのスペックと比べてみる。

  • コア Surface BookGPUの搭載コアは、GM108というものである。これは、他のNVIDIAシリーズのGPUで言うと、 GeForce 940M, 930M, 845M1, 840M, 830Mで採用されているらしい。 現在のノートPC用の最新はGeForce 980なので、決して新しくはなさそうである。
  • メモリ ノートPC用のGeForce GTXシリーズでは、DDR3GDDR5の2種類のメモリが利用されている。GPU-Zで確認されたSurface BookGPUの搭載メモリは、高性能のGDDR5の方だった。 メモリ容量は、多くのGeForce900M/800Mシリーズが2GB以上であるのに対し、Surface BookGPUの搭載メモリは1024MBと小さい。

分かったこと

  • GPU用のメモリが1G程度しかなく、GPGPUを行うにはちょっとつらそう。
  • Surface Bookには、GeForce GPUが搭載されているけれど、仮想GPUは使えない。
  • Surface Book搭載のGPUは、NVIDIA公式ページで確認されるどのバージョンのGeForceシリーズのGPUとも一致しない。 スペック的には、GeForce 940M, 930M, 845M, 840M, 830Mが近い。決して新しくない。

うーん、GPGPU目当てでSurfaceを買うのはやめた方がよかったかも。 Thinkpad T470pがほしいのだけど、日本で発売されないかなぁーーー。


  1. GeForce 845MはNVIDIAの公式ページには載っていない。