I am developing an app that is running the clCaffe from
https://github.com/01org/caffe.
I am structuring my app as follows
1) System initialisation: Find OpenCL device, set up ViennaCL context to use the chosen OpenCL device. Initialise a Caffe::Net.
2) Image Acquisition: Acquire an image. Perform a forward pass in the network. Save results.
These two components of the system are running in separate threads.
The first of these components seems to run fine. The network appears to be getting initialised correctly and the Caffe::Net object is stored as a raw pointer in my class.
However, the second component is throwing the following error:
Exception: viennacl::ocl::kernel_not_found Kernel not found
ViennaCL: FATAL ERROR: Could not find kernel 'fillbuffer' from program ''
Number of kernels in program: 0
Does anyone know why this may be happening?