diff --git a/build/darknet/yolo_cpp_dll.vcxproj b/build/darknet/yolo_cpp_dll.vcxproj index 74eb2afc..6136112c 100644 --- a/build/darknet/yolo_cpp_dll.vcxproj +++ b/build/darknet/yolo_cpp_dll.vcxproj @@ -93,8 +93,8 @@ Disabled true ..\..\include;..\..\3rdparty\include;%(AdditionalIncludeDirectories);$(CudaToolkitIncludeDir);$(cudnn)\include - _MBCS;LIB_EXPORTS;_TIMESPEC_DEFINED;_SCL_SECURE_NO_WARNINGS;_CRT_SECURE_NO_WARNINGS;GPU;WIN32;NDEBUG;_CONSOLE;_LIB;%(PreprocessorDefinitions) - CUDNN + _MBCS;LIB_EXPORTS;_TIMESPEC_DEFINED;_SCL_SECURE_NO_WARNINGS;_CRT_SECURE_NO_WARNINGS;GPU;WIN32;DEBUG;_CONSOLE;_LIB;%(PreprocessorDefinitions) + CUDNN_HALF;CUDNN true stdlib.h;crtdbg.h;%(ForcedIncludeFiles) @@ -106,7 +106,7 @@ true - compute_30,sm_30;compute_52,sm_52 + compute_30,sm_30;compute_75,sm_75 64 @@ -137,7 +137,7 @@ true true C:\opencv_3.0\opencv\build\include;..\..\include;..\..\3rdparty\include;%(AdditionalIncludeDirectories);$(CudaToolkitIncludeDir);$(cudnn)\include - CUDNN;GPU;LIB_EXPORTS;_TIMESPEC_DEFINED;_SCL_SECURE_NO_WARNINGS;_CRT_SECURE_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;_LIB;%(PreprocessorDefinitions) + CUDNN_HALF;CUDNN;GPU;LIB_EXPORTS;_TIMESPEC_DEFINED;_SCL_SECURE_NO_WARNINGS;_CRT_SECURE_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;_LIB;%(PreprocessorDefinitions) c11 c++1y CompileAsCpp @@ -156,7 +156,7 @@ 64 - compute_30,sm_30;compute_52,sm_52 + compute_30,sm_30;compute_75,sm_75 diff --git a/src/cuda.c b/src/cuda.c index 85c8a299..6a2407a3 100644 --- a/src/cuda.c +++ b/src/cuda.c @@ -309,7 +309,7 @@ int get_gpu_compute_capability(int i) cudaDeviceProp prop; cudaError_t status = cudaGetDeviceProperties(&prop, i); CHECK_CUDA(status); - int cc = prop.major * 10 + prop.minor; + int cc = prop.major * 100 + prop.minor * 10; // __CUDA_ARCH__ format return cc; } diff --git a/src/parser.c b/src/parser.c index ca53983a..8d927f81 100644 --- a/src/parser.c +++ b/src/parser.c @@ -671,8 +671,10 @@ void parse_net_options(list *options, network *net) net->policy = get_policy(policy_s); net->burn_in = option_find_int_quiet(options, "burn_in", 0); #ifdef CUDNN_HALF - if(get_gpu_compute_capability(net->gpu_index) >= 7000) net->cudnn_half = 1; + int compute_capability = get_gpu_compute_capability(net->gpu_index); + if(get_gpu_compute_capability(net->gpu_index) >= 700) net->cudnn_half = 1; else net->cudnn_half = 0; + fprintf(stderr, " compute_capability = %d, cudnn_half = %d \n", compute_capability, net->cudnn_half); #endif if(net->policy == STEP){ net->step = option_find_int(options, "step", 1);