This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] AM620-Q1:MMC/SD 驱动程序性能

Guru**** 2394305 points
Other Parts Discussed in Thread: AM62P

请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1492715/am620-q1-mmc-sd-driver-performance

器件型号:AM620-Q1
主题中讨论的其他器件:AM62P

工具与软件:

嗨、专家

参考本页、

https://software-dl.ti.com/processor-sdk-linux/esd/AM62X/10_00_07_04/exports/docs/devices/AM62X/linux/(Linux_Performance_Guide).html#ID4

几个问题、

(1)我们是否具有缓冲器大小(字节) 128k/64k/16k 的测试结果?

(2)我们如何进行这些测试? 是否有实用程序支持?

谢谢你。

Gibbs  

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

    1.没有 文档中仅提到了可用的数字。

    2.

    这些命令用于触发 eMMC 测试。 请注意、这些命令仅在默认文件系统中可用。

    cd /opt/ltp
    ./runltp -P am62pxx_sk-fs -f ddt/emmc_perf_ext4 -s "EMMC_L_PERF_EXT4_FIO_1G ",timeout=3600,perf_metrics_file=LSP/A-PCI/fio_parser.rb

    随附是在 TI AM62P HSFS 电路板上收集的示例测试日志

    root@am62pxx-evm:~# cd /opt/ltp/
    root@am62pxx-evm:/opt/ltp# ./runltp -P am62pxx_sk-fs -f ddt/emmc_perf_ext4 -s "EMMC_L_PERF_EXT4_FIO_1G ",timeout=3600,perf_metrics_file=LSP/A-PCI/fio_parser.rb
    ...
    <<<test_start>>>
    tag=EMMC_L_PERF_EXT4_FIO_1G stime=170
    cmdline="source 'common.sh'; install_modules.sh "emmc"; do_cmd 'blk_device_filesystem_perf_test.sh -p "fio" -f "ext4" -s 1g -B "4m 1m 256k 4k" -d "emmc" '"
    contacts=""
    analysis=exit
    <<<test_output>>>
    incrementing stop
    |TRACE LOG|Inside do_cmd:CMD=blk_device_filesystem_perf_test.sh -p "fio" -f "ext4" -s 1g -B "4m 1m 256k 4k" -d "emmc" |
    ls -al /dev/disk/by-id
    total 0
    drwxr-xr-x 2 root root 160 Jan  1 00:00 .
    drwxr-xr-x 7 root root 140 Jan  1 00:00 ..
    lrwxrwxrwx 1 root root  13 Jan  1 00:00 mmc-G1M15L_0x2dc165d1 -> ../../mmcblk0
    lrwxrwxrwx 1 root root  15 Jan  1 00:00 mmc-G1M15L_0x2dc165d1-part1 -> ../../mmcblk0p1
    lrwxrwxrwx 1 root root  15 Jan  1 00:00 mmc-G1M15L_0x2dc165d1-part2 -> ../../mmcblk0p2
    lrwxrwxrwx 1 root root  13 Jan  1 00:00 mmc-SC16G_0x568ab999 -> ../../mmcblk1
    lrwxrwxrwx 1 root root  15 Jan  1 00:00 mmc-SC16G_0x568ab999-part1 -> ../../mmcblk1p1
    lrwxrwxrwx 1 root root  15 Jan  1 00:00 mmc-SC16G_0x568ab999-part2 -> ../../mmcblk1p2
    ls -al /dev/disk/by-path
    total 0
    drwxr-xr-x 2 root root 200 Jan  1 00:00 .
    drwxr-xr-x 7 root root 140 Jan  1 00:00 ..
    lrwxrwxrwx 1 root root  13 Jan  1 00:00 platform-fa00000.mmc -> ../../mmcblk1
    lrwxrwxrwx 1 root root  15 Jan  1 00:00 platform-fa00000.mmc-part1 -> ../../mmcblk1p1
    lrwxrwxrwx 1 root root  15 Jan  1 00:00 platform-fa00000.mmc-part2 -> ../../mmcblk1p2
    lrwxrwxrwx 1 root root  13 Jan  1 00:00 platform-fa10000.mmc -> ../../mmcblk0
    lrwxrwxrwx 1 root root  18 Jan  1 00:00 platform-fa10000.mmc-boot0 -> ../../mmcblk0boot0
    lrwxrwxrwx 1 root root  18 Jan  1 00:00 platform-fa10000.mmc-boot1 -> ../../mmcblk0boot1
    lrwxrwxrwx 1 root root  15 Jan  1 00:00 platform-fa10000.mmc-part1 -> ../../mmcblk0p1
    lrwxrwxrwx 1 root root  15 Jan  1 00:00 platform-fa10000.mmc-part2 -> ../../mmcblk0p2
    |TRACE LOG|DEV_NODE return from get_blk_device_node is: /dev/mmcblk0p2|
    |TRACE LOG|STARTING FILE SYSTEM PERFORMANCE Test for emmc|
    |TRACE LOG|FS_TYPE:ext4|
    |TRACE LOG|DEV_NODE:/dev/mmcblk0p2|
    |TRACE LOG|MOUNT POINT:/mnt/partition_emmc|
    |TRACE LOG|BUFFER SIZES:4m 1m 256k 4k|
    |TRACE LOG|FILE SIZE:1gMB|
    |TRACE LOG|SRCFILE SIZE:10MB|
    |TRACE LOG|DEVICE_TYPE:emmc|
    |TRACE LOG|Inside do_cmd:CMD=printout_model /dev/mmcblk0p2 emmc|
    |TRACE LOG|model info is not available for non scsi devices.|
    |TRACE LOG|Inside do_cmd:CMD=printout_mmc_ios|
    |TRACE LOG|===== printout of mmc ios =====|
    |TRACE LOG|Inside do_cmd:CMD=cat /sys/kernel/debug//mmc0/ios|
    clock:          200000000 Hz
    actual clock:   200000000 Hz
    vdd:            7 (1.65 - 1.95 V)
    bus mode:       2 (push-pull)
    chip select:    0 (don't care)
    power mode:     2 (on)
    bus width:      3 (8 bits)
    timing spec:    10 (mmc HS400)
    signal voltage: 1 (1.80 V)
    driver type:    0 (driver type B)
    |TRACE LOG|Inside do_cmd:CMD=cat /sys/kernel/debug//mmc1/ios|
    clock:          200000000 Hz
    actual clock:   200000000 Hz
    vdd:            21 (3.3 ~ 3.4 V)
    bus mode:       2 (push-pull)
    chip select:    0 (don't care)
    power mode:     2 (on)
    bus width:      2 (4 bits)
    timing spec:    6 (sd uhs SDR104)
    signal voltage: 1 (1.80 V)
    driver type:    0 (driver type B)
    |TRACE LOG|===== end of mmc ios =====|
    |TRACE LOG|Device Partition Size is 22159 MB|
    /opt/ltp/testcases/bin/ddt/blk/blk_device_filesystem_perf_test.sh: line 186: [: 1g: integer expression expected
    |TRACE LOG|Inside do_cmd:CMD=mkdir -p /mnt/partition_emmc|
    |TRACE LOG|Inside do_cmd:CMD=blk_device_prepare_format.sh -d emmc -n /dev/mmcblk0p2 -f ext4 -m /mnt/partition_emmc -o async|
    |TRACE LOG|DEV_NODE: /dev/mmcblk0p2|
    |TRACE LOG|MNT_POINT: /mnt/partition_emmc|
    |TRACE LOG|FS_TYPE: ext4|
    |TRACE LOG|MNT_MODE: async|
    |TRACE LOG|Erasing/Formatting this partition and then mount it|
    |TRACE LOG|Inside do_cmd:CMD=blk_device_erase_format_part.sh -d emmc -n /dev/mmcblk0p2 -f ext4 -m /mnt/partition_emmc|
    |TRACE LOG|DEVICE TYPE: emmc|
    |TRACE LOG|DEVICE NODE: /dev/mmcblk0p2|
    |TRACE LOG|FS TYPE: ext4|
    |TRACE LOG|Umount /dev/mmcblk0p2 or /dev/mmcblk0 if it is mounted|
    /dev/mmcblk0p2 on /run/media/mmcblk0p2 type ext4 (rw,relatime)
    |TRACE LOG|Inside do_cmd:CMD=umount /dev/mmcblk0p2|
    [  225.579004] EXT4-fs (mmcblk0p2): unmounting filesystem.
    |TRACE LOG|Inside do_cmd:CMD=mkfs.ext4 -E lazy_itable_init=1,lazy_journal_init=1 -F  /dev/mmcblk0p2|
    mke2fs 1.46.5 (30-Dec-2021)
    /dev/mmcblk0p2 contains a ext4 file system
            last mounted on /mnt/partition_emmc on Thu Jan  1 00:00:14 1970
    Discarding device blocks: done
    Creating filesystem with 5672704 4k blocks and 1419840 inodes
    Filesystem UUID: b255230c-952f-4a02-889b-d876c022f9e0
    Superblock backups stored on blocks:
            32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,
            4096000
    
    Allocating group tables: done
    Writing inode tables: done
    Creating journal (32768 blocks): done
    Writing superblocks and filesystem accounting information: done
    
    |TRACE LOG|Inside do_cmd:CMD=blk_device_do_mount.sh -n /dev/mmcblk0p2 -f ext4 -d emmc -m /mnt/partition_emmc -o async|
    |TRACE LOG|Umount /mnt/partition_emmc if it is mounted|
    |TRACE LOG|Mounting the partition|
    |TRACE LOG|Inside do_cmd:CMD=mount -t ext4 -o async /dev/mmcblk0p2 /mnt/partition_emmc|
    [  231.220650] EXT4-fs (mmcblk0p2): mounted filesystem with ordered data mode. Quota mode: none.
    |TRACE LOG|Inside do_cmd:CMD=mount | grep /mnt/partition_emmc|
    /dev/mmcblk0p2 on /mnt/partition_emmc type ext4 (rw,relatime)
    |TRACE LOG|BUFFER SIZE = 4m|
    |TRACE LOG|Inside do_cmd:CMD=fio --name emmc_TEST --directory=/mnt/partition_emmc --size=1g --rw=write --blocksize=4m --ioengine=libaio --iodepth=4 --numjobs=1 --direct=1 --group_reportin|
    |TRACE LOG|Inside do_cmd:CMD=sleep 5|
    emmc_TEST: (g=0): rw=write, bs=(R) 4096KiB-4096KiB, (W) 4096KiB-4096KiB, (T) 4096KiB-4096KiB, ioengine=libaio, iodepth=4
    fio-3.30
    Starting 1 process
    emmc_TEST: Laying out IO file (1 file / 1024MiB)
    |TRACE LOG|Inside do_cmd:CMD=wait|
    
    emmc_TEST: (groupid=0, jobs=1): err= 0: pid=2324: Thu Jan  1 00:04:57 1970
      write: IOPS=22, BW=90.5MiB/s (94.9MB/s)(5440MiB/60135msec); 0 zone resets
        slat (usec): min=571, max=131328, avg=4630.99, stdev=7924.73
        clat (msec): min=36, max=4259, avg=172.09, stdev=205.33
         lat (msec): min=71, max=4261, avg=176.73, stdev=205.02
        clat percentiles (msec):
         |  1.00th=[  106],  5.00th=[  150], 10.00th=[  150], 20.00th=[  153],
         | 30.00th=[  159], 40.00th=[  163], 50.00th=[  163], 60.00th=[  163],
         | 70.00th=[  165], 80.00th=[  165], 90.00th=[  167], 95.00th=[  169],
         | 99.00th=[  201], 99.50th=[  236], 99.90th=[ 4212], 99.95th=[ 4245],
         | 99.99th=[ 4245]
       bw (  KiB/s): min= 8192, max=106496, per=100.00%, avg=98358.92, stdev=9635.52, samples=113
       iops        : min=    2, max=   26, avg=23.93, stdev= 2.36, samples=113
      lat (msec)   : 50=0.07%, 100=0.88%, 250=98.68%, >=2000=0.37%
      cpu          : usr=1.99%, sys=2.60%, ctx=11075, majf=0, minf=22
      IO depths    : 1=0.1%, 2=0.1%, 4=99.8%, 8=0.0%, 16=0.0%, 32=0.0%, >=64=0.0%
         submit    : 0=0.0%, 4=100.0%, 8=0.0%, 16=0.0%, 32=0.0%, 64=0.0%, >=64=0.0%
         complete  : 0=0.0%, 4=100.0%, 8=0.0%, 16=0.0%, 32=0.0%, 64=0.0%, >=64=0.0%
         issued rwts: total=0,1360,0,0 short=0,0,0,0 dropped=0,0,0,0
         latency   : target=0, window=0, percentile=100.00%, depth=4
    
    Run status group 0 (all jobs):
      WRITE: bw=90.5MiB/s (94.9MB/s), 90.5MiB/s-90.5MiB/s (94.9MB/s-94.9MB/s), io=5440MiB (5704MB), run=60135-60135msec
    ...
    

    此致、

    Prashant