专栏算法工具链DDR带宽的计算与监控

DDR带宽的计算与监控

Jade-self2024-12-06
236
1

DDR带宽(Double Data Rate Bandwidth)是指DDR内存在一秒内可以传输的数据量,通常以 GB/s(Gigabytes per second) 为单位。它是衡量内存系统性能的重要指标,直接影响系统的数据吞吐能力。

1. 如何计算DDR带宽


计算DDR理论带宽的公式为:


其中,位宽 (bit width)指的是内存总线的位宽,例如64位、128位、16bit、32bit等,bit意为"位"或"比特"。

主频指的是DDR内存的实际主频,而不是DDR内存的倍频频率。因此,在计算理论带宽时,需要将DDR主频和位宽相乘即可。例如,以2400MHz主频,64bit位宽为例,计算公式为:


这里的Mbit/s指的是兆比特每秒,MB/s指的是兆字节每秒,GB/s指的是千兆字节每秒。


需要注意的是,这里的理论带宽是指DDR内存的最大传输速率,实际带宽会受到多种因素的影响,例如内存控制器效率、内存延迟等。


2. DDR data rate和DDR主频

DDR data rate和DDR主频是一个意思吗?


DDR data rate和DDR主频不是一个意思。DDR data rate指的是内存传输数据的速率,单位通常为Mbps。

DDR主频指的是内存控制器的时钟频率,单位是MHz。

两者之间的关系是DDR data rate = DDR主频 * 2,例如DDR4-3200内存的DDR data rate为3200Mbps,而DDR主频为1600MHz。

这个“2”哪来的?接着往下看。


3. Mbps和Mhz

Mbps和Mhz是一个意思吗?


Mbps和MHz不是一个意思。Mbps指的是数据传输速率,即每秒传输的数据量,单位为兆比特每秒。而MHz指的是时钟频率,即每秒钟的时钟周期数,单位为兆赫兹。

在DDR内存中,数据传输是在时钟周期的上升沿和下降沿都进行一次采样,因此DDR data rate是DDR主频的两倍。

4. 带宽计算示例

bit width,2x32bit,max data rate 8567Mbps

问DDR带宽是多少?

5. J6上实测带宽占用情况

带宽占用可以拆分为三类来源:VIO 视频通路带宽占用、BPU 算法模型带宽占用、CPU 应用程序带宽占用,地平线提供的带宽监测工具hrut_ddr或hrt_ucp_monitor支持以一定的频率抓取DDR实时的数据,通过对数据进行统计分析得到整体带宽的平均占用和峰值占用,以及各个模块的带宽占用。下面我们来看一下hrt_ucp_monitor监控带宽的用法示例。

hrt_ucp_monitor 是一个监控硬件 IP 占用率和内存信息的工具。支持的内存信息包括DDR读写带宽,ION内存,进程内存。考虑到本文的主题,我们只关注DDR读写带宽的情况。

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

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

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

Description
算法工具链
社区征文技术深度解析征程6杂谈
+1
评论1
0/1000
  • bopk
    Lv.1

    j5的理想带宽是多少呢

    2025-08-20
    0
    0