2016年7月10日日曜日

第21回 OsiriXを快適に利用するためのハードウェア

どうやったらOsiriXをさくさく・ぬるぬる動かせるでしょうか?

今回は、医用画像処理/解析アプリケーションであるOsiriXを快適に利用するための要点として、ハードウェアを中心にご紹介いたします。

OsiriXだけでなくコンピュータで動かすソフトウェアはすべて、その性能を発揮するための適切なハードウェアが必要です。まずは、コンピュータの構成から見ていきましょう。

コンピュータの構成部品


話をわかりやすくするために、HPのワークステーション(Z840)を見てみます。


一般的には、以下のようなものが主要な構成部品となります。

  • マザーボード
  • CPU・GPU
  • グラフィックボード
  • データ保存ドライブ
  • RAM(メモリ)
  • その他、通信機能を拡張するPCIボードなど

一応、Macの場合を考える参考として、一世代前のMacProの構成も載せさせていただきます。


それぞれの部品についての解説は割愛いたします。こちらのブログなども分かりやすく解説されています(参考リンク:http://korobehashire.blog86.fc2.com/blog-entry-459.html)。

これらの構成部品すべて、それぞれが重要な役割を持っていますが、ここでは、OsiriXを使う上でこの中でも特に意識しておきたいものをピックアップして説明します。

メモリ(RAM)に余裕を


パソコンを買うときに"RAM8GB"などと書かれていると思います。このRAM(らむ:ランダムアクセスメモリ)というのがメモリです。物理メモリなどとも呼ばれます。

メモリの種類はたくさんあり、システムによってその使われ方は様々ですが、ここでは一般的な使われ方だけを対象に話を進めます。

単純に説明すると、RAMが大きいと一度にたくさんのデータを開いたり(操作したり)、複数のアプリケーションを起動させたりすることができます。ただ、大きければ良いというものではなく、後述のCPUやGPUの性能に合わせたメモリ容量を選択する必要があります。

32bitで動作するPCでは、RAMは3.3GBまでしかCPUが使えないので、4GBが限界です。
最近では、64bitで動作するPCが普及していることもあり、家庭用PCでもRAMが8GBや16GB、それ以上のものなど、ハイグレードになってきています。

話を戻して、OsiriXを使うときはRAMはどれくらいがいいのかということですが、OsiriXを動作させるPCは、3D処理や1000枚を超えるシリーズ画像の表示なども行うため、それなりのRAMが必要です。推奨は4GB以上です。

例えば、4つのCTシリーズ(1シリーズ1000枚)を4つのタイルで同時に表示させている状態を考えてみましょう。

512(縦ピクセル数)×512(横ピクセル数)×1Byte(1ピクセルあたり8bitグレースケール)×4タイル×1000枚=1048576000≒1GB

つまり、この画像を表示するために必要なメモリは1GBということになります。
これを例えば、4GB(実質3.3GB)メモリのマシンで実行したら、画像を表示しているだけで約30%のメモリを食っていることになります。

Macはバーチャルメモリ機能を持っているため、物理メモリで心もとないような処理を行う際には、データ保存ドライブの容量を仮想メモリとして処理することもできますが、処理は遅くなります。

RAMには余裕を持たせておきましょう。

データ保存ドライブはSSDを


これまでは、HDD(ハードディスクドライブ)が主流でした。しかし、HDDはそのなの通りデータの書き込みや読み出しでディスクを使うために、処理速度がその回転数などに依存していました。また、回転をさせるものなので、どうしても経年劣化で壊れやすいという欠点もあります。

このようなHDDの限界を打開してくれたのが、SSD(ソリッドステートドライブ)です。
SSDはディスクの代わりに半導体素子を使っています。ディスクの読み書きの時間はなく、データ処理は高速化され、その構造も衝撃に強いものになっています。

MacマシンをHDDからSSDにすると、予想以上にサクサク動くようになります。
どれくらい早くなるかというと、データのストレージでは読み込みと書き込み共に4倍以上早くなったという例も報告されています。(参考リンク:http://www.ishiharaken.com/entry/2014/10/18/174654)

OsiriXを使うときは、SSD搭載のマシンがオススメです。まだまだ価格は安くはないのですが、廉価版としてFusionドライブというHDDとSSDをミックスさせた規格もあります。

今後はSSDを取り入れていきましょう。

CPU(GPU)プロセッサーはパワー重視で


CPUのパワーは動作周波数やグラフィックの性能が高いほどパワーが上がります。(消費電力も上がることがありますが、、)

また、最近のCPUは、GPUとワンチップになっています。CPUの構成内容に「グラフィックス」という項目があれば、ワンチップモデルです。CPUが持っているグラフィックスが良い性能であれば、わざわざ追加でグラフィックボードなどを実装する必要はありません。便利になりました。

Macの場合は、今のところIntelプロセッサですので、i5やi7が一般的に利用されています。Xeonなど、よりハイエンドなCPUもありますが、一般的な画像処理には、8コアスレッドでオーバークロックできるi7を選ぶと良いと思います。グラフィックス(GPUの機能)も忘れずにチェックしましょう。

ワンチップのグラフィックはラップトップなどでも利用できて使い勝手が良いのですが、より高画質の映像の出力や映像化処理速度を求める場合はワークステーション型のPCにグラフィックボードを実装します(このブログの最初にご紹介したZ840のようなPCをワークステーションと言います)。このような工夫をすると、情報量の多いボリュームレンダリング操作でも3D画像を回転させたりする動作がぬるぬる動きます。

例えば、NVIDIAのハイエンドのQUADROシリーズはワークステーションに重宝されています。

Mac OSX Lion時代のXgrid(グリッド・コンピューティング技術)


MacOSX10.8よりも前は、Mac間でグリッド・コンピューティングが可能なXgridという技術がありました。グリッド・コンピューティングを使うメリットは、複数のPCを束にして、分散処理させることで処理速度を高められることです。この技術を使えば、個人の持っているPCの性能がチープでも、他のPCの機能を少しづつ間借りすることができるので、重い処理をするときは便利です。


しかし、Xgridは残念ながら10.8以降のOSX標準機能から削除されてしまっています。

OsiriXにはこのXgrid対応のプラグインがあったようですが、公開されていないようです。Xgridに似たグリッドコンピューティング技術は別の形で公開されているものもあるため、工夫すればOsiriXでもまた使えるかもしれませんね。

最後に


今回はOsiriXをどうやったらさくさく動かせるかについて、ハードウェアを中心にご紹介させていただきました。ご参考になれば幸いです。

Visionary Imaging Services, Inc.は、イメージング技術サポートを通じて、創薬研究や医療機器開発など、臨床試験や臨床研究サポートサービスを展開しています。医療機関や教育機関向けのOsiriXサポートも行っております。よろしくお願いいたします!