AnsweredAssumed Answered

imx6 memory bandwidth problem

Question asked by ericb on Jul 2, 2013
Latest reply on Jul 23, 2013 by Yuri Muhin
Branched to a new discussion

Dear all,


The performances of my video processing project by imx6 seem to be limited by by the memory bandwidth.

I have benchmarked the memory bandwidth and the result is just 10% of the theoretical value.


Configuration 1:

Freescale SABRE board (MCIMX6Q-SDB)

Memory. 1 GB DDR3 SDRAM up to 533 MHz (1066 MTPS)

Ubuntu L3.0.35_1.1.0_121218


Configuration 2:

BoundaryDevices Nitrogen6X

Memory 1GBytes of 64-bit wide DDR3 @ 532MHz

Ubuntu L3.0.35_4.0.0_UBUNTU_RFS / or LTIB 4.0.0 / or Original Demo SD


Theoretical memory bandwidth:

DDR3 1066 x 64 bits = > 1066*8 = 8528 MB/s


Measured memory bandwidth:

I use the mbw tool.  I have checked the source, and the memcpy method is the 1 (0 is loop 'for', and 2 is a small mem block cached).


# mbw -t1 100

AVG     Method: DUMB    Elapsed: 0.24973        MiB: 100.00000  Copy: 400.426 MiB/s


This 'memcpy' reads and writes the memory, and the real memory bandwidth is 2x400 = 800 MB/s, just 10% of the theoretical value.

I made my own memory test project, and the results are equivalent.


I guess the display used part of memory bandwidth, but where is the other 90% memory bandwidth ?

If this result is normal, this limitation stop my project.


Is there any ideas to help me go on?

Thank you very much.