どうも、こなさん、みんばんわ!
計算処理にベクター演算を経由する実装をここしばらく遠ざかっていましたが、ふと思い出しました。MacBook Pro の GPU は Intel Iris Plus Graphics 655 なので、ベクター演算は eGPU (外付け GPU Box) 利用が無難だろうなと思うも、最近のお仕事や趣味の ICT 総合格闘技(フルスタック)練習で GPU どころか、HPC からも少し遠くの領域にいるので、最近の OpenCL/OpenGL に触れられればいいかなという緩い気持ちで、まずは導入計画からです。
OpenCL/OpenGL 対応バージョンについて、Apple が情報公開していました。
https://support.apple.com/ja-jp/HT202823
—
んじゃ、bash で clinfo を導入して OpenCL 環境を確認してみる。
snip
your OpenCL library only supports OpenCL 1.0, but some installed platforms support OpenCL 1.2. Programs using 1.2 features may crash or behave unexpectedly
いやいや、それってバグあるから予め覚悟しとけ!ってことやないか。
ということは、仮想環境 virtualenv (Virtual Environment) を使えってことだ。導入には virtualenv が必要。(大事なことだから二度書きました)
—
お次は、OpenGL を。昨日(前回の blog) で Xcode 導入済み。
Xcode で新規プロジェクトを作成して、四角形を描画するよくあるMVC をインプリメントします。
フレームワーク内の関数は AppKit の Developer Documentation に情報があるので参照してください。(基本的に自分でゼロから作りながらハマるよりも、公式情報を参照して実装していくスタイルです)
snip
あら?OpenGL は導入計画どころか実装を確かめてしまいました。ということは、OpenCL ですね、さてどうしましようか。
以上