Targeting NVIDIA PTX

Decprecated: Please note that you are viewing a guide targeting an older version of ComputeCpp Community Edition. This version of the guide is designed specifically for version 2.0.0.

Experimental support for PTX is now available with the latest ComputeCpp version. This means that it is possible to target NVIDIA devices. See our blog for more background on this.

Note that this support is limited, although the code generation is ready, the builtin support is limited. OpenCL builtins still need to be mapped to their PTX counterparts. These will be added in future releases.


The computecpp_info tool will list NVidia devices, just call the computecpp_info tool as you would normally. Note they will be listed as unsupported devices but it is still possible to target them using ptx.


It's possible to build the ComputeCpp SDK samples for ptx however some of the samples will fail to execute properly. Clone the repository, create a "build" folder and from that folder use the following command.

cmake -DComputeCpp_DIR=/home/cuda/rod/ComputeCpp-CE-1.0.1-Ubuntu-16.04-x86_64/ -DCOMPUTECPP_BITCODE=ptx64 ..

It's now possible to execute the samples, e.g.


Note: The following ComputeCpp SDK samples fail, and this is a known issue: images, gaussian-blur, tiled-convolution, custom-device-selector.

If you want to try out this experimental support with your existing code there is a compiler flag that is used when compiling your SYCL source code:

compute++ -sycl -sycl-target ptx64

Select a Product

Please select a product

ComputeCpp enables developers to integrate parallel computing into applications using SYCL™ and accelerate code on a wide range of OpenCL™ devices such as GPUs.

ComputeSuite for R-Car enables developers to accelerate their applications on Renesas® R-Car based hardware such as the V3M and V3H, using the widely supported open standards SYCL and OpenCL.

Network Icon


part of our network