news 2026/5/10 3:35:25

CANN/driver传感器信息获取API

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
CANN/driver传感器信息获取API

dcmi_get_device_sensor_info

【免费下载链接】driver本项目是CANN提供的驱动模块,实现基础驱动和资源管理及调度等功能,使能昇腾芯片。项目地址: https://gitcode.com/cann/driver

函数原型

int dcmi_get_device_sensor_info(int card_id, int device_id, enum dcmi_manager_sensor_id sensor_id, union dcmi_sensor_info *sensor_info)

功能说明

获取设备的传感器信息。

参数说明

参数名称

输入/输出

类型

描述

card_id

输入

int

设备ID,当前实际支持的ID通过dcmi_get_card_list接口获取。

device_id

输入

int

芯片ID,通过dcmi_get_device_id_in_card接口获取。取值范围如下:

NPU芯片:[0, device_id_max-1]。

sensor_id

输入

enum dcmi_manager_sensor_id

enum dcmi_manager_sensor_id {

DCMI_CLUSTER_TEMP_ID = 0,

DCMI_PERI_TEMP_ID = 1,

DCMI_AICORE0_TEMP_ID,

DCMI_AICORE1_TEMP_ID,

DCMI_AICORE_LIMIT_ID,

DCMI_AICORE_TOTAL_PER_ID,

DCMI_AICORE_ELIM_PER_ID,

DCMI_AICORE_BASE_FREQ_ID,

DCMI_NPU_DDR_FREQ_ID,

DCMI_THERMAL_THRESHOLD_ID,

DCMI_NTC_TEMP_ID,

DCMI_SOC_TEMP_ID,

DCMI_FP_TEMP_ID,

DCMI_N_DIE_TEMP_ID,

DCMI_HBM_TEMP_ID,

DCMI_SENSOR_INVALID_ID = 255

};

指定传感器索引,具体如下值:

0:DCMI_CLUSTER_TEMP_ID,表示CLUSTER温度;返回值对应输出联合体中的uchar成员;

1:DCMI_PERI_TEMP_ID,表示PERI温度;返回值对应输出联合体中的uchar成员;

2:DCMI_AICORE0_TEMP_ID,表示AICORE0温度;返回值对应输出联合体中的uchar成员;

3:DCMI_AICORE1_TEMP_ID,表示AICORE1温度;返回值对应输出联合体中的uchar成员;

4:DCMI_AICORE_LIMIT_ID,AICORE限核状态返回结果是0,不限核返回结果是1;返回值对应输出联合体中的uchar成员;

5:DCMI_AICORE_TOTAL_PER_ID,表示AICORE脉冲总周期;返回值对应输出联合体中的uchar成员;

6:DCMI_AICORE_ELIM_PER_ID,表示AICORE可消除周期;返回值对应输出联合体中的uchar成员;

7:DCMI_AICORE_BASE_FREQ_ID,表示AICORE基准频率MHz;返回值对应输出联合体中的ushort成员;

8:DCMI_NPU_DDR_FREQ_ID,表示DDR频率单位MHz;返回值对应输出联合体中的ushort成员;

9:DCMI_THERMAL_THRESHOLD_ID,返回值对应输出联合体中的temp[2]成员;temp[0]为温饱限频温度,temp[1]为系统复位温度;

10:DCMI_NTC_TEMP_ID,返回值对应输出联合体中的ntc_tmp[4]成员;ntc_tmp[0] ntc_tmp[1] ntc_tmp[2] ntc_tmp[3]分别对应四个热敏电阻温度。

11:DCMI_SOC_TEMP_ID,表示SOC最高温;返回值对应输出联合体中的uchar成员;

12:DCMI_FP_TEMP_ID,表示光模块最高温度;返回值对应输出联合体中的signed int iint成员;

13:DCMI_N_DIE_TEMP_ID,表示N_DIE温度;返回值对应输出联合体中的signed int iint成员;

14:DCMI_HBM_TEMP_ID,表示片上内存最高温度;返回值对应输出联合体中的signed int iint成员。

该场景支持11~14。

sensor_info

输出

union dcmi_sensor_info *

返回传感器结构体信息:

union dcmi_sensor_info {

unsigned char uchar;

unsigned short ushort;

unsigned int uint;

signed int iint;

signed char temp[DCMI_SENSOR_TEMP_LEN];

signed int ntc_tmp[DCMI_SENSOR_NTC_TEMP_LEN];

unsigned int data[DCMI_SENSOR_DATA_MAX_LEN];

};

返回值说明

类型

描述

int

处理结果:

  • 成功:返回0。
  • 失败:返回码请参见return_codes。

异常处理

无。

约束说明

表 1不同部署场景下的支持情况

产品形态

物理机场景(裸机)root用户

物理机场景(裸机)运行用户组(非root用户)

物理机+普通容器场景root用户

Atlas 900 A2 PoD 集群基础单元

Y

Y

Y

Atlas 800T A2 训练服务器

Y

Y

Y

Atlas 800I A2 推理服务器

Y

Y

Y

Atlas 200T A2 Box16 异构子框

Y

Y

Y

A200I A2 Box 异构组件

Y

Y

Y

Atlas 300I A2 推理卡

Y

Y

Y

Atlas 300T A2 训练卡

Y

Y

Y

注:Y表示支持;N表示不支持;NA表示不涉及,当前未规划此场景。

调用示例

… int ret = 0; int card_id = 0; int device_id = 0; enum dcmi_manager_sensor_id sensor_id = DCMI_CLUSTER_TEMP_ID; union dcmi_sensor_info sensor_info = {0}; ret = dcmi_get_device_sensor_info(card_id, device_id, sensor_id, &sensor_info); if (ret != 0){ //todo:记录日志 return ret; } …

【免费下载链接】driver本项目是CANN提供的驱动模块,实现基础驱动和资源管理及调度等功能,使能昇腾芯片。项目地址: https://gitcode.com/cann/driver

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/10 3:34:35

Go微服务:微服务架构设计模式详解

Go微服务:微服务架构设计模式详解 1. 微服务架构概述 微服务架构是一种将单一应用程序划分为一组小服务的设计方法,每个服务运行在独立进程中,通过轻量级协议通信。微服务架构提供了更好的可扩展性、可维护性和技术灵活性。 2. 常见设计模式 …

作者头像 李华
网站建设 2026/5/10 3:32:43

Godot引擎动态库存系统设计:MVC架构与模块化实现

1. 项目概述:一个为Godot引擎量身定制的动态库存系统如果你正在用Godot引擎开发RPG、生存冒险或者模拟经营类游戏,那么“库存系统”这个功能点,大概率是你绕不过去的一道坎。它看似简单——不就是个背包,能放东西、能拿东西吗&…

作者头像 李华
网站建设 2026/5/10 3:31:40

多AI代理协同编码框架:结构化工作空间解决单代理上下文崩溃

1. 项目概述:一个为多AI代理协同编码而生的结构化工作空间如果你和我一样,在过去一年里深度使用过Claude Code、Cursor或者GitHub Copilot这类AI编程助手,那你一定经历过这种“甜蜜的烦恼”:你给AI一个复杂的任务,比如…

作者头像 李华
网站建设 2026/5/10 3:29:18

艾萨克·牛顿的故事

五一小长假这几天看的书里面提到费曼学习法,之前也从其他书籍中了解过一些相关内容,就打算去找找费曼先生的书。昨天(5月8日)下午,在要找的书附近注意到有《牛顿传》,就取了出来。之所以注意到《牛顿传》&a…

作者头像 李华
网站建设 2026/5/10 3:22:38

Backtrader项目模板:标准化量化回测工程实践指南

1. 项目概述:一个为量化交易者准备的“开箱即用”工具箱如果你在量化交易这条路上摸索过一段时间,大概率听说过或者用过 Backtrader。它是一个功能强大、基于 Python 的回测框架,以其灵活性和事件驱动的架构著称。但它的强大也伴随着一定的复…

作者头像 李华