有没有办法检查 mxnet 是否使用我的 gpu?
Is there a way to check if mxnet uses my gpu?
我可以看看 mxnet 有哪些可用的 gpus 吗?
tensorflow 有类似的东西吗
tf.test.gpu_device_name()
在 mxnet 中?
检查您的 GPU 是否正在使用的最终方法是使用 nvidia-smi
命令。我最喜欢的论点是:
nvidia-smi --query-gpu=timestamp,name,pci.bus_id,driver_version,pstate,pcie.link.gen.max,pcie.link.gen.current,temperature.gpu,utilization.gpu,utilization.memory,memory.total,memory.free,memory.used --format=csv -l 1
如果您只想测试 gpu 支持是否可用(tf.test.gpu_device_name() 所做的),以下函数可以提供帮助:
import mxnet as mx
def gpu_device(gpu_number=0):
try:
_ = mx.nd.array([1, 2, 3], ctx=mx.gpu(gpu_number))
except mx.MXNetError:
return None
return mx.gpu(gpu_number)
此函数 returns None
如果请求的 GPU 设备不可用,或者 returns 如果 GPU 设备可用,则相关上下文。您也可以使用此功能来检查此系统是否支持GPU:
if not gpu_device():
print('No GPU device found!')
如果您从源代码构建
>>> from mxnet.runtime import feature_list
>>> feature_list()
[✔ CUDA, ✔ CUDNN, ✖ NCCL, ✔ CUDA_RTC, ✖ TENSORRT, ✔ CPU_SSE, ✔ CPU_SSE2, ✔ CPU_SSE3, ✔ CPU_SSE4_1, ✔ CPU_SSE4_2, ✖ CPU_SSE4A, ✔ CPU_AVX, ✖ CPU_AVX2, ✖ OPENMP, ✖ SSE, ✔ F16C, ✔ JEMALLOC, ✖ BLAS_OPEN, ✖ BLAS_ATLAS, ✖ BLAS_MKL, ✖ BLAS_APPLE, ✔ LAPACK, ✔ MKLDNN, ✔ OPENCV, ✖ CAFFE, ✖ PROFILER, ✖ DIST_KVSTORE, ✖ CXX14, ✖ INT64_TENSOR_SIZE, ✖ SIGNAL_HANDLER, ✖ DEBUG]
这里build flag中CUDA和CUDNN是on的,说明是用GPU构建的!
检查 mxnet
是否列出了 gpu。
import mxnet as mx
mx.context.num_gpus()
要使用该库,请确保在需要 上下文 的地方传递参数 mx.gpu(0)
。 0
是gpu的索引,如果是多GPU,索引会更多。
我可以看看 mxnet 有哪些可用的 gpus 吗?
tensorflow 有类似的东西吗
tf.test.gpu_device_name()
在 mxnet 中?
检查您的 GPU 是否正在使用的最终方法是使用 nvidia-smi
命令。我最喜欢的论点是:
nvidia-smi --query-gpu=timestamp,name,pci.bus_id,driver_version,pstate,pcie.link.gen.max,pcie.link.gen.current,temperature.gpu,utilization.gpu,utilization.memory,memory.total,memory.free,memory.used --format=csv -l 1
如果您只想测试 gpu 支持是否可用(tf.test.gpu_device_name() 所做的),以下函数可以提供帮助:
import mxnet as mx
def gpu_device(gpu_number=0):
try:
_ = mx.nd.array([1, 2, 3], ctx=mx.gpu(gpu_number))
except mx.MXNetError:
return None
return mx.gpu(gpu_number)
此函数 returns None
如果请求的 GPU 设备不可用,或者 returns 如果 GPU 设备可用,则相关上下文。您也可以使用此功能来检查此系统是否支持GPU:
if not gpu_device():
print('No GPU device found!')
如果您从源代码构建
>>> from mxnet.runtime import feature_list
>>> feature_list()
[✔ CUDA, ✔ CUDNN, ✖ NCCL, ✔ CUDA_RTC, ✖ TENSORRT, ✔ CPU_SSE, ✔ CPU_SSE2, ✔ CPU_SSE3, ✔ CPU_SSE4_1, ✔ CPU_SSE4_2, ✖ CPU_SSE4A, ✔ CPU_AVX, ✖ CPU_AVX2, ✖ OPENMP, ✖ SSE, ✔ F16C, ✔ JEMALLOC, ✖ BLAS_OPEN, ✖ BLAS_ATLAS, ✖ BLAS_MKL, ✖ BLAS_APPLE, ✔ LAPACK, ✔ MKLDNN, ✔ OPENCV, ✖ CAFFE, ✖ PROFILER, ✖ DIST_KVSTORE, ✖ CXX14, ✖ INT64_TENSOR_SIZE, ✖ SIGNAL_HANDLER, ✖ DEBUG]
这里build flag中CUDA和CUDNN是on的,说明是用GPU构建的!
检查 mxnet
是否列出了 gpu。
import mxnet as mx
mx.context.num_gpus()
要使用该库,请确保在需要 上下文 的地方传递参数 mx.gpu(0)
。 0
是gpu的索引,如果是多GPU,索引会更多。