gpt4 book ai didi

linux - CUDA/PyCUDA : Which GPU is running X11?

转载 作者:太空狗 更新时间:2023-10-29 12:21:23 25 4
gpt4 key购买 nike

在多GPU的Linux系统中,如何判断哪个GPU运行X11,哪个完全免费运行CUDA内核?在具有低功率 GPU 运行 X11 和更高功率 GPU 运行内核的系统中,这可以通过一些试探法来确定以使用更快的卡。但是在有两张相同卡的系统上,不能使用这种方法。是否有 CUDA 和/或 X11 API 来确定这一点?

更新:命令“nvidia-smi -a”显示“显示器”是否已连接。我还没有确定这是否意味着物理连接、逻辑连接(运行 X11)或两者。在此命令上运行 strace 显示调用了很多 ioctl 而没有调用 X11,因此假设该卡报告显示器已物理连接。

最佳答案

cudaDeviceProp 结构中有一个设备属性 kernelExecTimeoutEnabled,它将指示设备是否受制于显示看门狗定时器。这是判断给定 CUDA 设备是否运行 X11(或等效的 Windows/Mac OS)的最佳指标。

在 PyCUDA 中,您可以像这样查询设备状态:

In [1]: from pycuda import driver as drv

In [2]: drv.init()

In [3]: print drv.Device(0).get_attribute(drv.device_attribute.KERNEL_EXEC_TIMEOUT)
1

In [4]: print drv.Device(1).get_attribute(drv.device_attribute.KERNEL_EXEC_TIMEOUT)
0

此处设备 0 连接了显示器,设备 1 是专用计算设备。

关于linux - CUDA/PyCUDA : Which GPU is running X11?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6428945/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com