#环境配置:
- Ubuntu 16.04
- python 3.5
- CUDA 9.0
- cudnn 7.0
#坑一:需要修改make.sh文件,因为原来代码不兼容python3。
make.sh修改如下:
nvcc -std=c++11 -c -o roi_pooling_op.cu.o roi_pooling_op_gpu.cu.cc \
-I $TF_INC -D GOOGLE_CUDA=1 -x cu -Xcompiler -fPIC $CXXFLAGS \
-lcudart -L$CUDA_PATH/lib64 -L$TF_LIB -ltensorflow_framework -I$TF_INC/external/nsync/public \
-arch=sm_61
g++ -std=c++11 -shared -D_GLIBCXX_USE_CXX11_ABI=0 -o roi_pooling.so roi_pooling_op.cc \
roi_pooling_op.cu.o -I $TF_INC -L $TF_LIB -ltensorflow_framework -D GOOGLE_CUDA=1 -fPIC $CXXFLAGS \
-lcudart -L$CUDA_PATH/lib64 -I$TF_INC/external/nsync/public \
#坑二:从py2转换为py3编码格式
调用2to3脚本:
2to3 example.py
#坑三 使用bash训练脚本
如果直接
python3 ./tools/train_net.py --device gpu --device_id 1 --solver VGG_C