2

我是学生。我的问题可能很愚蠢,但我想澄清一下。我有一个带有 OpenCL 1.1 版本的 Vivante GPU 的设备。我想在 GPU 上运行支持 SYCL 的 tensorflow 示例代码。但在尝试 Tensorflow 示例代码之前,我想在 GPU 上尝试使用 openCL 1.1 的 SYCL 示例代码。

我见过几个 SYCL 实现,比如 computeCPP、triSYCL、sycl-gtx所有实现都支持 openCL 1.2 或更高版本。

有谁知道 SYCL 不支持 openCL 1.1 的原因?

尝试修改 SYCL 开源代码以支持 openCL 1.1 的可行性如何?

4

1 回答 1

2

SYCL 1.2 需要 OpenCL 1.2 的主要原因是因为 Khronos 中间表示SPIR 1.2 需要它。如果没有 SPIR 或任何其他中间表示,SYCL 实现无法将 C++ 代码编译为设备二进制文件,并且需要将 C++ 转换为 OpenCL C,这是非常有问题的。

于 2018-05-22T10:54:51.033 回答