From 465aa13a15934bcbf1464cf38dc85b6442b1a584 Mon Sep 17 00:00:00 2001 From: Zhuo Liang Date: Tue, 11 Feb 2020 21:31:52 +0800 Subject: [PATCH 1/2] Solving an error of 'undefined symbol' when tools/demo.py is running --- lib/make.sh | 10 +++++++--- lib/roi_pooling_layer/roi_pooling_op.cc | 5 ++++- 2 files changed, 11 insertions(+), 4 deletions(-) diff --git a/lib/make.sh b/lib/make.sh index 15a616bc..1642ded4 100755 --- a/lib/make.sh +++ b/lib/make.sh @@ -1,4 +1,5 @@ TF_INC=$(python -c 'import tensorflow as tf; print(tf.sysconfig.get_include())') +TF_LIB=$(python -c 'import tensorflow as tf; print(tf.sysconfig.get_lib())') CUDA_PATH=/usr/local/cuda/ CXXFLAGS='' @@ -11,15 +12,18 @@ cd roi_pooling_layer if [ -d "$CUDA_PATH" ]; then 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 \ + -I $TF_INC -L $TF_LIB -ltensorflow_framework \ + -DGOOGLE_CUDA=1 -x cu -Xcompiler -fPIC $CXXFLAGS \ -arch=sm_37 g++ -std=c++11 -shared -o roi_pooling.so roi_pooling_op.cc \ - roi_pooling_op.cu.o -I $TF_INC -D GOOGLE_CUDA=1 -fPIC $CXXFLAGS \ + roi_pooling_op.cu.o -I $TF_INC -L $TF_LIB \ + -ltensorflow_framework -DGOOGLE_CUDA=1 -fPIC $CXXFLAGS \ -lcudart -L $CUDA_PATH/lib64 else g++ -std=c++11 -shared -o roi_pooling.so roi_pooling_op.cc \ - -I $TF_INC -fPIC $CXXFLAGS + -I $TF_INC -L $TF_LIB -ltensorflow_framework \ + -DGOOGLE_CUDA=0 -fPIC $CXXFLAGS fi cd .. diff --git a/lib/roi_pooling_layer/roi_pooling_op.cc b/lib/roi_pooling_layer/roi_pooling_op.cc index 68ce66a8..5fcb467b 100644 --- a/lib/roi_pooling_layer/roi_pooling_op.cc +++ b/lib/roi_pooling_layer/roi_pooling_op.cc @@ -194,6 +194,7 @@ class RoiPoolOp : public OpKernel { float spatial_scale_; }; +#if GOOGLE_CUDA bool ROIPoolForwardLaucher( const float* bottom_data, const float spatial_scale, const int num_rois, const int height, const int width, const int channels, const int pooled_height, @@ -290,6 +291,7 @@ class RoiPoolOp : public OpKernel { int pooled_width_; float spatial_scale_; }; +#endif // compute gradient template @@ -456,6 +458,7 @@ class RoiPoolGradOp : public OpKernel { float spatial_scale_; }; +#if GOOGLE_CUDA bool ROIPoolBackwardLaucher(const float* top_diff, const float spatial_scale, const int batch_size, const int num_rois, const int height, const int width, const int channels, const int pooled_height, const int pooled_width, const float* bottom_rois, @@ -480,7 +483,6 @@ static void RoiPoolingGradKernel( output->flat().data(), argmax_data->flat().data(), context->eigen_device()); } - template class RoiPoolGradOp : public OpKernel { public: @@ -552,6 +554,7 @@ class RoiPoolGradOp : public OpKernel { int pooled_width_; float spatial_scale_; }; +#endif REGISTER_KERNEL_BUILDER(Name("RoiPool").Device(DEVICE_CPU).TypeConstraint("T"), RoiPoolOp); REGISTER_KERNEL_BUILDER(Name("RoiPoolGrad").Device(DEVICE_CPU).TypeConstraint("T"), RoiPoolGradOp); From 38005d99302937dbdf3e9ea383f2e445a54e7f11 Mon Sep 17 00:00:00 2001 From: Ted George Date: Fri, 18 Jun 2021 15:12:54 +0800 Subject: [PATCH 2/2] Delete .VGGnet.py.swo Delete .VGGnet.py.swo --- lib/networks/.VGGnet.py.swo | Bin 12288 -> 0 bytes 1 file changed, 0 insertions(+), 0 deletions(-) delete mode 100644 lib/networks/.VGGnet.py.swo diff --git a/lib/networks/.VGGnet.py.swo b/lib/networks/.VGGnet.py.swo deleted file mode 100644 index 4ef4898683462284ef0fe903e6b7e3b6afd28b93..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12288 zcmeHNOK;p%6uza1J|Iw0x?q8HAwr%=W<0hhnY7X@5U5cl$c8orMa6i=*NIz?ZP}hS zQPqOPvI~9y5?dA(8w5*)L?yO7Bvw2mc5J)r3i$5zV;nm(!ze4%Yt84^J?A^;eCK-Z zMDd`rb?I%|Yj+8@GlZP}=j*GVzxemkSJw#{hVhQa@6XwG?f53!pJRmKyMj;~c!BoL zc<{#NrgizE=Gsa6T09H_&G!acz|vb`d?V4eHa2kHj{XDf{J_#eDj*er0!zd+^bVI| z`IVRH+2^lFRipw^0jYpgKq?>=kP1izqykcb$4G%RIz~Q3y-(yd_w(bi+A+VB2dRKm zKq?>=kP1izqyka_sen{KDj*e*3P=V1hYHvZA&;IUL@{{H{#IYJ%)-vRf5 zkAdsJOTf?167mVK4ZHw6Tq5K*;8);#;6AVeECYW&L&z7vKF|Y>13x@X$fv-2z^lN+ z(}a8j+y*v)v%nvx2>BiO7PtqT2iAdez=M;>3-}E90O$fHa0dA41R*~H_kj0-D}V+( zLVdpgUjiQi?*dnWK5z=)^`8LbCKZqhNCh4{1!#3^yTg{zRcXxpasQ(2CrqV*Jz{-j zFbMaoC}xhbvO)@%R>FL@?K0-H6nEHDR!BJ{Oxj84rXzc=m2nLH1Qg+*N|D(i?Al>b zxkrMx#~7%EWwGOlc01?clu>8Vi&1fGnyfWg;?T3AF!WnJmExnfJDOf{7K5u5w`#@1 zFu1vDnTkpkm?jk~axf9p9EFMPTfV)|Vj%|Y7fzGHs@!oDScP0x%#vL@Vv4Hp+mlYH ziZ`;nzzq?)7BY9qBci2TCK2>7;wdeyCeaLWu(tbK-rNB*lEF zRm{85(p6pUu4AXGk?lBMu+vwzUVrP-n~KV(Gz7>dbv9`ZsyRypaBJqC*%YCS3W*np zTAA0AVl$}(qp6zes%{9%Nv?b-Pea&ZR~3j4^ZD4A3^^q=Rmw@JE=8s_<)_}f{3+*;YPZ2KFKSn4vRI~FYw_y3*3qlu-J6=Jv5N1e zdh^WL)lKo4S=|($qgOXGs&1?|t21WzVT#YuGi@?dX4x86$a))eB&yOhw!Od}_$*sI zXY}%L4t*9!^;vi9)Xt}h!(5uMbR3ECl?#)lK&;N$&?FOav&<9Uh~;@X@q~$3s}hVm z-Y{+5Rz$=LVu+t&(JL08>}Gy-rxxi3W06?&c_gg!AJCa|fEJ(r_ Ma^IqMf<};k0ep??kN^Mx