Could not find a avalid OpenCL deviceエラーで、dForceが使えない

古いグラフィックカードだと、DAZ Studioの布物理シミュレーションdForceが使えない。

Simulashon Settingsの「Simulation」ボタンをクリックしたときにこんなエラーが出るのだ。


▲Could not find a avalid OpenCL device

エラーの意味は、「有効なOpenCLデバイスが見つかりません」

なんじゃそのOpenCLって。まー、なんか知らないけどグラフィックカードが古いってことなんだろうよ。

そう思って放置してた。

dForce髪を間違って購入

先日、セールをやっていたのと、前から目をつけていたのもあって、こちらの髪を購入。

Bang Bob Hair with dForce for Genesis 8 Female(s) 

ぱっつん髪に出来るのが良いなぁと思って「dForce」という言葉が目に入らなかった。

普通にフィギュアに適用させるとこうなる。

フィギュア Donna HD for Genesis 8 Female

髪が浮いたような状態。ここから重力を計算する布物理シミュレーションで、自然な感じで髪がファサァッ…と良い形になるのだ。

だけど、dForceが使えない私は「浮いた髪」のまま。

悔しい。実に悔しい。

この悔しさを活かして、OpenCLについて調べてみた。

OpenCLって何?

OpenGLなら聞いたことあるけど、別物らしい。

Wikipediaを見ると、はぁ、何言ってんだお前というわけの分からない説明が出てきて理解不能である。

参考)OpenCL – Wikipedia

グラフィックボードで並列処理をするための仕様とかライブラリ、くらいに考えておけば近いのかも知れない。

OpenCL1.2に対応しているかどうか調べる方法

私の使ってるグラフィックボードは、GT440という7,8年前に販売されたやつだった。

DVDとかブルーレイを見るための、必要最低限の機能を持った安いグラボのようだ。

まず、ソフト的にOpenCL1.2に対応させるには、NVIDIAから最新のデバイスドライバーをダウンロードしてインストールすればOK。

NVIDIA – ドライバーダウンロード

最近のNVIDIAは大したもので、いちいち自分のグラボの型番とか調べなくても、ダウンロードしてインストールすれば、合ったドライバーがインストールされるようだ。

次に、ハードウェア的にOpenCL1.2に対応しているかどうかは、フリーウェアで調べられる。

GPU Caps Viewer ←ダウンロードページ。

実行して、OpenCLのタブをクリックしたところ。

Version/Profileは、OpenCL1.2とあるが、DevicesのところにOpenCL1.1CUDAと出てる。

要するに、機械が1.2に対応していないっぽいのだ。

何かワザがあるのかも知れないが、「機械が古くて対応していない」という致命的な状況っぽい

OpenCL1.2に対応してるGeForceのグラボは?

いいよ、もうわかったよ。

せめて、次にグラボを買うとき用に、OpenCL1.2対応のグラボを調べておく。

Wikipediaによると、Keplerアーキテクチャを採用したGeForce 600シリーズ以降でOpenCL1.2に対応してるっぽい。

Keplerアーキテクチャが何のことかは知らないが、600番台以降を買えばいいってことだろう。

型番で言うと、GT630 とかその辺が、消費電力も少なめで良さそう。

値段はどれくらいするのかな。

GT630検索結果(楽天)

ちょっと待って、新品メッチャ高いんですけど。14万とかするんですけど。アホか。中古なら、6,980円というのがあったけど、どうなんだろう。

中には、15,800円の中古パソコンにGT630搭載のやつがあった。Windows10だし、HDD500GBだし、メモリ4G搭載済みだしで、もうこれでいいんじゃないの?という気がした。

CPUがAMD A4-5300 3.4GHzというのがちょっと判断つかないけど、グラボだけ買うなら装着済みの中古パソコンを買ったほうがいいのかもと思った。

dForceで、ぱっつん髪かわいいごっこを夢見つつ、今回の覚書を終わる。