mirror of
https://github.com/opencv/opencv.git
synced 2024-12-01 14:59:54 +08:00
move GPU utiluty functions in utility.cpp
This commit is contained in:
parent
a9ab26f799
commit
10f1004465
@ -6,71 +6,6 @@ using namespace cv::gpu;
|
|||||||
using namespace cvtest;
|
using namespace cvtest;
|
||||||
using namespace testing;
|
using namespace testing;
|
||||||
|
|
||||||
void printOsInfo()
|
|
||||||
{
|
|
||||||
#if defined _WIN32
|
|
||||||
# if defined _WIN64
|
|
||||||
cout << "OS: Windows x64 \n" << endl;
|
|
||||||
# else
|
|
||||||
cout << "OS: Windows x32 \n" << endl;
|
|
||||||
# endif
|
|
||||||
#elif defined linux
|
|
||||||
# if defined _LP64
|
|
||||||
cout << "OS: Linux x64 \n" << endl;
|
|
||||||
# else
|
|
||||||
cout << "OS: Linux x32 \n" << endl;
|
|
||||||
# endif
|
|
||||||
#elif defined __APPLE__
|
|
||||||
# if defined _LP64
|
|
||||||
cout << "OS: Apple x64 \n" << endl;
|
|
||||||
# else
|
|
||||||
cout << "OS: Apple x32 \n" << endl;
|
|
||||||
# endif
|
|
||||||
#endif
|
|
||||||
}
|
|
||||||
|
|
||||||
void printCudaInfo()
|
|
||||||
{
|
|
||||||
#if !defined HAVE_CUDA || defined(CUDA_DISABLER)
|
|
||||||
cout << "OpenCV was built without CUDA support \n" << endl;
|
|
||||||
#else
|
|
||||||
int driver;
|
|
||||||
cudaDriverGetVersion(&driver);
|
|
||||||
|
|
||||||
cout << "CUDA Driver version: " << driver << '\n';
|
|
||||||
cout << "CUDA Runtime version: " << CUDART_VERSION << '\n';
|
|
||||||
|
|
||||||
cout << endl;
|
|
||||||
|
|
||||||
cout << "GPU module was compiled for the following GPU archs:" << endl;
|
|
||||||
cout << " BIN: " << CUDA_ARCH_BIN << '\n';
|
|
||||||
cout << " PTX: " << CUDA_ARCH_PTX << '\n';
|
|
||||||
|
|
||||||
cout << endl;
|
|
||||||
|
|
||||||
int deviceCount = getCudaEnabledDeviceCount();
|
|
||||||
cout << "CUDA device count: " << deviceCount << '\n';
|
|
||||||
|
|
||||||
cout << endl;
|
|
||||||
|
|
||||||
for (int i = 0; i < deviceCount; ++i)
|
|
||||||
{
|
|
||||||
DeviceInfo info(i);
|
|
||||||
|
|
||||||
cout << "Device [" << i << "] \n";
|
|
||||||
cout << "\t Name: " << info.name() << '\n';
|
|
||||||
cout << "\t Compute capability: " << info.majorVersion() << '.' << info.minorVersion()<< '\n';
|
|
||||||
cout << "\t Multi Processor Count: " << info.multiProcessorCount() << '\n';
|
|
||||||
cout << "\t Total memory: " << static_cast<int>(static_cast<int>(info.totalMemory() / 1024.0) / 1024.0) << " Mb \n";
|
|
||||||
cout << "\t Free memory: " << static_cast<int>(static_cast<int>(info.freeMemory() / 1024.0) / 1024.0) << " Mb \n";
|
|
||||||
if (!info.isCompatible())
|
|
||||||
cout << "\t !!! This device is NOT compatible with current GPU module build \n";
|
|
||||||
|
|
||||||
cout << endl;
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
}
|
|
||||||
|
|
||||||
int main(int argc, char** argv)
|
int main(int argc, char** argv)
|
||||||
{
|
{
|
||||||
const std::string keys =
|
const std::string keys =
|
||||||
@ -88,8 +23,8 @@ int main(int argc, char** argv)
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
printOsInfo();
|
ts::printOsInfo();
|
||||||
printCudaInfo();
|
ts::printCudaInfo();
|
||||||
|
|
||||||
|
|
||||||
if (cmd.has("info"))
|
if (cmd.has("info"))
|
||||||
|
@ -191,3 +191,68 @@ void PrintTo(const CvtColorInfo& info, ostream* os)
|
|||||||
|
|
||||||
*os << str[info.code];
|
*os << str[info.code];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void ts::printOsInfo()
|
||||||
|
{
|
||||||
|
#if defined _WIN32
|
||||||
|
# if defined _WIN64
|
||||||
|
cout << "OS: Windows x64 \n" << endl;
|
||||||
|
# else
|
||||||
|
cout << "OS: Windows x32 \n" << endl;
|
||||||
|
# endif
|
||||||
|
#elif defined linux
|
||||||
|
# if defined _LP64
|
||||||
|
cout << "OS: Linux x64 \n" << endl;
|
||||||
|
# else
|
||||||
|
cout << "OS: Linux x32 \n" << endl;
|
||||||
|
# endif
|
||||||
|
#elif defined __APPLE__
|
||||||
|
# if defined _LP64
|
||||||
|
cout << "OS: Apple x64 \n" << endl;
|
||||||
|
# else
|
||||||
|
cout << "OS: Apple x32 \n" << endl;
|
||||||
|
# endif
|
||||||
|
#endif
|
||||||
|
}
|
||||||
|
|
||||||
|
void ts::printCudaInfo()
|
||||||
|
{
|
||||||
|
#if !defined HAVE_CUDA || defined(CUDA_DISABLER)
|
||||||
|
cout << "OpenCV was built without CUDA support \n" << endl;
|
||||||
|
#else
|
||||||
|
int driver;
|
||||||
|
cudaDriverGetVersion(&driver);
|
||||||
|
|
||||||
|
cout << "CUDA Driver version: " << driver << '\n';
|
||||||
|
cout << "CUDA Runtime version: " << CUDART_VERSION << '\n';
|
||||||
|
|
||||||
|
cout << endl;
|
||||||
|
|
||||||
|
cout << "GPU module was compiled for the following GPU archs:" << endl;
|
||||||
|
cout << " BIN: " << CUDA_ARCH_BIN << '\n';
|
||||||
|
cout << " PTX: " << CUDA_ARCH_PTX << '\n';
|
||||||
|
|
||||||
|
cout << endl;
|
||||||
|
|
||||||
|
int deviceCount = getCudaEnabledDeviceCount();
|
||||||
|
cout << "CUDA device count: " << deviceCount << '\n';
|
||||||
|
|
||||||
|
cout << endl;
|
||||||
|
|
||||||
|
for (int i = 0; i < deviceCount; ++i)
|
||||||
|
{
|
||||||
|
DeviceInfo info(i);
|
||||||
|
|
||||||
|
cout << "Device [" << i << "] \n";
|
||||||
|
cout << "\t Name: " << info.name() << '\n';
|
||||||
|
cout << "\t Compute capability: " << info.majorVersion() << '.' << info.minorVersion()<< '\n';
|
||||||
|
cout << "\t Multi Processor Count: " << info.multiProcessorCount() << '\n';
|
||||||
|
cout << "\t Total memory: " << static_cast<int>(static_cast<int>(info.totalMemory() / 1024.0) / 1024.0) << " Mb \n";
|
||||||
|
cout << "\t Free memory: " << static_cast<int>(static_cast<int>(info.freeMemory() / 1024.0) / 1024.0) << " Mb \n";
|
||||||
|
if (!info.isCompatible())
|
||||||
|
cout << "\t !!! This device is NOT compatible with current GPU module build \n";
|
||||||
|
|
||||||
|
cout << endl;
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
}
|
||||||
|
@ -48,5 +48,9 @@ DEF_PARAM_TEST(Sz_Depth_Cn, cv::Size, MatDepth, MatCn);
|
|||||||
|
|
||||||
#define GPU_TYPICAL_MAT_SIZES testing::Values(perf::sz720p, perf::szSXGA, perf::sz1080p)
|
#define GPU_TYPICAL_MAT_SIZES testing::Values(perf::sz720p, perf::szSXGA, perf::sz1080p)
|
||||||
|
|
||||||
|
namespace ts {
|
||||||
|
void printOsInfo();
|
||||||
|
void printCudaInfo();
|
||||||
|
}
|
||||||
|
|
||||||
#endif // __OPENCV_PERF_GPU_UTILITY_HPP__
|
#endif // __OPENCV_PERF_GPU_UTILITY_HPP__
|
||||||
|
Loading…
Reference in New Issue
Block a user