Merge pull request #1171 from tinohager/master

Get gpu count and name
pull/1172/head
Alexey 7 years ago committed by GitHub
commit b956a660f5
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
  1. 22
      src/yolo_v2_class.cpp
  2. 2
      src/yolo_v2_class.hpp

@ -60,6 +60,28 @@ int dispose() {
return 1; return 1;
} }
int get_device_count() {
#ifdef GPU
int count = 0;
cudaGetDeviceCount(&count);
return count;
#else
return -1;
#endif // GPU
}
int get_device_name(int gpu, char* deviceName) {
#ifdef GPU
cudaDeviceProp prop;
cudaGetDeviceProperties(&prop, gpu);
std::string result = prop.name;
std::copy(result.begin(), result.end(), deviceName);
return 1;
#else
return -1;
#endif // GPU
}
#ifdef GPU #ifdef GPU
void check_cuda(cudaError_t status) { void check_cuda(cudaError_t status) {
if (status != cudaSuccess) { if (status != cudaSuccess) {

@ -49,6 +49,8 @@ extern "C" YOLODLL_API int init(const char *configurationFilename, const char *w
extern "C" YOLODLL_API int detect_image(const char *filename, bbox_t_container &container); extern "C" YOLODLL_API int detect_image(const char *filename, bbox_t_container &container);
extern "C" YOLODLL_API int detect_mat(const uint8_t* data, const size_t data_length, bbox_t_container &container); extern "C" YOLODLL_API int detect_mat(const uint8_t* data, const size_t data_length, bbox_t_container &container);
extern "C" YOLODLL_API int dispose(); extern "C" YOLODLL_API int dispose();
extern "C" YOLODLL_API int get_device_count();
extern "C" YOLODLL_API int get_device_name(int gpu, char* deviceName);
class Detector { class Detector {
std::shared_ptr<void> detector_gpu_ptr; std::shared_ptr<void> detector_gpu_ptr;

Loading…
Cancel
Save