|
|
|
@ -74,7 +74,11 @@ namespace |
|
|
|
|
|
|
|
|
|
CV_EXPORTS bool cv::gpu::TargetArchs::builtWith(cv::gpu::FeatureSet feature_set) |
|
|
|
|
{ |
|
|
|
|
#if defined (HAVE_CUDA) |
|
|
|
|
return ::compareToSet(CUDA_ARCH_FEATURES, feature_set, std::greater_equal<int>()); |
|
|
|
|
#else |
|
|
|
|
return false; |
|
|
|
|
#endif |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
@ -86,20 +90,32 @@ CV_EXPORTS bool cv::gpu::TargetArchs::has(int major, int minor) |
|
|
|
|
|
|
|
|
|
CV_EXPORTS bool cv::gpu::TargetArchs::hasPtx(int major, int minor) |
|
|
|
|
{ |
|
|
|
|
#if defined (HAVE_CUDA) |
|
|
|
|
return ::compareToSet(CUDA_ARCH_PTX, major * 10 + minor, std::equal_to<int>()); |
|
|
|
|
#else |
|
|
|
|
return false; |
|
|
|
|
#endif |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
CV_EXPORTS bool cv::gpu::TargetArchs::hasBin(int major, int minor) |
|
|
|
|
{ |
|
|
|
|
#if defined (HAVE_CUDA) |
|
|
|
|
return ::compareToSet(CUDA_ARCH_BIN, major * 10 + minor, std::equal_to<int>()); |
|
|
|
|
#else |
|
|
|
|
return false; |
|
|
|
|
#endif |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
CV_EXPORTS bool cv::gpu::TargetArchs::hasEqualOrLessPtx(int major, int minor) |
|
|
|
|
{ |
|
|
|
|
#if defined (HAVE_CUDA) |
|
|
|
|
return ::compareToSet(CUDA_ARCH_PTX, major * 10 + minor,
|
|
|
|
|
std::less_equal<int>()); |
|
|
|
|
#else |
|
|
|
|
return false; |
|
|
|
|
#endif |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
@ -112,15 +128,23 @@ CV_EXPORTS bool cv::gpu::TargetArchs::hasEqualOrGreater(int major, int minor) |
|
|
|
|
|
|
|
|
|
CV_EXPORTS bool cv::gpu::TargetArchs::hasEqualOrGreaterPtx(int major, int minor) |
|
|
|
|
{ |
|
|
|
|
#if defined (HAVE_CUDA) |
|
|
|
|
return ::compareToSet(CUDA_ARCH_PTX, major * 10 + minor,
|
|
|
|
|
std::greater_equal<int>()); |
|
|
|
|
#else |
|
|
|
|
return false; |
|
|
|
|
#endif |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
CV_EXPORTS bool cv::gpu::TargetArchs::hasEqualOrGreaterBin(int major, int minor) |
|
|
|
|
{ |
|
|
|
|
#if defined (HAVE_CUDA) |
|
|
|
|
return ::compareToSet(CUDA_ARCH_BIN, major * 10 + minor,
|
|
|
|
|
std::greater_equal<int>()); |
|
|
|
|
#else |
|
|
|
|
return false; |
|
|
|
|
#endif |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|