このブログは、株式会社フィックスターズのエンジニアが、あらゆるテーマについて自由に書いているブログです。 OpenCLを書いている時、ホストとデバイスのコードが完全に分離していて連携しづらくてツライ・・・といった経験ありませんか?AMDのGPUに限るならHIPといった選択肢もあるのですが、OpenCLであってほしい場面はたくさんあります。 そんなところで、実は、OpenCLを単一ソースで書けるKhronosの規格にSYCL(シクル、と発音します)というものがあります。 この記事ではこの規格の実装をためしにつかってみました。付属してるサンプルなどを動作させるところまでの解説と、書いてみたコードの紹介をします。 SYCLについて Khronosグループによると、単一ソースのモダンなC++(具体的にはC++11)でOpenCLデバイスを扱うための規格です。バージョン1.2と2.2の暫定版が策定さ

