内存占用与监控方式介绍

1.内存占用

神经网络模型常见的内存占用可以分为以下几个部分:

1.1 模型参数内存

  • 定义:神经网络的权重和偏置等参数会占用内存。
  • 计算方法:
    • 参数总量 = 各层参数数量的总和。
    • 每个参数的大小取决于数据类型(如 float32 为 4 字节,float16 为 2 字节,int8 为 1 字节)。
  • 公式: 参数内存=参数总数×每个参数的字节数
  • 示例: 一个全连接层 输入维度=1024,输出维度=512,数据类型为 float32,则: 参数量=1024×512+512 (偏置项)=524,800 参数内存: 524,800×4 Bytes≈2.1 MB

1.2 激活内存

  • 定义:网络各层的中间结果(激活)占用内存。
  • 计算方法:
    • 激活值总量 = 每层输出的维度之和。
    • 数据类型通常与模型参数一致(如 float32)。
  • 公式: 激活内存=每层激活值数量×每个激活值的字节数
  • 示例: 卷积层:输入特征图大小为 64×64(宽 × 高),通道数为 128,输出通道数为 256,假设数据类型为 float32,则: 激活内存大小=64×64×256×4 (Bytes)=4MB

1.3 数据存储内存

  • 输入数据:
    • 输入数据占用内存,根据输入维度计算。
    • 示例:输入大小为 32×3×224×224,数据类型为 float32:32×(3×224×224)×4≈19MB
  • 输出数据:
    • 模型输出也需要占用内存,占用情况同输入。

2.征程 6 模型推理内存分析

模型推理过程中的内存占用来自三个方面, input tensor memory + output tensor memory + model memoy,其中 model memory 主要是模型文件 size + 运行时指令运行时所需的内存(如从 SRAM 换出所需),可以等效理解为第一节介绍的模型参数内存+激活内存。

此外,模型加载过程中 runtime 将申请额外的内存用于模型的解析,该申请的内存在初始化完成后释放。

3.征程 6 模型推理内存监控

OpenExplorer 中提供的 hrt_ucp_monitor 支持监控内存信息,下面我们来看一下 hrt_ucp_monitor 监控内存的用法示例。

工具准备:将工具链 OpenExplorer 开发包中 hrt_ucp_monitor 传到开发板上即可。

工具使用:运行 hrt_ucp_monitor 时,如果不指定参数,则使用默认参数运行。默认开启所有硬件 IP 监控,以交互模式运行, BPU 和 DSP 每秒采样 500 次,硬件 IP 占用率每 1000ms 刷新一次。如果想要修改,可以参考工具链的用户手册,或运行 hrt_ucp_monitor -h 获取工具的使用详情。

3.1 无模型推理

在终端运行命令:hrt_ucp_monitor,可以看到板端预留 4.5G 内存。

有两个地方需要专门解释一下:

1.ION(Ion Memory Allocator)共享内存管理

ION 是 google 在 Android4.x 为了解决内存碎片化管理而引入的通用内存管理器,用来支持不同的内存分配机制,如 CARVOUT(PMEM),物理连续内存(kmalloc),虚拟地址连续但物理地址不连续内存(vmalloc),IOMMU 等。

ION Info 还包括一些系统以及核间通信的占用,并不是模型本身的占用

2.HBMEM(Hobot Memory Management)地平线内存管理模块

HBMEM,是一个地平线自研的内存管理软件,用于解决 Linux 内核无法很好的支持预留内存的管理,以及应用与驱动之间的内存共享的问题。

3.2 有模型推理

在 A 终端运行程序,在 B 终端运行命令:hrt_ucp_monitor,即可看到对应的监控信息:

可以看到,模型推理时,主要是 carveout 的内存,也可以使用如下命令查看内存使用情况:

cat /sys/kernel/debug/ion/heaps/carveout

查看对应进程的占用即可

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/880937.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

WebGPU 版 Kokoro:浏览器端零成本使用高质量 TTS;苹果 ELEGNT 台灯机器人:赋予非人形机器人「情感」

开发者朋友们大家好:这里是 「RTE 开发者日报」 ,每天和大家一起看新闻、聊八卦。我们的社区编辑团队会整理分享 RTE(Real-Time Engagement) 领域内「有话题的 新闻 」、「有态度的 观点 」、「有意思的 数据 」、「有思考的 文章 」、「有看点的 会议 」,但内容仅代表编辑…

尝试使用阿里云计算巢部署 DeepSeek-R1

记录一下用阿里云计算巢部署 DeepSeek-R1 的经过。进入阿里云计算巢控制台的服务目录,选择 DeepSeek 社区版,点击「开始部署」,选择最便宜的 ECS 实例 GRID 虚拟化4核30G,费用是 1.748/小时。点击「立即创建」,然后控制台会显示正在部署的状态。部署完成后,控制台会显示公…

未来已来:云手机+AI如何重塑Facebook、Google的智能营销生态

未来已来:云手机+AI如何重塑Facebook、Google的智能营销生态 在数字化浪潮奔涌的当下,科技融合正以令人惊叹的速度重塑各个行业,智能营销领域更是首当其冲。云手机与AI自动化工具的深度融合,为Facebook、Google构建的庞大智能营销生态带来了颠覆性的变革,开拓出全新的发展…

Burp Suite 2024激活汉化

转载自https://blog.csdn.net/m0_52985087/article/details/140299827 前言在项目即将上线阶段,迈入生产环境之际,确保其安全性成为我们不可忽视的首要任务。为筑起一道坚不可摧的安全防线,我们借助业界公认的网络安全利器——Burp Suite,我们将展开一场全面的安全测试,旨…

清华权威出品!104页《DeepSeek从入门到精通》免费领,解锁AI时代的核心竞争力!

引言: 在AI技术席卷全球的今天,如何高效驾驭大模型工具已成为个人与企业脱颖而出的关键。清华大学新闻与传播学院新媒体研究中心元宇宙文化实验室余梦珑博士后团队倾力打造的《DeepSeek从入门到精通》电子书重磅发布!全书104页,从基础操作到高阶技巧,手把手教你玩转国产顶…

win11家庭中文版登录应用提示:“为了对电脑进行保护,已经阻止此应用”

1.家庭中文版组策略里面禁用:以管理员批准模式运行所有管理员 win11打不开组策略,需要复制文本内容到记事本,修改为bat后缀执行 @echo off pushd "%~dp0" dir /b c:\Windows\servicing\Packages\Microsoft-Windows-GroupPolicy-ClientExtensions-Package~3*.mum …

4种比常见的线程池和线程同步买票问题

线程池 所谓的线程池:其实就是线程对象的容器。 可以根据需要,在启动时,创建1个或者多个线程对象。 java中有4种比较常见的线程池。 1.固定数量的线程对象。 2.根据需求动态创建线程:动态创建线程:根据需求来创建线程的个数,会自动给我们分配合适的线程个数来完成任务。 3.…

12. Makefile文件

一、什么是Makefile文件Makefile 文件时一种用于管理和自动化软件编译过程的文本文件。它通常包含了一系列规则,这些规则描述了如何根据源代码文件生成可执行文件或者其它目标文件。Makefile 的核心概念是规则和依赖关系,规则定义了如何生成一个或多个目标文件,而依赖关系则…

busybox 设置登录用户名及密码

1、配置 busybox2、替换新的 /bin/busybox,建立 /bin/login、/sbin/getty 软链接ln -sf /bin/busybox ./bin/login ln -sf /bin/busybox ./sbin/getty3、设置 /etc/inittab 不需要登录:ttyS0::respawn:/bin/ash -l -i需要登录:ttyS0::respawn:/sbin/getty 115200 ttyS04、设…

DoIP 协议详解

转载:车载以太网DoIP 协议,万字长文详解_doip协议-CSDN博客 一、前言 DoIP(Diagnostic Communication over Internet Protocol) 协议是一种用于汽车诊断通信的协议,它允许通过IP网络(如以太网)进行诊断操作。 DoIP协议的设计初衷是为了解决传统基于CAN (Controller Area N…

2025:白手起家,两娃的爸准备创业

前言 2024年陆陆续续听到老东家几个同事被裁的消息,倒有些后悔2023年自己主动提出离职,结束北漂回老家。算了下,损失个小几十万。 2024年6月份来了一场彻彻底底的自我反思,找不到明确目标,于是稀里糊涂定了两个计划:每天读书,围绕技术、文学、创业类。 粉丝数涨到150。工…