aclrtGetPhyDevIdByLogicDevId
产品支持情况
产品 |
是否支持 |
|---|---|
√ |
|
√ |
|
√ |
|
√ |
|
√ |
功能说明
根据逻辑设备ID获取对应的物理设备ID。
函数原型
aclError aclrtGetPhyDevIdByLogicDevId(const int32_t logicDevId, int32_t *const phyDevId)
参数说明
参数名 |
输入/输出 |
说明 |
|---|---|---|
logicDevId |
输入 |
逻辑设备ID。 |
phyDevId |
输出 |
物理设备ID。 |
返回值说明
返回0表示成功,返回其他值表示失败,请参见aclError。
用户设备ID、逻辑设备ID、物理设备ID之间的关系
若未设置ASCEND_RT_VISIBLE_DEVICE环境变量,逻辑设备ID与用户设备ID相同;若在非容器场景下,物理设备ID与逻辑设备ID相同。
下图以容器场景且设置ASCEND_RT_VISIBLE_DEVICE环境变量为例说明三者之间的关系:通过ASCEND_RT_VISIBLE_DEVICES环境变量设置的Device ID依次为1、2,对应的Device索引值依次为0、1,通过aclrtSetDevice接口设置的用户设备ID为0,即对应的Device索引值为0,因此用户设备ID=0对应逻辑设备ID=1,容器中的逻辑设备ID=1又映射到物理设备ID=6,因此最终是使用ID为6的物理设备进行计算。

父主题: Device管理