サポートする機能はありますが、現在OpenCLをサポートしていないデバイスがあります。私には、ISA、ハードウェア設計のドキュメント、その他多くのドキュメントがあります。デバイスが現在位置している私のシステムには、現在CとC++のコンパイラがあり、多くのLinuxディストリビューションをサポートしています。デバイスでOpenCLを実装するにはどのような手順が必要ですか?
今、私は自分のデバイスにOpenCL(最新バージョン2.2と言う)サポートを追加したいと思います。デバイスをサポートするには、実際に何をする必要がありますか? SPIR-Vのサイトには、SPIR-V registry page、opencl extended instruction set overview、normal spir-V overviewというドキュメントがあります。
今、私はSPIR-V-to-my-device-ISAコンパイラを実装していますが、今はOpenCL 2.2をサポートしていますか?私はanother registry for OpenCLを参照していますが、「これらの機能を実装していれば、これを行うコードを書いてください。あなたのシステムでOpenCL 2.2仕様を実装しました」ということは表示されません。
私のデバイスにOpenCLを実装するために必要な実際の手順は何ですか?
opencl拡張機能でSPIR-Vへのコンパイルをサポートして、openclカーネルをサポートしていませんか?私はそれらのカーネルが2.0の時点でSPIR-Vにコンパイルされていると思いました。私はSOC上でopencl仕様を持っていないGPU用にこれを書いています。私が知る限り、このGPUアセンブリにはLLVMはありません。私はOpenCLをサポートするものを作る方法について混乱しています。私はSPIR-VかLLVMのコンパイラを自分のアセンブリに書くだけですか? SOCのCPUはすでにOpenCLをサポートしていると思いますが、これは同じボード上の別個のデバイスではありません。ホストCLがデバイスにアクセスできるようにする手順は何ですか? – snb
ランタイム機能も必要ですが、コンパイラでは不十分です。 @Dithermasterと同様に、POCLで始まるのがおそらく最も安全な賭けです。残念ながら、彼らは何らかの形でllvmを使用します。 – MichaelE1000