TI中文支持网
TI专业的中文技术问题搜集分享网站

AM3352内存有瓶颈?

1.SAM9263(ARM926EJ-S)运行于200MHZ,32BIT SDRAM,其时钟是100MHZ,在Linux2.6下用bw_mem测试内存带宽:
runLmDDRBandwidth.sh
BANDWIDTH MEASUREMENTS

(MB)  (MB/s)
—————
bw_mem 1M rd
1.05194.36
bw_mem 1M rdwr
1.05 91.31
bw_mem 1M cp
1.05 142.90
bw_mem 1M frd
1.05 139.38
bw_mem 1M fcp
1.05 86.03
bw_mem 1M bzero
1.05164.84
bw_mem 1M bcopy
1.05 92.32

1.AM3352运行于300MHZ,VDDCORE = 1.1V,VDDMPU = 1.2V, 16BIT DDR2 RAM,其时钟是266MHZ,在Linux3.2下用bw_mem测试内存带宽:
root@am335x-evm:~# runLmDDRBandwidth.shBANDWIDTH MEASUREMENTS
 
(MB)  (MB/s)
—————
bw_mem 1M rd
1.00181.42
bw_mem 1M rdwr
1.00 152.58
bw_mem 1M cp
1.00 149.68
bw_mem 1M frd
1.00 157.70
bw_mem 1M fcp
1.00 136.41
bw_mem 1M bzero
1.00 595.86
bw_mem 1M bcopy
1.00 199.92
3.上述结果简要对比
                             AM3352 @300MHZ        SAM9263@200MHZ
                             16BIT 266MHZ DDR2     32BIT 100MHZ SDRAM
bw_mem 1M rd          181.42 MB/s                    194.36 MB/s
bw_mem 1M bzero     595.86 MB/s                    164.84 MB/s
我们的问题:
16BIT 266MHZ DDR2的理论带宽是266Mx16x2 BIT/s=8512 M BIT/s
32BIT 100MHZ SDRAM的理论带宽是100Mx32 BIT/s=3200 M BIT/s
AM3352的内存带宽是SAM9263的2.66倍,但为何AM3352的bw_mem 1M rd的性能那么弱,以至于:
(1)比SAM9263的还低一些?
(2)仅是bw_mem 1M bzero的1/3?
我们的代码从SAM9263平台迁移到AM3352平台后,测试整体性能时,发现300MHZ的AM3352和200MHZ的SAM9263相当,我们认为这是不合理的,因此我们怀疑整体性能低下跟AM3352的bw_mem 1M rd的性能极弱有关,期待TI FAE能帮助分析原因,性能提升的瓶颈出在哪里。
Gary Wu:

你好!

如下链接中有AM335X@720M DDR2@266MHz下的测试数据:http://e2e.ti.com/support/arm/sitara_arm/f/791/p/187926/707626

 Test Name
Units
Linux PSP 04.06.00.07

bw_mem-rd-1MB
MB/s
244.82

YanChang Liang:

回复 Gary Wu:

我知道你给的这个链接的数据,这个数据我也能复现出来,但我的问题不是问720MHZ下的性能如何,我的问题是:

1.为什么300MHZ下bw_mem-rd-1MB这个值很低,跟一个200MHZ的SAM9263的相比还低

2.为何bw_mem-rd-1MB与bw_mem-bzero-1MB差别那么大,前者是纯粹的读内存,后者是纯粹的写内存。

3.为何300MHZ的AM3352整体性能和SAM9263的性能相近?瓶颈在哪里?我们认为瓶颈跟读内存慢有关系,TI会如何回应这个问题?

Jian Zhou:

回复 YanChang Liang:

梁工:

这个问题需要进一步咨询下我们美国同事,您可以基于那个e2e帖子提这个问题,同时我们会把那个帖子通过邮件highlight给我们美国同事

user4467014:

回复 Jian Zhou:

我也遇到类似问题:
AM335x裸机开发: 读DDR为什么比写慢很多?开发硬件: AM3352,SPI0.SPIFLASH,DDR3@400MHz/800MTS;
开发软件: CCS; 参考AM335X_StarterWare,建立CCS裸机工程;SPL工程加载APP工程到DDR里运行;
已经使能MMU,打开CACHE(包含L2开启);DDR也cache使能;
测试结果: 读DDR比写DDR要慢很多;
测试流程:16M字节DDR,连续测试10次; 分正序(cache命中高)和倒序(cache命中低)测试;
测试结果:发现读DDR比写DDR要慢很多?

详见:e2echina.ti.com/…/173681

赞(0)
未经允许不得转载:TI中文支持网 » AM3352内存有瓶颈?
分享到: 更多 (0)