You can not select more than 25 topics Topics must start with a chinese character,a letter or number, can include dashes ('-') and can be up to 35 characters long.

utils.cpp 1.0 kB

12345678910111213141516171819202122232425262728293031323334353637
  1. #include "./utils.h"
  2. namespace megdnn {
  3. namespace test {
  4. bool check_compute_capability(int major, int minor) {
  5. int dev;
  6. cuda_check(cudaGetDevice(&dev));
  7. cudaDeviceProp prop;
  8. cuda_check(cudaGetDeviceProperties(&prop, dev));
  9. //! we just skip sm_62 here, which means jetson tx2
  10. //! unless require sm_62 explicitly
  11. if (prop.major == 6 && prop.minor == 2) {
  12. return prop.major == major && prop.minor == minor;
  13. }
  14. return prop.major > major || (prop.major == major && prop.minor >= minor);
  15. }
  16. bool check_compute_capability_eq(int major, int minor) {
  17. int dev;
  18. cuda_check(cudaGetDevice(&dev));
  19. cudaDeviceProp prop;
  20. cuda_check(cudaGetDeviceProperties(&prop, dev));
  21. return (prop.major == major && prop.minor == minor);
  22. }
  23. const cudaDeviceProp current_cuda_device_prop() {
  24. int dev;
  25. cuda_check(cudaGetDevice(&dev));
  26. cudaDeviceProp prop;
  27. cuda_check(cudaGetDeviceProperties(&prop, dev));
  28. return prop;
  29. }
  30. } // namespace test
  31. } // namespace megdnn
  32. // vim: syntax=cpp.doxygen