昇腾社区首页
中文
注册
开发者
下载

aclrtGetPhyDevIdByLogicDevId

产品支持情况

产品

是否支持

Atlas A3 训练系列产品/Atlas A3 推理系列产品

Atlas A2 训练系列产品/Atlas A2 推理系列产品

Atlas 200I/500 A2 推理产品

Atlas 推理系列产品

Atlas 训练系列产品

功能说明

根据逻辑设备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的物理设备进行计算。

关于ASCEND_RT_VISIBLE_DEVICES环境的详细介绍请参见环境变量参考