最近、13~10年前にYouTubeに上げた3DCGI動画のリメイクに手を染めた。ざっくり10年でのCPUパワーの増加は10倍強で、20倍には届かないというのが実感だ。ただ、3DCGIで最も時間のかかるレンダリングは並列計算向きで、アプリ側もマルチコア/スレッドCPUの特性を最大限利用するように発展してきている。加えて、メモリやストレージの性能向上もレンダリング時間短縮に明らかに寄与しているよう見える。結果、CPUによるレンダリング速度は、20倍をやや超える程度までは向上したように思う。
20倍強というと微妙な感じもする人もいるだろう。だが一般的なサラリーマンの1ヵ月あたりの出勤日が約22日であることを考えると、1日の出勤だけで給料一ヵ月分貰えるような「比率」ではある。3週間かかっていたレンダリングが1日で終わる。丸1日かかっていたレンダリングが1時間ちょっとで終わる。特に前者の場合は、私なら以前は絶対やろうとしない条件だ。とは言え、"Enough is not enough"なのが人間だ。そんな人こそレンダーファーム・・・なのかな?
レンダーファームとはレンダリングのためのCPUパワーのレンタルサービスや、そのためのハードウェア・ソフトウェア環境を指す。歴史をすっ飛ばして現状だけ見れば、クラウドコンピューティングサービスの一種と見做せるんじゃないかと思う。要は自分のPCの代わりに、レンタルした並列計算環境にレンダリング計算をしてもらうサービスだ。時間をプロダクションコストに含めなければならないプロフェッショナルの世界では、昔から必須のサービスだ。また、フリーランスの3DCGIアーティストが自己宣伝用デモリールを作る際に、仕上がりをプロフェッショナル級にするために使われることもあるようだ。
で、いくつかのレンダーファームサービスの価格を調べてみた。結論から言うと、良くも悪くもサービス提供元による価格差はほとんど無かった。もう少しばかり定量的に書くと、円-ユーロ、円-ドルの為替レートの変化でどこのサービスが一番安いかが変動するレベルの差だ。と言う訳で、米国ベースのとあるサービスの簡単見積りページで価格を見積もってみた。条件は、私のメインPCでレンダリング実績のある以下の通りとした。
- 600枚の静止画をレンダリング
- Intel i7-10700で静止画1枚/分、総レンダリング時間は10時間
- 200ノード並列
- 優先度は普通
ここでは、CPUを特定し、そのCPUでのレンダリング時間を与えている。サービス提供元のノード又はCPUの計算能力と特定したCPUの計算能力との換算が妥当ならば、かなり正確な見積りになるのではないかと思う。ノード並列数には特に意味は無いが、レンダリング枚数を超える意味が無いことと、レンダリング枚数の約数であることは意識した。優先度というのはざっくり実行順で、お金を積んで「高」とか「最高」にすれば、「普通」の他ユーザーの計算を止めてでも先に計算してもらえるようになる。
見積り結果は以下の通り。
- 実効計算時間は約80秒
- 価格は約¥1,300-
実効計算時間はノードの性能から妥当な感じ、使うとしても全く文句は無い。データのアップロード、ダウンロードを含めたターン・アラウンド・タイムは15分ぐらいだろうか。生成され、ダウンロードするデータの量は多いが、これらデータの一時保存などのコストは見積りに含まれていなかった。まぁ大抵はそのためのネットワークストレージサービスを別途契約しておいて、レンダリング結果はレンダーファーム側が適宜書き込む形にすべきなのだろうけれども。
対して価格だが、これが微妙。趣味かつ作成動画からの収益無し、という条件下ではやはり高値感がある。せめて半分、ただ¥300+消費税なら使うかもしれない。ちなみにCPUの最大TDP60WでメインPCを10時間全力駆動した場合の電気代の「増分」は約¥16-で、計算する前の予想よりは安かった。結局のところ、レンダリング時間である10時間が「睡眠時間+アルファ」又は「出勤で部屋のPCに触れられない時間以下」なので、金を払ってでも取り返したい時間になかなかならないのが高値感の原因だろう。
レンダリング時間が更に100倍になる辺り・・・価格¥13万-以上・・・からがレンダーファーム利用の本領発揮ラインだろう、というのが今回の感覚的な結論かな?200並列ならば「40日後の結果を今日の午後に得られる」となるが、こうだとさすがに価格の見え方も変わってくる。場合によっては「40日後に得られる予定だった結果を見ることで、40日後に得る筈だった新アイディアを今日の午後に得られる」なんてこともあるかもしれない。後者の場合、本来無かった筈の40日も別途購入したようにも考えられなくもなくない?