嵌入式实操-基于RT1170 移植mbw做SDRAM带宽测试(三十一)

本文主要是通过迁移的思维,记录本人初次使用NXP MCUXpresso SDK API进行BSP开发

1. 移植来源

reference:GitHub - raas/mbw: Memory Bandwidth Benchmark

https://github.com/JayHeng/cortex-m-apps
由于RT1170上面没有SDRAM的带宽测试工具,所以通过移植mbw工程至SoC,用于SDRAM的测量。

2. 应用

2.1 Linux平台移植应用

root@iZuf6anc2b2vgfvms9d7elZ:~# git clone https://github.com/raas/mbw.gitCloning into 'mbw'...remote: Enumerating objects: 113, done.remote: Counting objects: 100% (28/28), done.remote: Compressing objects: 100% (22/22), done.remote: Total 113 (delta 12), reused 13 (delta 6), pack-reused 85Receiving objects: 100% (113/113), 27.80 KiB | 9.27 MiB/s, done.Resolving deltas: 100% (55/55), done.root@iZuf6anc2b2vgfvms9d7elZ:~# cd mbw/root@iZuf6anc2b2vgfvms9d7elZ:~/mbw# lsCMakeLists.txt  Makefile  mbw.1  mbw.c  mbw.spec  READMEroot@iZuf6anc2b2vgfvms9d7elZ:~/mbw# makecc     mbw.c   -o mbwroot@iZuf6anc2b2vgfvms9d7elZ:~/mbw# lsCMakeLists.txt  Makefile  mbw  mbw.1  mbw.c  mbw.spec  READMEroot@iZuf6anc2b2vgfvms9d7elZ:~/mbw# ./mbw --help./mbw: invalid option -- '-'mbw memory benchmark v1.5, https://github.com/raas/mbwUsage: mbw [options] array_size_in_MiBOptions:        -n: number of runs per test (0 to run forever)        -a: Don't display average        -t0: memcpy test        -t1: dumb (b[i]=a[i] style) test        -t2: memcpy test with fixed block size        -b : block size in bytes for -t2 (default: 262144)        -q: quiet (print statistics only)(will then use two arrays, watch out for swapping)'Bandwidth' is amount of data copied over the time this operation took.The default is to run all tests available.root@iZuf6anc2b2vgfvms9d7elZ:~/mbw# ./mbw -q -n 1 2560       Method: MEMCPY  Elapsed: 0.29554        MiB: 256.00000  Copy: 866.220 MiB/sAVG     Method: MEMCPY  Elapsed: 0.29554        MiB: 256.00000  Copy: 866.220 MiB/s0       Method: DUMB    Elapsed: 0.54065        MiB: 256.00000  Copy: 473.501 MiB/sAVG     Method: DUMB    Elapsed: 0.54065        MiB: 256.00000  Copy: 473.501 MiB/s0       Method: MCBLOCK Elapsed: 0.34296        MiB: 256.00000  Copy: 746.438 MiB/sAVG     Method: MCBLOCK Elapsed: 0.34296        MiB: 256.00000  Copy: 746.438 MiB/s-n 10表示运行1次,256表示测试所用的内存大小,单位为MB。mbw测试了MEMCPY、DUMB、MCBLOCK等方式的内存带宽。

复制mbw目前至工程


将相关文件添加入工程当中


将添加相关的头文件路径:


增加相关的测试代码如下:


主要的移植工作还是参考他人的修改,理解其中的原理,换到别的平台上面一样可以实现的。
测试日记:

CPU 800M SDRAM 163M  512K0       Method: MEMCPY  Elapsed: 0.00806        MiB: 0.50000    Copy: 62.012 MiB/s1       Method: MEMCPY  Elapsed: 0.00789        MiB: 0.50000    Copy: 63.379 MiB/s2       Method: MEMCPY  Elapsed: 0.00789        MiB: 0.50000    Copy: 63.379 MiB/s3       Method: MEMCPY  Elapsed: 0.00763        MiB: 0.50000    Copy: 65.514 MiB/s4       Method: MEMCPY  Elapsed: 0.00768        MiB: 0.50000    Copy: 65.138 MiB/s5       Method: MEMCPY  Elapsed: 0.00767        MiB: 0.50000    Copy: 65.215 MiB/s6       Method: MEMCPY  Elapsed: 0.00765        MiB: 0.50000    Copy: 65.342 MiB/s7       Method: MEMCPY  Elapsed: 0.00763        MiB: 0.50000    Copy: 65.496 MiB/s8       Method: MEMCPY  Elapsed: 0.00760        MiB: 0.50000    Copy: 65.781 MiB/s9       Method: MEMCPY  Elapsed: 0.00773        MiB: 0.50000    Copy: 64.650 MiB/sAVG     Method: MEMCPY  Elapsed: 0.00774        MiB: 0.50000    Copy: 64.569 MiB/s0       Method: DUMB    Elapsed: 0.00764        MiB: 0.50000    Copy: 65.454 MiB/s1       Method: DUMB    Elapsed: 0.00759        MiB: 0.50000    Copy: 65.841 MiB/s2       Method: DUMB    Elapsed: 0.00769        MiB: 0.50000    Copy: 65.028 MiB/s3       Method: DUMB    Elapsed: 0.00763        MiB: 0.50000    Copy: 65.557 MiB/s4       Method: DUMB    Elapsed: 0.00758        MiB: 0.50000    Copy: 65.946 MiB/s5       Method: DUMB    Elapsed: 0.00766        MiB: 0.50000    Copy: 65.283 MiB/s6       Method: DUMB    Elapsed: 0.00767        MiB: 0.50000    Copy: 65.189 MiB/s7       Method: DUMB    Elapsed: 0.00764        MiB: 0.50000    Copy: 65.479 MiB/s8       Method: DUMB    Elapsed: 0.00767        MiB: 0.50000    Copy: 65.189 MiB/s9       Method: DUMB    Elapsed: 0.00765        MiB: 0.50000    Copy: 65.377 MiB/sAVG     Method: DUMB    Elapsed: 0.00764        MiB: 0.50000    Copy: 65.433 MiB/s0       Method: MCBLOCK Elapsed: 0.00766        MiB: 0.50000    Copy: 65.266 MiB/s1       Method: MCBLOCK Elapsed: 0.00769        MiB: 0.50000    Copy: 65.028 MiB/s2       Method: MCBLOCK Elapsed: 0.00767        MiB: 0.50000    Copy: 65.198 MiB/s3       Method: MCBLOCK Elapsed: 0.00765        MiB: 0.50000    Copy: 65.325 MiB/s4       Method: MCBLOCK Elapsed: 0.00761        MiB: 0.50000    Copy: 65.746 MiB/s5       Method: MCBLOCK Elapsed: 0.00772        MiB: 0.50000    Copy: 64.784 MiB/s6       Method: MCBLOCK Elapsed: 0.00760        MiB: 0.50000    Copy: 65.764 MiB/s7       Method: MCBLOCK Elapsed: 0.00766        MiB: 0.50000    Copy: 65.240 MiB/s8       Method: MCBLOCK Elapsed: 0.00764        MiB: 0.50000    Copy: 65.428 MiB/s9       Method: MCBLOCK Elapsed: 0.00759        MiB: 0.50000    Copy: 65.894 MiB/sAVG     Method: MCBLOCK Elapsed: 0.00765        MiB: 0.50000    Copy: 65.365 MiB/sCPU 800M SDRAM 163M 32M0       Method: MEMCPY  Elapsed: 0.25758        MiB: 16.00000   Copy: 62.117 MiB/s1       Method: MEMCPY  Elapsed: 0.25740        MiB: 16.00000   Copy: 62.159 MiB/s2       Method: MEMCPY  Elapsed: 0.25724        MiB: 16.00000   Copy: 62.199 MiB/s3       Method: MEMCPY  Elapsed: 0.25724        MiB: 16.00000   Copy: 62.198 MiB/s4       Method: MEMCPY  Elapsed: 0.25732        MiB: 16.00000   Copy: 62.181 MiB/s5       Method: MEMCPY  Elapsed: 0.25723        MiB: 16.00000   Copy: 62.202 MiB/s6       Method: MEMCPY  Elapsed: 0.25717        MiB: 16.00000   Copy: 62.215 MiB/s7       Method: MEMCPY  Elapsed: 0.25723        MiB: 16.00000   Copy: 62.201 MiB/s8       Method: MEMCPY  Elapsed: 0.25718        MiB: 16.00000   Copy: 62.212 MiB/s9       Method: MEMCPY  Elapsed: 0.25718        MiB: 16.00000   Copy: 62.213 MiB/sAVG     Method: MEMCPY  Elapsed: 0.25728        MiB: 16.00000   Copy: 62.190 MiB/s0       Method: DUMB    Elapsed: 0.25719        MiB: 16.00000   Copy: 62.212 MiB/s1       Method: DUMB    Elapsed: 0.25713        MiB: 16.00000   Copy: 62.225 MiB/s2       Method: DUMB    Elapsed: 0.25717        MiB: 16.00000   Copy: 62.215 MiB/s3       Method: DUMB    Elapsed: 0.25717        MiB: 16.00000   Copy: 62.215 MiB/s4       Method: DUMB    Elapsed: 0.25726        MiB: 16.00000   Copy: 62.193 MiB/s5       Method: DUMB    Elapsed: 0.25708        MiB: 16.00000   Copy: 62.237 MiB/s6       Method: DUMB    Elapsed: 0.25718        MiB: 16.00000   Copy: 62.213 MiB/s7       Method: DUMB    Elapsed: 0.25718        MiB: 16.00000   Copy: 62.213 MiB/s8       Method: DUMB    Elapsed: 0.25725        MiB: 16.00000   Copy: 62.197 MiB/s9       Method: DUMB    Elapsed: 0.25711        MiB: 16.00000   Copy: 62.230 MiB/sAVG     Method: DUMB    Elapsed: 0.25717        MiB: 16.00000   Copy: 62.215 MiB/s0       Method: MCBLOCK Elapsed: 0.25722        MiB: 16.00000   Copy: 62.204 MiB/s1       Method: MCBLOCK Elapsed: 0.25727        MiB: 16.00000   Copy: 62.191 MiB/s2       Method: MCBLOCK Elapsed: 0.25711        MiB: 16.00000   Copy: 62.230 MiB/s3       Method: MCBLOCK Elapsed: 0.25728        MiB: 16.00000   Copy: 62.190 MiB/s4       Method: MCBLOCK Elapsed: 0.25721        MiB: 16.00000   Copy: 62.205 MiB/s5       Method: MCBLOCK Elapsed: 0.25714        MiB: 16.00000   Copy: 62.222 MiB/s6       Method: MCBLOCK Elapsed: 0.25722        MiB: 16.00000   Copy: 62.205 MiB/s7       Method: MCBLOCK Elapsed: 0.25716        MiB: 16.00000   Copy: 62.219 MiB/s8       Method: MCBLOCK Elapsed: 0.25717        MiB: 16.00000   Copy: 62.214 MiB/s9       Method: MCBLOCK Elapsed: 0.25724        MiB: 16.00000   Copy: 62.198 MiB/sAVG     Method: MCBLOCK Elapsed: 0.25720        MiB: 16.00000   Copy: 62.208 MiB/skCLOCK_CpuClk clock 798000000  kCLOCK_ArmPll clock 798000000  kCLOCK_SysPll1 clock 1000000000  kCLOCK_SysPll2 clock 528000000  kCLOCK_SysPll3 clock 480000000  kCLOCK_SysPll2Out clock 528000000  kCLOCK_SysPll2Pfd1 clock 327724128  kCLOCK_SysPll3Pfd0 clock 664615368  kCLOCK_Root_Semc clock 163862064  kCLOCK_Root_Flexspi1 clock 132000000  CPU 1000M SDRAM 163M 512K0       Method: MEMCPY  Elapsed: 0.00806        MiB: 0.50000    Copy: 62.019 MiB/s1       Method: MEMCPY  Elapsed: 0.00787        MiB: 0.50000    Copy: 63.500 MiB/s2       Method: MEMCPY  Elapsed: 0.00788        MiB: 0.50000    Copy: 63.492 MiB/s3       Method: MEMCPY  Elapsed: 0.00770        MiB: 0.50000    Copy: 64.935 MiB/s4       Method: MEMCPY  Elapsed: 0.00771        MiB: 0.50000    Copy: 64.859 MiB/s5       Method: MEMCPY  Elapsed: 0.00770        MiB: 0.50000    Copy: 64.901 MiB/s6       Method: MEMCPY  Elapsed: 0.00771        MiB: 0.50000    Copy: 64.868 MiB/s7       Method: MEMCPY  Elapsed: 0.00773        MiB: 0.50000    Copy: 64.658 MiB/s8       Method: MEMCPY  Elapsed: 0.00757        MiB: 0.50000    Copy: 66.033 MiB/s9       Method: MEMCPY  Elapsed: 0.00760        MiB: 0.50000    Copy: 65.764 MiB/sAVG     Method: MEMCPY  Elapsed: 0.00775        MiB: 0.50000    Copy: 64.483 MiB/s0       Method: DUMB    Elapsed: 0.00768        MiB: 0.50000    Copy: 65.121 MiB/s1       Method: DUMB    Elapsed: 0.00765        MiB: 0.50000    Copy: 65.359 MiB/s2       Method: DUMB    Elapsed: 0.00763        MiB: 0.50000    Copy: 65.574 MiB/s3       Method: DUMB    Elapsed: 0.00763        MiB: 0.50000    Copy: 65.531 MiB/s4       Method: DUMB    Elapsed: 0.00760        MiB: 0.50000    Copy: 65.781 MiB/s5       Method: DUMB    Elapsed: 0.00758        MiB: 0.50000    Copy: 65.972 MiB/s6       Method: DUMB    Elapsed: 0.00763        MiB: 0.50000    Copy: 65.496 MiB/s7       Method: DUMB    Elapsed: 0.00758        MiB: 0.50000    Copy: 65.937 MiB/s8       Method: DUMB    Elapsed: 0.00772        MiB: 0.50000    Copy: 64.784 MiB/s9       Method: DUMB    Elapsed: 0.00766        MiB: 0.50000    Copy: 65.308 MiB/sAVG     Method: DUMB    Elapsed: 0.00764        MiB: 0.50000    Copy: 65.484 MiB/s0       Method: MCBLOCK Elapsed: 0.00763        MiB: 0.50000    Copy: 65.505 MiB/s1       Method: MCBLOCK Elapsed: 0.00769        MiB: 0.50000    Copy: 64.977 MiB/s2       Method: MCBLOCK Elapsed: 0.00774        MiB: 0.50000    Copy: 64.599 MiB/s3       Method: MCBLOCK Elapsed: 0.00759        MiB: 0.50000    Copy: 65.894 MiB/s4       Method: MCBLOCK Elapsed: 0.00769        MiB: 0.50000    Copy: 64.986 MiB/s5       Method: MCBLOCK Elapsed: 0.00767        MiB: 0.50000    Copy: 65.189 MiB/s6       Method: MCBLOCK Elapsed: 0.00763        MiB: 0.50000    Copy: 65.505 MiB/s7       Method: MCBLOCK Elapsed: 0.00771        MiB: 0.50000    Copy: 64.885 MiB/s8       Method: MCBLOCK Elapsed: 0.00766        MiB: 0.50000    Copy: 65.317 MiB/s9       Method: MCBLOCK Elapsed: 0.00763        MiB: 0.50000    Copy: 65.539 MiB/sAVG     Method: MCBLOCK Elapsed: 0.00766        MiB: 0.50000    Copy: 65.238 MiB/sCPU 1000M SDRAM 163M 32M0       Method: MEMCPY  Elapsed: 0.25758        MiB: 16.00000   Copy: 62.117 MiB/s1       Method: MEMCPY  Elapsed: 0.25740        MiB: 16.00000   Copy: 62.161 MiB/s2       Method: MEMCPY  Elapsed: 0.25739        MiB: 16.00000   Copy: 62.162 MiB/s3       Method: MEMCPY  Elapsed: 0.25722        MiB: 16.00000   Copy: 62.204 MiB/s4       Method: MEMCPY  Elapsed: 0.25723        MiB: 16.00000   Copy: 62.201 MiB/s5       Method: MEMCPY  Elapsed: 0.25717        MiB: 16.00000   Copy: 62.217 MiB/s6       Method: MEMCPY  Elapsed: 0.25716        MiB: 16.00000   Copy: 62.219 MiB/s7       Method: MEMCPY  Elapsed: 0.25711        MiB: 16.00000   Copy: 62.229 MiB/s8       Method: MEMCPY  Elapsed: 0.25720        MiB: 16.00000   Copy: 62.208 MiB/s9       Method: MEMCPY  Elapsed: 0.25724        MiB: 16.00000   Copy: 62.200 MiB/sAVG     Method: MEMCPY  Elapsed: 0.25727        MiB: 16.00000   Copy: 62.192 MiB/s0       Method: DUMB    Elapsed: 0.25716        MiB: 16.00000   Copy: 62.219 MiB/s1       Method: DUMB    Elapsed: 0.25717        MiB: 16.00000   Copy: 62.217 MiB/s2       Method: DUMB    Elapsed: 0.25711        MiB: 16.00000   Copy: 62.229 MiB/s3       Method: DUMB    Elapsed: 0.25733        MiB: 16.00000   Copy: 62.176 MiB/s4       Method: DUMB    Elapsed: 0.25706        MiB: 16.00000   Copy: 62.242 MiB/s5       Method: DUMB    Elapsed: 0.25721        MiB: 16.00000   Copy: 62.205 MiB/s6       Method: DUMB    Elapsed: 0.25710        MiB: 16.00000   Copy: 62.234 MiB/s7       Method: DUMB    Elapsed: 0.25723        MiB: 16.00000   Copy: 62.201 MiB/s8       Method: DUMB    Elapsed: 0.25716        MiB: 16.00000   Copy: 62.218 MiB/s9       Method: DUMB    Elapsed: 0.25719        MiB: 16.00000   Copy: 62.211 MiB/sAVG     Method: DUMB    Elapsed: 0.25717        MiB: 16.00000   Copy: 62.215 MiB/s0       Method: MCBLOCK Elapsed: 0.25722        MiB: 16.00000   Copy: 62.205 MiB/s1       Method: MCBLOCK Elapsed: 0.25719        MiB: 16.00000   Copy: 62.211 MiB/s2       Method: MCBLOCK Elapsed: 0.25715        MiB: 16.00000   Copy: 62.220 MiB/s3       Method: MCBLOCK Elapsed: 0.25716        MiB: 16.00000   Copy: 62.217 MiB/s4       Method: MCBLOCK Elapsed: 0.25707        MiB: 16.00000   Copy: 62.239 MiB/s5       Method: MCBLOCK Elapsed: 0.25728        MiB: 16.00000   Copy: 62.189 MiB/s6       Method: MCBLOCK Elapsed: 0.25714        MiB: 16.00000   Copy: 62.223 MiB/s7       Method: MCBLOCK Elapsed: 0.25725        MiB: 16.00000   Copy: 62.197 MiB/s8       Method: MCBLOCK Elapsed: 0.25709        MiB: 16.00000   Copy: 62.234 MiB/s9       Method: MCBLOCK Elapsed: 0.25722        MiB: 16.00000   Copy: 62.204 MiB/sAVG     Method: MCBLOCK Elapsed: 0.25718        MiB: 16.00000   Copy: 62.214 MiB/sCPU 800M SDRAM 198M 512K0       Method: MEMCPY  Elapsed: 0.00730        MiB: 0.50000    Copy: 68.503 MiB/s1       Method: MEMCPY  Elapsed: 0.00714        MiB: 0.50000    Copy: 70.057 MiB/s2       Method: MEMCPY  Elapsed: 0.00713        MiB: 0.50000    Copy: 70.136 MiB/s3       Method: MEMCPY  Elapsed: 0.00706        MiB: 0.50000    Copy: 70.781 MiB/s4       Method: MEMCPY  Elapsed: 0.00698        MiB: 0.50000    Copy: 71.674 MiB/s5       Method: MEMCPY  Elapsed: 0.00687        MiB: 0.50000    Copy: 72.812 MiB/s6       Method: MEMCPY  Elapsed: 0.00689        MiB: 0.50000    Copy: 72.548 MiB/s7       Method: MEMCPY  Elapsed: 0.00690        MiB: 0.50000    Copy: 72.464 MiB/s8       Method: MEMCPY  Elapsed: 0.00683        MiB: 0.50000    Copy: 73.217 MiB/s9       Method: MEMCPY  Elapsed: 0.00689        MiB: 0.50000    Copy: 72.622 MiB/sAVG     Method: MEMCPY  Elapsed: 0.00700        MiB: 0.50000    Copy: 71.451 MiB/s0       Method: DUMB    Elapsed: 0.00680        MiB: 0.50000    Copy: 73.508 MiB/s1       Method: DUMB    Elapsed: 0.00687        MiB: 0.50000    Copy: 72.738 MiB/s2       Method: DUMB    Elapsed: 0.00681        MiB: 0.50000    Copy: 73.368 MiB/s3       Method: DUMB    Elapsed: 0.00685        MiB: 0.50000    Copy: 72.950 MiB/s4       Method: DUMB    Elapsed: 0.00686        MiB: 0.50000    Copy: 72.876 MiB/s5       Method: DUMB    Elapsed: 0.00692        MiB: 0.50000    Copy: 72.275 MiB/s6       Method: DUMB    Elapsed: 0.00687        MiB: 0.50000    Copy: 72.791 MiB/s7       Method: DUMB    Elapsed: 0.00688        MiB: 0.50000    Copy: 72.653 MiB/s8       Method: DUMB    Elapsed: 0.00680        MiB: 0.50000    Copy: 73.584 MiB/s9       Method: DUMB    Elapsed: 0.00685        MiB: 0.50000    Copy: 72.993 MiB/sAVG     Method: DUMB    Elapsed: 0.00685        MiB: 0.50000    Copy: 72.971 MiB/s0       Method: MCBLOCK Elapsed: 0.00693        MiB: 0.50000    Copy: 72.119 MiB/s1       Method: MCBLOCK Elapsed: 0.00695        MiB: 0.50000    Copy: 71.901 MiB/s2       Method: MCBLOCK Elapsed: 0.00695        MiB: 0.50000    Copy: 71.922 MiB/s3       Method: MCBLOCK Elapsed: 0.00695        MiB: 0.50000    Copy: 71.942 MiB/s4       Method: MCBLOCK Elapsed: 0.00692        MiB: 0.50000    Copy: 72.233 MiB/s5       Method: MCBLOCK Elapsed: 0.00692        MiB: 0.50000    Copy: 72.233 MiB/s6       Method: MCBLOCK Elapsed: 0.00698        MiB: 0.50000    Copy: 71.592 MiB/s7       Method: MCBLOCK Elapsed: 0.00709        MiB: 0.50000    Copy: 70.532 MiB/s8       Method: MCBLOCK Elapsed: 0.00693        MiB: 0.50000    Copy: 72.181 MiB/s9       Method: MCBLOCK Elapsed: 0.00696        MiB: 0.50000    Copy: 71.870 MiB/sAVG     Method: MCBLOCK Elapsed: 0.00696        MiB: 0.50000    Copy: 71.849 MiB/sCPU 800M SDRAM 198M 32M0       Method: MEMCPY  Elapsed: 0.23245        MiB: 16.00000   Copy: 68.831 MiB/s1       Method: MEMCPY  Elapsed: 0.23230        MiB: 16.00000   Copy: 68.878 MiB/s2       Method: MEMCPY  Elapsed: 0.23214        MiB: 16.00000   Copy: 68.923 MiB/s3       Method: MEMCPY  Elapsed: 0.23214        MiB: 16.00000   Copy: 68.925 MiB/s4       Method: MEMCPY  Elapsed: 0.23203        MiB: 16.00000   Copy: 68.957 MiB/s5       Method: MEMCPY  Elapsed: 0.23199        MiB: 16.00000   Copy: 68.968 MiB/s6       Method: MEMCPY  Elapsed: 0.23211        MiB: 16.00000   Copy: 68.934 MiB/s7       Method: MEMCPY  Elapsed: 0.23197        MiB: 16.00000   Copy: 68.974 MiB/s8       Method: MEMCPY  Elapsed: 0.23199        MiB: 16.00000   Copy: 68.967 MiB/s9       Method: MEMCPY  Elapsed: 0.23210        MiB: 16.00000   Copy: 68.937 MiB/sAVG     Method: MEMCPY  Elapsed: 0.23212        MiB: 16.00000   Copy: 68.929 MiB/s0       Method: DUMB    Elapsed: 0.23133        MiB: 16.00000   Copy: 69.166 MiB/s1       Method: DUMB    Elapsed: 0.23156        MiB: 16.00000   Copy: 69.097 MiB/s2       Method: DUMB    Elapsed: 0.23126        MiB: 16.00000   Copy: 69.186 MiB/s3       Method: DUMB    Elapsed: 0.23128        MiB: 16.00000   Copy: 69.179 MiB/s4       Method: DUMB    Elapsed: 0.23134        MiB: 16.00000   Copy: 69.163 MiB/s5       Method: DUMB    Elapsed: 0.23120        MiB: 16.00000   Copy: 69.205 MiB/s6       Method: DUMB    Elapsed: 0.23129        MiB: 16.00000   Copy: 69.177 MiB/s7       Method: DUMB    Elapsed: 0.23118        MiB: 16.00000   Copy: 69.211 MiB/s8       Method: DUMB    Elapsed: 0.23117        MiB: 16.00000   Copy: 69.212 MiB/s9       Method: DUMB    Elapsed: 0.23131        MiB: 16.00000   Copy: 69.172 MiB/sAVG     Method: DUMB    Elapsed: 0.23129        MiB: 16.00000   Copy: 69.177 MiB/s0       Method: MCBLOCK Elapsed: 0.23211        MiB: 16.00000   Copy: 68.931 MiB/s1       Method: MCBLOCK Elapsed: 0.23215        MiB: 16.00000   Copy: 68.920 MiB/s2       Method: MCBLOCK Elapsed: 0.23210        MiB: 16.00000   Copy: 68.936 MiB/s3       Method: MCBLOCK Elapsed: 0.23212        MiB: 16.00000   Copy: 68.930 MiB/s4       Method: MCBLOCK Elapsed: 0.23205        MiB: 16.00000   Copy: 68.950 MiB/s5       Method: MCBLOCK Elapsed: 0.23210        MiB: 16.00000   Copy: 68.936 MiB/s6       Method: MCBLOCK Elapsed: 0.23217        MiB: 16.00000   Copy: 68.914 MiB/s7       Method: MCBLOCK Elapsed: 0.23205        MiB: 16.00000   Copy: 68.950 MiB/s8       Method: MCBLOCK Elapsed: 0.23208        MiB: 16.00000   Copy: 68.941 MiB/s9       Method: MCBLOCK Elapsed: 0.23216        MiB: 16.00000   Copy: 68.917 MiB/sAVG     Method: MCBLOCK Elapsed: 0.23211        MiB: 16.00000   Copy: 68.933 MiB/skCLOCK_CpuClk clock 798000000  kCLOCK_ArmPll clock 798000000  kCLOCK_SysPll1 clock 1000000000  kCLOCK_SysPll2 clock 528000000  kCLOCK_SysPll3 clock 480000000  kCLOCK_SysPll2Out clock 528000000  kCLOCK_SysPll2Pfd1 clock 594000000  kCLOCK_SysPll3Pfd0 clock 664615368  kCLOCK_Root_Semc clock 198000000  kCLOCK_Root_Flexspi1 clock 132000000  CPU 1000M SDRAM 198M 32M0       Method: MEMCPY  Elapsed: 0.23045        MiB: 16.00000   Copy: 69.431 MiB/s1       Method: MEMCPY  Elapsed: 0.23029        MiB: 16.00000   Copy: 69.479 MiB/s2       Method: MEMCPY  Elapsed: 0.23026        MiB: 16.00000   Copy: 69.486 MiB/s3       Method: MEMCPY  Elapsed: 0.23006        MiB: 16.00000   Copy: 69.546 MiB/s4       Method: MEMCPY  Elapsed: 0.23015        MiB: 16.00000   Copy: 69.520 MiB/s5       Method: MEMCPY  Elapsed: 0.23009        MiB: 16.00000   Copy: 69.538 MiB/s6       Method: MEMCPY  Elapsed: 0.23009        MiB: 16.00000   Copy: 69.539 MiB/s7       Method: MEMCPY  Elapsed: 0.22996        MiB: 16.00000   Copy: 69.576 MiB/s8       Method: MEMCPY  Elapsed: 0.23010        MiB: 16.00000   Copy: 69.534 MiB/s9       Method: MEMCPY  Elapsed: 0.23007        MiB: 16.00000   Copy: 69.546 MiB/sAVG     Method: MEMCPY  Elapsed: 0.23015        MiB: 16.00000   Copy: 69.520 MiB/s0       Method: DUMB    Elapsed: 0.22888        MiB: 16.00000   Copy: 69.906 MiB/s1       Method: DUMB    Elapsed: 0.22887        MiB: 16.00000   Copy: 69.909 MiB/s2       Method: DUMB    Elapsed: 0.22882        MiB: 16.00000   Copy: 69.924 MiB/s3       Method: DUMB    Elapsed: 0.22901        MiB: 16.00000   Copy: 69.866 MiB/s4       Method: DUMB    Elapsed: 0.22879        MiB: 16.00000   Copy: 69.933 MiB/s5       Method: DUMB    Elapsed: 0.22892        MiB: 16.00000   Copy: 69.894 MiB/s6       Method: DUMB    Elapsed: 0.22883        MiB: 16.00000   Copy: 69.922 MiB/s7       Method: DUMB    Elapsed: 0.22893        MiB: 16.00000   Copy: 69.889 MiB/s8       Method: DUMB    Elapsed: 0.22887        MiB: 16.00000   Copy: 69.908 MiB/s9       Method: DUMB    Elapsed: 0.22891        MiB: 16.00000   Copy: 69.895 MiB/sAVG     Method: DUMB    Elapsed: 0.22888        MiB: 16.00000   Copy: 69.905 MiB/s0       Method: MCBLOCK Elapsed: 0.23009        MiB: 16.00000   Copy: 69.537 MiB/s1       Method: MCBLOCK Elapsed: 0.23010        MiB: 16.00000   Copy: 69.536 MiB/s2       Method: MCBLOCK Elapsed: 0.23008        MiB: 16.00000   Copy: 69.541 MiB/s3       Method: MCBLOCK Elapsed: 0.23005        MiB: 16.00000   Copy: 69.551 MiB/s4       Method: MCBLOCK Elapsed: 0.22999        MiB: 16.00000   Copy: 69.568 MiB/s5       Method: MCBLOCK Elapsed: 0.23010        MiB: 16.00000   Copy: 69.534 MiB/s6       Method: MCBLOCK Elapsed: 0.22998        MiB: 16.00000   Copy: 69.572 MiB/s7       Method: MCBLOCK Elapsed: 0.23016        MiB: 16.00000   Copy: 69.518 MiB/s8       Method: MCBLOCK Elapsed: 0.23002        MiB: 16.00000   Copy: 69.560 MiB/s9       Method: MCBLOCK Elapsed: 0.23013        MiB: 16.00000   Copy: 69.525 MiB/sAVG     Method: MCBLOCK Elapsed: 0.23007        MiB: 16.00000   Copy: 69.544 MiB/sCPU 1000M SDRAM 198M 512K0       Method: MEMCPY  Elapsed: 0.00722        MiB: 0.50000    Copy: 69.262 MiB/s1       Method: MEMCPY  Elapsed: 0.00721        MiB: 0.50000    Copy: 69.367 MiB/s2       Method: MEMCPY  Elapsed: 0.00706        MiB: 0.50000    Copy: 70.862 MiB/s3       Method: MEMCPY  Elapsed: 0.00691        MiB: 0.50000    Copy: 72.401 MiB/s4       Method: MEMCPY  Elapsed: 0.00690        MiB: 0.50000    Copy: 72.422 MiB/s5       Method: MEMCPY  Elapsed: 0.00690        MiB: 0.50000    Copy: 72.474 MiB/s6       Method: MEMCPY  Elapsed: 0.00690        MiB: 0.50000    Copy: 72.495 MiB/s7       Method: MEMCPY  Elapsed: 0.00691        MiB: 0.50000    Copy: 72.317 MiB/s8       Method: MEMCPY  Elapsed: 0.00677        MiB: 0.50000    Copy: 73.866 MiB/s9       Method: MEMCPY  Elapsed: 0.00678        MiB: 0.50000    Copy: 73.735 MiB/sAVG     Method: MEMCPY  Elapsed: 0.00696        MiB: 0.50000    Copy: 71.888 MiB/s0       Method: DUMB    Elapsed: 0.00677        MiB: 0.50000    Copy: 73.877 MiB/s1       Method: DUMB    Elapsed: 0.00686        MiB: 0.50000    Copy: 72.876 MiB/s2       Method: DUMB    Elapsed: 0.00675        MiB: 0.50000    Copy: 74.085 MiB/s3       Method: DUMB    Elapsed: 0.00676        MiB: 0.50000    Copy: 73.921 MiB/s4       Method: DUMB    Elapsed: 0.00687        MiB: 0.50000    Copy: 72.823 MiB/s5       Method: DUMB    Elapsed: 0.00685        MiB: 0.50000    Copy: 72.950 MiB/s6       Method: DUMB    Elapsed: 0.00678        MiB: 0.50000    Copy: 73.703 MiB/s7       Method: DUMB    Elapsed: 0.00681        MiB: 0.50000    Copy: 73.400 MiB/s8       Method: DUMB    Elapsed: 0.00686        MiB: 0.50000    Copy: 72.939 MiB/s9       Method: DUMB    Elapsed: 0.00678        MiB: 0.50000    Copy: 73.790 MiB/sAVG     Method: DUMB    Elapsed: 0.00681        MiB: 0.50000    Copy: 73.433 MiB/s0       Method: MCBLOCK Elapsed: 0.00684        MiB: 0.50000    Copy: 73.057 MiB/s1       Method: MCBLOCK Elapsed: 0.00687        MiB: 0.50000    Copy: 72.748 MiB/s2       Method: MCBLOCK Elapsed: 0.00685        MiB: 0.50000    Copy: 73.003 MiB/s3       Method: MCBLOCK Elapsed: 0.00692        MiB: 0.50000    Copy: 72.275 MiB/s4       Method: MCBLOCK Elapsed: 0.00692        MiB: 0.50000    Copy: 72.296 MiB/s5       Method: MCBLOCK Elapsed: 0.00694        MiB: 0.50000    Copy: 72.046 MiB/s6       Method: MCBLOCK Elapsed: 0.00685        MiB: 0.50000    Copy: 73.014 MiB/s7       Method: MCBLOCK Elapsed: 0.00687        MiB: 0.50000    Copy: 72.780 MiB/s8       Method: MCBLOCK Elapsed: 0.00686        MiB: 0.50000    Copy: 72.918 MiB/s9       Method: MCBLOCK Elapsed: 0.00688        MiB: 0.50000    Copy: 72.696 MiB/sAVG     Method: MCBLOCK Elapsed: 0.00688        MiB: 0.50000    Copy: 72.682 MiB/s版内的内存:CPU 800M 512K0       Method: MEMCPY  Elapsed: 0.00186        MiB: 0.50000    Copy: 268.384 MiB/s1       Method: MEMCPY  Elapsed: 0.00182        MiB: 0.50000    Copy: 274.424 MiB/s2       Method: MEMCPY  Elapsed: 0.00179        MiB: 0.50000    Copy: 278.862 MiB/s3       Method: MEMCPY  Elapsed: 0.00179        MiB: 0.50000    Copy: 279.330 MiB/s4       Method: MEMCPY  Elapsed: 0.00179        MiB: 0.50000    Copy: 279.174 MiB/s5       Method: MEMCPY  Elapsed: 0.00179        MiB: 0.50000    Copy: 279.174 MiB/s6       Method: MEMCPY  Elapsed: 0.00179        MiB: 0.50000    Copy: 278.707 MiB/s7       Method: MEMCPY  Elapsed: 0.00176        MiB: 0.50000    Copy: 283.607 MiB/s8       Method: MEMCPY  Elapsed: 0.00176        MiB: 0.50000    Copy: 283.447 MiB/s9       Method: MEMCPY  Elapsed: 0.00176        MiB: 0.50000    Copy: 284.414 MiB/sAVG     Method: MEMCPY  Elapsed: 0.00179        MiB: 0.50000    Copy: 278.878 MiB/s0       Method: DUMB    Elapsed: 0.00173        MiB: 0.50000    Copy: 289.017 MiB/s1       Method: DUMB    Elapsed: 0.00173        MiB: 0.50000    Copy: 289.017 MiB/s2       Method: DUMB    Elapsed: 0.00173        MiB: 0.50000    Copy: 288.684 MiB/s3       Method: DUMB    Elapsed: 0.00173        MiB: 0.50000    Copy: 289.017 MiB/s4       Method: DUMB    Elapsed: 0.00173        MiB: 0.50000    Copy: 289.184 MiB/s5       Method: DUMB    Elapsed: 0.00173        MiB: 0.50000    Copy: 289.017 MiB/s6       Method: DUMB    Elapsed: 0.00173        MiB: 0.50000    Copy: 288.850 MiB/s7       Method: DUMB    Elapsed: 0.00173        MiB: 0.50000    Copy: 288.850 MiB/s8       Method: DUMB    Elapsed: 0.00173        MiB: 0.50000    Copy: 288.850 MiB/s9       Method: DUMB    Elapsed: 0.00173        MiB: 0.50000    Copy: 289.184 MiB/sAVG     Method: DUMB    Elapsed: 0.00173        MiB: 0.50000    Copy: 288.967 MiB/s0       Method: MCBLOCK Elapsed: 0.00179        MiB: 0.50000    Copy: 278.862 MiB/s1       Method: MCBLOCK Elapsed: 0.00180        MiB: 0.50000    Copy: 278.242 MiB/s2       Method: MCBLOCK Elapsed: 0.00177        MiB: 0.50000    Copy: 281.849 MiB/s3       Method: MCBLOCK Elapsed: 0.00178        MiB: 0.50000    Copy: 280.269 MiB/s4       Method: MCBLOCK Elapsed: 0.00177        MiB: 0.50000    Copy: 281.849 MiB/s5       Method: MCBLOCK Elapsed: 0.00177        MiB: 0.50000    Copy: 282.486 MiB/s6       Method: MCBLOCK Elapsed: 0.00177        MiB: 0.50000    Copy: 282.167 MiB/s7       Method: MCBLOCK Elapsed: 0.00180        MiB: 0.50000    Copy: 278.396 MiB/s8       Method: MCBLOCK Elapsed: 0.00177        MiB: 0.50000    Copy: 282.965 MiB/s9       Method: MCBLOCK Elapsed: 0.00180        MiB: 0.50000    Copy: 277.778 MiB/sAVG     Method: MCBLOCK Elapsed: 0.00178        MiB: 0.50000    Copy: 280.473 MiB/sCPU 1000M 512K0       Method: MEMCPY  Elapsed: 0.00176        MiB: 0.50000    Copy: 283.768 MiB/s1       Method: MEMCPY  Elapsed: 0.00175        MiB: 0.50000    Copy: 285.388 MiB/s2       Method: MEMCPY  Elapsed: 0.00175        MiB: 0.50000    Copy: 285.714 MiB/s3       Method: MEMCPY  Elapsed: 0.00174        MiB: 0.50000    Copy: 287.853 MiB/s4       Method: MEMCPY  Elapsed: 0.00175        MiB: 0.50000    Copy: 286.041 MiB/s5       Method: MEMCPY  Elapsed: 0.00175        MiB: 0.50000    Copy: 286.533 MiB/s6       Method: MEMCPY  Elapsed: 0.00175        MiB: 0.50000    Copy: 286.369 MiB/s7       Method: MEMCPY  Elapsed: 0.00175        MiB: 0.50000    Copy: 285.878 MiB/s8       Method: MEMCPY  Elapsed: 0.00175        MiB: 0.50000    Copy: 285.878 MiB/s9       Method: MEMCPY  Elapsed: 0.00175        MiB: 0.50000    Copy: 286.205 MiB/sAVG     Method: MEMCPY  Elapsed: 0.00175        MiB: 0.50000    Copy: 285.959 MiB/s0       Method: DUMB    Elapsed: 0.00170        MiB: 0.50000    Copy: 294.985 MiB/s1       Method: DUMB    Elapsed: 0.00170        MiB: 0.50000    Copy: 294.985 MiB/s2       Method: DUMB    Elapsed: 0.00170        MiB: 0.50000    Copy: 294.811 MiB/s3       Method: DUMB    Elapsed: 0.00170        MiB: 0.50000    Copy: 294.638 MiB/s4       Method: DUMB    Elapsed: 0.00170        MiB: 0.50000    Copy: 294.638 MiB/s5       Method: DUMB    Elapsed: 0.00170        MiB: 0.50000    Copy: 294.985 MiB/s6       Method: DUMB    Elapsed: 0.00170        MiB: 0.50000    Copy: 294.638 MiB/s7       Method: DUMB    Elapsed: 0.00170        MiB: 0.50000    Copy: 294.985 MiB/s8       Method: DUMB    Elapsed: 0.00170        MiB: 0.50000    Copy: 294.811 MiB/s9       Method: DUMB    Elapsed: 0.00170        MiB: 0.50000    Copy: 294.985 MiB/sAVG     Method: DUMB    Elapsed: 0.00170        MiB: 0.50000    Copy: 294.846 MiB/s0       Method: MCBLOCK Elapsed: 0.00176        MiB: 0.50000    Copy: 284.091 MiB/s1       Method: MCBLOCK Elapsed: 0.00175        MiB: 0.50000    Copy: 285.551 MiB/s2       Method: MCBLOCK Elapsed: 0.00176        MiB: 0.50000    Copy: 284.576 MiB/s3       Method: MCBLOCK Elapsed: 0.00175        MiB: 0.50000    Copy: 285.388 MiB/s4       Method: MCBLOCK Elapsed: 0.00176        MiB: 0.50000    Copy: 284.576 MiB/s5       Method: MCBLOCK Elapsed: 0.00175        MiB: 0.50000    Copy: 285.388 MiB/s6       Method: MCBLOCK Elapsed: 0.00175        MiB: 0.50000    Copy: 284.900 MiB/s7       Method: MCBLOCK Elapsed: 0.00175        MiB: 0.50000    Copy: 285.388 MiB/s8       Method: MCBLOCK Elapsed: 0.00176        MiB: 0.50000    Copy: 284.738 MiB/s9       Method: MCBLOCK Elapsed: 0.00175        MiB: 0.50000    Copy: 285.551 MiB/sAVG     Method: MCBLOCK Elapsed: 0.00175        MiB: 0.50000    Copy: 285.014 MiB/s

3. 总结

工具的移植,无非就是时钟接口及内存分配等接口的重新实现。片内及片外的内存到底相差多少,经过测试之后,可以有很明显的数定进行比较。对于我们进行程序优化是相当有益的。下面是本人整理的表格,分享给大家。


希望对各位读者帮助。

欢迎订阅

“嵌入式实操”一个分享开发实践经验的地方。

文章会同时发布到我的 CSDN主页(嵌入式实操的博客_CSDN博客-05-RT1170 开发,06--Am335x,01--RT1052 Aworks 开发领域博主)、今日头条号平台上。

发表评论
留言与评论(共有 0 条评论) “”
   
验证码:

相关文章

推荐文章