Collective Knowledge workflow for Caffe to automate installation across diverse platforms and to collaboratively evaluate and optimize Caffe-based workloads across diverse hardware, software and data sets (compilers, libraries, tools, models, inputs):
for Android, we now use official OpenCL branch of Caffe, but this means that we had to slightly change caffe-classification to init network differently on Android or Linux/Windows. See there:
/ Load the network. /
ifdef CK_TARGET_OS_NAME2_ANDROID
/ This is needed since we now use official OpenCL branch where our Android changes were added /
net_.reset(new Net(model_file, TEST, NULL));
else
net_.reset(new Net(model_file, TEST));
endif
caffe-time doesn't compile now for Android, because it has similar issue - in fact it should have init as OpenCL branch, but still choose CPU mode
Need to provide similar #ifdef
After that we can check the latest CPU/OpenCL time function on S7 - very critical
for Android, we now use official OpenCL branch of Caffe, but this means that we had to slightly change caffe-classification to init network differently on Android or Linux/Windows. See there:
/ Load the network. /
ifdef CK_TARGET_OS_NAME2_ANDROID
/ This is needed since we now use official OpenCL branch where our Android changes were added / net_.reset(new Net(model_file, TEST, NULL));
else
net_.reset(new Net(model_file, TEST));
endif
caffe-time doesn't compile now for Android, because it has similar issue - in fact it should have init as OpenCL branch, but still choose CPU mode
Need to provide similar #ifdef
After that we can check the latest CPU/OpenCL time function on S7 - very critical