diff options
Diffstat (limited to 'modules/remote-sycl/examples/sycl_basic_kernel.cpp')
-rw-r--r-- | modules/remote-sycl/examples/sycl_basic_kernel.cpp | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/modules/remote-sycl/examples/sycl_basic_kernel.cpp b/modules/remote-sycl/examples/sycl_basic_kernel.cpp new file mode 100644 index 0000000..eb79bb8 --- /dev/null +++ b/modules/remote-sycl/examples/sycl_basic_kernel.cpp @@ -0,0 +1,12 @@ +#include "sycl_basic.hpp" + +rpc_server<schema::BasicInterface, encode::Native<storage::Default>, rmt::Sycl> listen_basic_sycl(remote<rmt::Sycl>& ctx, remote_address<rmt::Sycl>& addr){ + saw::interface<schema::BasicInterface, saw::encode::Native<saw::storage::Default>, cl::sycl::queue*> iface{ + [](saw::data<saw::schema::UInt64> in, cl::sycl::queue* q) -> saw::data<saw::schema::UInt64> { + return {in.get() + 1u}; + } + }; + auto rpc_server = remote_ctx.template listen<schema::BasicInterface, saw::encode::Native<saw::storage::Default>>(*rmt_addr, std::move(iface)); + + return rpc_server; +} |