DDR Memory Bandwidth¶
Introduction¶
This wiki page summarizes the results of memory bandwidth usage measurements for the MitySOM-iMX6.
Freescale Profiling tool¶
The profiling tool (based on software originally provided by Freescale/NXP) used to conduct these tests, is available in a git repository. Once compiled for the i.MX6 processor, the following line was used to run the profiling tool on the target device.
MMDC_LOOPCOUNT=1 ./mmdc_profile
where the argument MMDC_LOOPCOUNT controls the number of iterations that are performed.
Results¶
The SMARC Development Board was connected to a 1080p monitor via HDMI. Within U-Boot the output resolution was changed to two different values for testing, 1280x720@60 and 1920x1080@60.
Summary of Results¶
- When idle, 1920x1080@60 output has 2.25x (475.06/211.5) the memory throughput of the 1280x720@60 output.
- While playing back the 1080p video in the two outputs, the 1920x1080@60 output has 1.60x (2018.3/1258.47) the memory throughput of the 1280x720@60 output.
- Comparing the two video qualities both played on the 1920x1080@60 output, the 1080p video has 1.39x the memory throughput of the 720p video.
Total memory throughput, where the output is the video output settings from U-Boot.
1920x1080@60 Output | 1280x720@60 Output | |
Idle | 475.06 MB/s | 211.50 MB/s |
720p video playback | 1456.47 MB/s | 640.16 MB/s |
1080p video playback | 2018.30 MB/s | 1258.47 MB/s |
Results for Idle Testing¶
- For 1920x1080@60 display
MMDC new Profiling results: *********************** Measure time: 1000ms Total cycles count: 528094008 Busy cycles count: 165947593 Read accesses count: 7788358 Write accesses count: 2086 Read bytes count: 498075544 Write bytes count: 63856 Avg. Read burst size: 63 Avg. Write burst size: 30 Read: 475.00 MB/s / Write: 0.06 MB/s Total: 475.06 MB/s Utilization: 18% Bus Load: 31% Bytes Access: 63
- For 1280x720@60 display
MMDC new Profiling results: *********************** Measure time: 1000ms Total cycles count: 528094072 Busy cycles count: 87463770 Read accesses count: 3472339 Write accesses count: 3454 Read bytes count: 221670378 Write bytes count: 101112 Avg. Read burst size: 63 Avg. Write burst size: 29 Read: 211.40 MB/s / Write: 0.10 MB/s Total: 211.50 MB/s Utilization: 15% Bus Load: 16% Bytes Access: 63
Results during video playback¶
Two video files of Big Buck Bunny were used for testing the video playback performance, one 720p the other 1080p. Both were tested with the output resolutions set to 1280x720@60 and 1920x1080@60, resulting in 4 total tests.
md5sum | Filename | Quality | Source |
54673faa68059667f58edb0f96a70d9d | BigBuckBunny_512kb.mp4 | 720p | https://archive.org/download/BigBuckBunny_328/BigBuckBunny_512kb.mp4 |
f6966535944c9b0170d85e29a42e0997 | BigBuckBunny-DivXPlusHD.mkv | 1080p | http://www.divx.com/en/big-buck-bunny |
- 1080p Output playing 1080p video
*********************** Measure time: 1001ms Total cycles count: 528070784 Busy cycles count: 450213356 Read accesses count: 30939416 Write accesses count: 13677743 Read bytes count: 1367557202 Write bytes count: 750902728 Avg. Read burst size: 44 Avg. Write burst size: 54 Read: 1302.90 MB/s / Write: 715.40 MB/s Total: 2018.30 MB/s Utilization: 29% Bus Load: 85% Bytes Access: 47
- 1080p Output playing 720p video
MMDC new Profiling results: *********************** Measure time: 1000ms Total cycles count: 528069872 Busy cycles count: 312113173 Read accesses count: 16109126 Write accesses count: 9456761 Read bytes count: 940488994 Write bytes count: 586733872 Avg. Read burst size: 58 Avg. Write burst size: 62 Read: 896.92 MB/s / Write: 559.55 MB/s Total: 1456.47 MB/s Utilization: 30% Bus Load: 59% Bytes Access: 59
- 720p Output playing 1080p video
MMDC new Profiling results: *********************** Measure time: 1000ms Total cycles count: 528066072 Busy cycles count: 348638608 Read accesses count: 23259473 Write accesses count: 8661722 Read bytes count: 891707804 Write bytes count: 427897728 Avg. Read burst size: 38 Avg. Write burst size: 49 Read: 850.40 MB/s / Write: 408.08 MB/s Total: 1258.47 MB/s Utilization: 23% Bus Load: 66% Bytes Access: 41
- 720p Output playing 720p video
MMDC new Profiling results: *********************** Measure time: 1000ms Total cycles count: 528074112 Busy cycles count: 167453726 Read accesses count: 7638605 Write accesses count: 4100168 Read bytes count: 425207622 Write bytes count: 246045024 Avg. Read burst size: 55 Avg. Write burst size: 60 Read: 405.51 MB/s / Write: 234.65 MB/s Total: 640.16 MB/s Utilization: 25% Bus Load: 31% Bytes Access: 57
Go to top