SystemInformationRVC4
SystemInformationRVC4 扩展自 SystemInformation,增加了基于 RVC4 平台的 OAK 设备特有的遥测数据。当应用在 RVC4 硬件上运行时,SystemLogger 节点会发布此消息,包含 CPU 平均值、进程级别的 CPU 和内存使用情况,以及 RVC4 子系统的扩展温度传感器数据。使用此消息的方式与 SystemInformation 完全相同:订阅 SystemLogger.out,或通过 MessageGroup 将数据转发至主机。运行时可以检查 chipTemperature、ddrMemoryUsage、cpuAvgUsage 以及进程级别的使用字段,以监控设备健康状况。示例
Python
1import depthai as dai
2
3def printSystemInformationRVC4(info: dai.SystemInformationRVC4):
4 m = 1024 * 1024 # MiB
5 print(f"Ddr 已用 / 总计 - {info.ddrMemoryUsage.used / m:.2f} / {info.ddrMemoryUsage.total / m:.2f} MiB")
6 print(f"平均 CPU 使用率: {info.cpuAvgUsage.average * 100:.2f}%")
7 print(f"设备进程使用情况 - 内存: {info.processMemoryUsage / 1024:.2f} MiB, CPU: {info.processCpuAvgUsage.average * 100:.2f}%")
8
9 t = info.chipTemperature
10 print(f"芯片温度 - 平均: {t.average:.2f}, cpuss: {t.cpuss:.2f}, gpuss: {t.gpuss:.2f}, mdmss: {t.mdmss:.2f}, 视频: {t.video:.2f}, ddr: {t.ddr:.2f}, 摄像头: {t.camera:.2f}")
11 print("----------------------------------------")
12
13pipeline = dai.Pipeline()
14sysLog = pipeline.create(dai.node.SystemLogger)
15sysLog.setRate(1)
16sysLogQueue = sysLog.out.createOutputQueue(maxSize=4, blocking=False)
17
18pipeline.start()
19while pipeline.isRunning():
20 sysInfo = sysLogQueue.get()
21 printSystemInformationRVC4(sysInfo)参考文档
class
dai::SystemInformationRVC4
variable
MemoryInfo ddrMemoryUsage
variable
int64_t processMemoryUsage
variable
CpuUsage cpuAvgUsage
variable
CpuUsage processCpuAvgUsage
variable
std::vector< CpuUsage > cpuUsages
variable
ChipTemperatureRVC4 chipTemperature
function
SystemInformationRVC4()function
~SystemInformationRVC4()function
void serialize(std::vector< std::uint8_t > & metadata, DatatypeEnum & datatype)inline function
DatatypeEnum getDatatype()function
DEPTHAI_SERIALIZE(SystemInformationRVC4, ddrMemoryUsage, processMemoryUsage, cpuAvgUsage, processCpuAvgUsage, cpuUsages, chipTemperature)需要帮助?
请前往 OAKChina 官网 获取技术支持或解答您的任何疑问。