Ask Your Question

Revision history [back]

When your program tries to execute code on a GPU the driver will check the executable for suitable code to run on your specific GPU. The executable is known as a "fat binary", meaning it can contain code for multiple architectures. In the case of GPUs, the executable can contain machine code for different GPUs as well as PTX, which is a slightly higher level language (looks like assembly) which can be compiled at runtime to the specific GPU.

In your case you would need compute capability 5.2 for best performance, however, OpenCV does not automatically build for that compute capability yet. What you need to do is open up the cmake-gui interface and look for CUDA_ARCH_BIN in the CUDA group that was set to the value 1.1 1.2 1.3 2.0 2.1(2.0) 3.0 3.5. You then appended 5.2 to the list, generate and then compile again.

Then it should work.

When your program tries to execute code on a GPU the driver will check the executable for suitable code to run on your specific GPU. The executable is known as a "fat binary", meaning it can contain code for multiple architectures. In the case of GPUs, the executable can contain machine code for different GPUs as well as PTX, which is a slightly higher level language (looks like assembly) which can be compiled at runtime to the specific GPU.

In your case you would need compute capability 5.2 for best performance, however, OpenCV does not automatically build for that compute capability yet. What you need to do is open up the cmake-gui interface and look for CUDA_ARCH_BIN in the CUDA group that was set to the value 1.1 1.2 1.3 2.0 2.1(2.0) 3.0 3.5. 3.5. You then appended 5.2 to the list, generate and then compile again.

Then it should work.

When your program tries to execute code on a GPU the driver will check the executable for suitable code to run on your specific GPU. The executable is known as a "fat binary", meaning it can contain code for multiple architectures. In the case of GPUs, the executable can contain machine code for different GPUs as well as PTX, which is a slightly higher level language (looks like assembly) which can be compiled at runtime to the specific GPU.

In your case you would need compute capability 5.2 for best performance, however, OpenCV does not automatically build for that compute capability yet. What you need to do is open up the cmake-gui interface and look for CUDA_ARCH_BIN in the CUDA group that was set to the value 1.1 1.2 1.3 2.0 2.1(2.0) 3.0 3.5. You then appended 5.2 5.2 to the list, generate and then compile again.

Then it should work.