2015/03/14

PCをアップデートするよ!

 これでも8年前まではPCは自作していた。コンバット・フライトシミュレータとかやっていたから、今で言うところのゲーミングPCでも上のレベルの性能を追求した。CPUのオーバークロックは当たり前、CPUを買うにも製造番号(同じCPUでも製造工場によってオーバークロック耐性が違っていたりしたから)までチェックしていた。

 が、歳をとってゲームをしなくなり、また自作することによるコストメリットも薄れて来たあたりで「DELLで良いや」って感じになってしまった。今使っているPCはDELLのデスクトップで、7年間以上トラブルらしいトラブルもないまま現在に至っている。欠点と言えばハードディスクのデータ転送速度が元々低かったことで、メモリ増設である程度はカバーできたもののボトルネックであることには変わりない。ちなみになぜDELLかと言うと、「DELLは10年後もPCビジネスをやっている」という根拠無き直観に基づくもので、少なくとも8年は直観通りだったということだ。

 さて、車もそうだったのだが、それなりに高価な買い物は私の場合はほぼ間違いなく「半ば衝動買い」である。「半ば」という意味は、「欲しいっ!」という衝動には一切応じないが、「買うなら今だ!」と言う自分の直観(ゴーストの囁き?)には素直と言う事だ。まず「欲しいっ!」があって、それをいったん忘れて、然るべき時期が来れば虫の知らせのように「買うなら今だ!」という精神状態が突如やって来る。大抵は3~4年忘れている。

 今回のPC購入の決断も、と言うか決断すらしたのかも怪しい。会社で仕事中にふと「さぁ、PCを更新しよう」と思い、退勤後に自宅でDELLのサイトにアクセス、15分ほどで購入手続きを終えてしまった。今頃は太平洋上を日本に向かっている筈である。購入モデルの選定では、SSDドライブを使うかどうかと搭載メモリサイズの2点だけはちょっと悩んだが、それも本当にちょっとだけ。何故ちょっとかと言うと、事前に何も調べていないんだからそもそも判断基準が無い訳で、悩むこと自体が無理なのである。

 こんな調子なのだが、後で色々調べてみたらなかなか自分のニーズにマッチした構成になっているのがある意味恐ろしい。と言うか、私の人生は万事そういう感じなのである。ちなみに購入モデルは何かのキャンペーン対象品で(在庫処分扱いとは別。おそらくホビーユースには値段が高く、プロユースには性能が不足、かつDELL内のゲーミングPCブランドAlienwareとも構成が被るので売りにくい商品なのではないかと邪推)、CPU価格以上の値引きというオマケ付きだ。

 新規PCへの要求は、まず(ホビーユースの範疇で)長整数及び倍精度浮動小数点演算速度が高いCPUを搭載し、周辺機器がその足を引っ張らないことである。この要求は主に2つのニーズに対応している。

 一つめのニーズは、DAWであるCubase使用時の私へのストレスを下げること。

 使った事の無い人には分からないと思うけど、DAW起動中は常にCPUに一定以上の負荷がかかっている。音楽製作ツールであるDAWはリアルタイム音響生成・合成処理が基本で、アプリ操作者の操作に即座に反応する必要がある。リアルタイム処理という点ではソフトウェアシンセサイザーも同じで、それなりにつくり込んだデータをCubaseにロードしただけでCPU使用率60%は当たり前となる。CPU負荷を下げるため、これ以上は編集しない演奏データはフリーズ(演奏結果を音声データとしてディスクに書き出し、以降はリアルタイムの音声合成処理はせずに書き出した音声データを再生する)するのだが、ここでハードディスクのデータ転送速度が低いことが現行PCではボトルネックになっている。CPU使用率或いはディスクアクセス負荷の何れかが再生中に一瞬でも100%となると、ほぼ半々の確率でCubaseはクラッシュするし、場合によってはハードディスク上のデータまで破壊する。

 Cubase設計者も馬鹿ではないので、ハードディスクからの音声データ読み出しは巧みにスケジューリングされている。しかし、例えばPiapro Studio(ボーカロイド・エディターの一種)といったプラグインがどのタイミングでディスクからデータを読み出すかまではCubaseは知ることができない。故に、Piapro Studio上でボーカロイドデータにブレス音(息継ぎ音。ボイスバンクと呼ばれるボーカロイドの音声ライブラリには含まれず、独立した音声データファイルとして提供される)を追加した途端、クラッシュが頻発するといった状態になり得る。また、フリーズデータが大きくなれば、いずれリアルタイム処理に必要なデータ転送速度がハードディスクの最大データ転送速度を越えてしまうのも必然だ。

 上記のブレス音の件は原因究明まで時間がかかったが、色々と得るものもあった。代表的な知見は、「Piapro Studioではトラックにブレスが含まれている場合、トラックがミュート状態でもハードディスク上のブレス音データ読み出し処理をする」だ。Piapro Studioを使っていて、急にホストDAWのクラッシュが増えたり、再生時のノイズが増えたりした場合、Piapro Studio上でのブレスの使用を疑う価値がある。少なくともCubaseの場合は、ブレス音は音声ファイル自体をオーディオトラック上に置くか、Groove Agentなどのサンプラーのパッドに割り当てて使うか(大抵の場合、音声データはメモリ上にロードされる)の何れかにした方がクラッシュの防止という観点からは良い様だ。

 もう一つは、3DCGアプリであるLightwave3Dのレンダリング時間の短縮だ。レンダリングというのは、モデルを配置、照明やカメラを設定した後の「画を計算して得るプロセス」である。これはCPUの演算速度がダイレクトにモノを言う。

 現行PCのCPUはIntel Core2 Quad 2.66GHz(4スレッド=4並行処理)、現在太平洋上の新規PCのCPUはIntel Core i7 3.6GHz(4コア、8スレッド)だ。ネット上を調べると、同じデータを様々なPCやMacでレンダリングした際のレンダリング時間を互いに報告しあっている海外スレッドがあった。報告者の何人かはメールやメッセージをやり取りしたことのある人間で、カナダのVFX業界のフリーランサー達だ。さすがに飯のタネだけあって、彼らの使っているPC、と言うかWS(ワークステーション)の仕様は凄くて、8コアCPU×2=16コアはもはやお約束だ。しかも十中八九DELLだ。

 さて、フリーランサー達のWSでレンダリング時間40分のデータ、現行PCと購入PCで予測されるレンダリング時間はどうだったろうか?公平を期すためにOSはWindows 7 64-bit、メモリは16GB(新規PCのメモリ搭載量は32GB)のPCに絞って報告されているデータを集計してみた。結果は、現行PC相当の仕様のマシンで9時間~11時間30分、新規PC相当の仕様のマシンで2時間~2時間40分となった。ざっくり、1/3以下のレンダリング時間短縮が見込めるということだ。この差は実は大きい。

 もしあなたがサラリーマンなら、1日8時間程度は会社に居るだろう。現行PCで24時間かかるレンダリングを実施する場合、現行PCでは翌日にならないと結果が分からないが、新規PCなら出社時にレンダリングを開始すれば退社時に結果が確認できる。結果も見てミスを発見しても、細かなミスならば退社までにデータを手直しして再レンダリングしてしまえば、翌日の出社時には望む結果が得られているだろう。レンダリング時間の短縮はユーザーのワークフローの自由度向上に効くが、やはり1/2以下ぐらいまでは短縮されないと「劇的な効果」は得られない。

 Lightwave3Dではレンダリングに割り当てるスレッド数を制限できる。だからスレッド数は全スレッド数の半分しか割り当てないと言う様な使い方ができる。これまではレンダリングには全スレッドを割り当てていたのでレンダリング中はメールチェックぐらいしかできなかったが、新規PCではレンダリング時間を従来以下としつつ、レンダリングしながらも現行PCのフルパワー状態以上のCPUパワーが享受できると見る事ができよう。やっぱり両者の差は大きい。

 加えて、新規PCのCPUは十分な能力のグラフィックチップを内蔵している。

 3DCGのレンダリング処理は並列化処理に向いているので、やはり並列化処理に特化したグラフィックチップ(GPU)によるレンダリング演算はプロユースでは既に一般化しつつある。Lightwave3Dデータに対応したGPUレンダラーも既に存在し、レンダリング時間がCPUのみの場合の1/30以下という結果も得られている。つまり、Lightwave3Dが本格的にGPUレンダリングをサポートするようになれば、画面表示はCPUのグラフィックチップに任せ、「レンダリング演算専用のグラフィックカード(或いは一昔前のTeslaのような並列演算専用カード)」を挿す、なんて贅沢も可能となるんじゃないかなぁ…と思う。

 ちなみに新規PCのデリバリー予定は1週間後だ。来週の土日は新規PCの環境整備で潰れそうっすなぁ。

0 件のコメント:

コメントを投稿