我有一个Caffe神经网络,我想在网络中进行前向传递(使用GPU)而不阻塞主线程。我正在使用python,我尝试使用线程和多处理。他们正在使用CPU,即使我要求它使用GPU。这是我的代码:
$request_object->post('https://oauth.io/auth/access_token', array(
'code' => 'xxx', // here I tried access_token, refresh_token
'key' => 'xxx',
'secret' => 'xxx',
));
答案 0 :(得分:2)
我有一个非常相似的问题。
使用
caffe.set_mode_gpu()
子线程中的解决了它。
所以试试:
class MultProcessingWorker(mp.Process):
def run(self):
caffe.set_mode_gpu() # <--- should fix the problem
param = config()
self.model = param.model
self.net = caffe.Net(self.model.deployFile, self.model.caffemodel, caffe.TEST)
input_data = np.random.rand(1,4,self.model.width,self.model.height)
start = time()
self.net.forward(data=input_data)
print 'Success, took %f seconds' % (time()-start)