I am not subscribed to linaro-dev, so please Cc me in case you drop flashbench-results
mailinglist from receivers.
Hi Arnd, hi everyone!
For now quick and short.
A simple script to automate common steps on reporting flash medium test
results. It goes as far as read tests for erase block size and then suggests
some open au tests together with a warning that these write to the device.
I checked other flashbench-results posts as to what info would be
interesting.
Find it at:
git://gitorious.org/flashbench/flashbench.git
Example output is at:
[Flashbench] Samsung Plus MB-SPAGFFP Class 10 SDHC 16GB
Sat Dec 1 16:02:18 UTC 2012
http://lists.linaro.org/pipermail/flashbench-results/2012-December/000346.h…
Sorry that I occupied flashbench upstream name for project. I can look
into renaming it to "flashbench-martin" or something like that.
The script is in branch "flashreport".
In branch "defaultblocksize" you find a currently untested patch for
changing default block size to 1024.
I can try to send patches as mails via git, but I´d have to look it up first,
since I do this quite rarely.
Up to then please use the repo urls :)
Nice weekend,
--
Martin 'Helios' Steigerwald - http://www.Lichtvoll.de
GPG: 03B0 0D6C 0040 0710 4AFA B82F 991B EAAC A599 84C7
Hello!
These are the results from a SanDisk SDHC card 8 GB class 4 (7560 MiB), using flashbench 62-1 (Linux Mint 15 / Ubuntu 13.04 repository, and kernel 3.11.0). The SD Card is raw, without formatation. There are informations about the card controller from my laptop too.
I have some questions about flashbench tool. Are there any development in this tool yet? Am I using the correct version? What is the -a parameter, it's not in documentation (it's not in the --help parameter too).
lsusb -v
Bus 001 Device 008: ID 058f:6366 Alcor Micro Corp. Multi Flash Reader
Device Descriptor:
bLength 18
bDescriptorType 1
bcdUSB 2.00
bDeviceClass 0 (Defined at Interface level)
bDeviceSubClass 0
bDeviceProtocol 0
bMaxPacketSize0 64
idVendor 0x058f Alcor Micro Corp.
idProduct 0x6366 Multi Flash Reader
bcdDevice 1.00
iManufacturer 1 Generic
iProduct 2 Mass Storage
Device
iSerial 3 058F63666433
bNumConfigurations 1
Configuration Descriptor:
bLength 9
bDescriptorType 2
wTotalLength 32
bNumInterfaces 1
bConfigurationValue 1
iConfiguration 0
bmAttributes 0x80
(Bus Powered)
MaxPower 100mA
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 0
bAlternateSetting 0
bNumEndpoints 2
bInterfaceClass 8 Mass Storage
bInterfaceSubClass 6 SCSI
bInterfaceProtocol 80
Bulk-Only
iInterface 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x01 EP 1 OUT
bmAttributes 2
Transfer Type Bulk
Synch
Type None
Usage Type Data
wMaxPacketSize 0x0200 1x 512 bytes
bInterval 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x82 EP 2
IN
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0200 1x 512 bytes
bInterval 0
Device Qualifier (for other device speed):
bLength 10
bDescriptorType 6
bcdUSB 2.00
bDeviceClass 0 (Defined at Interface level)
bDeviceSubClass 0
bDeviceProtocol 0
bMaxPacketSize0 64
bNumConfigurations 1
Device Status: 0x0000
(Bus Powered)
head /sys/block/sdb/device/* 2>/dev/null | grep -v ^$
==> /sys/block/sdb/device/block <==
==> /sys/block/sdb/device/bsg <==
==> /sys/block/sdb/device/device_blocked <==
0
==> /sys/block/sdb/device/dh_state <==
detached
==> /sys/block/sdb/device/driver <==
==> /sys/block/sdb/device/eh_timeout <==
10
==> /sys/block/sdb/device/evt_media_change <==
0
==> /sys/block/sdb/device/generic <==
==> /sys/block/sdb/device/iocounterbits <==
32
==> /sys/block/sdb/device/iodone_cnt <==
0x10d82
==> /sys/block/sdb/device/ioerr_cnt <==
0x2
==> /sys/block/sdb/device/iorequest_cnt <==
0x10d82
==> /sys/block/sdb/device/max_sectors <==
240
==> /sys/block/sdb/device/modalias <==
scsi:t-0x00
==> /sys/block/sdb/device/model <==
Card Reader
==> /sys/block/sdb/device/power
<==
==> /sys/block/sdb/device/queue_depth <==
1
==> /sys/block/sdb/device/queue_type <==
none
==> /sys/block/sdb/device/rev <==
1.00
==> /sys/block/sdb/device/scsi_device <==
==> /sys/block/sdb/device/scsi_disk <==
==> /sys/block/sdb/device/scsi_generic <==
==> /sys/block/sdb/device/scsi_level <==
0
==> /sys/block/sdb/device/state <==
running
==> /sys/block/sdb/device/subsystem <==
==> /sys/block/sdb/device/timeout <==
30
==> /sys/block/sdb/device/type <==
0
==> /sys/block/sdb/device/uevent <==
DEVTYPE=scsi_device
DRIVER=sd
MODALIAS=scsi:t-0x00
==> /sys/block/sdb/device/vendor <==
Multiple
flashbench -a /dev/sdb --blocksize=1024 --count=100
align 2147483648 pre 1.31ms on 1.73ms post 1.25ms diff 456µs
align 1073741824 pre 1.3ms on 1.76ms post 1.24ms diff 485µs
align 536870912 pre 1.28ms on 1.79ms post 1.32ms diff 491µs
align
268435456 pre 1.24ms on 1.68ms post 1.23ms diff 444µs
align 134217728 pre 1.3ms on 1.82ms post 1.3ms diff 518µs
align 67108864 pre 1.3ms on 1.77ms post 1.25ms diff 488µs
align 33554432 pre 1.02ms on 1.34ms post 1.01ms diff 327µs
align 16777216 pre 1.01ms on 1.35ms post 989µs diff 348µs
align 8388608 pre 974µs on 1.35ms post 1.01ms diff 361µs
align 4194304 pre 1.25ms on 1.71ms post 1.03ms diff 568µs
align 2097152
pre 1.29ms on 1.44ms post 1.26ms diff 160µs
align 1048576 pre 1.25ms on 1.44ms post 1.3ms diff 162µs
align 524288 pre 1.31ms on 1.44ms post 1.26ms diff 153µs
align 262144 pre 1.25ms on 1.42ms post 1.29ms diff 155µs
align 131072 pre 1.28ms on 1.43ms post 1.26ms diff 167µs
align 65536 pre 1.25ms on 1.43ms post 1.29ms diff 160µs
align 32768 pre 1.28ms on 1.43ms post 1.26ms diff 165µs
align 16384 pre 1.24ms on
1.43ms post 1.29ms diff 168µs
align 8192 pre 1.25ms on 1.31ms post 1.25ms diff 56.5µs
align 4096 pre 1.19ms on 1.34ms post 1.25ms diff 118µs
align 2048 pre 1.2ms on 1.25ms post 1.2ms diff 51.8µs
# Maybe this card has 4 MiB of Erased Block and 16 kiB of Page?
flashbench -a /dev/sdb --blocksize=1024 --count=100
align 2147483648 pre 1.31ms on 1.73ms post 1.25ms diff 450µs
align 1073741824 pre 1.3ms on 1.76ms post 1.24ms diff 491µs
align 536870912 pre 1.28ms on 1.79ms post 1.32ms diff 484µs
align 268435456 pre
1.25ms on 1.68ms post 1.23ms diff 435µs
align 134217728 pre 1.29ms on 1.82ms post 1.3ms diff 525µs
align 67108864 pre 1.3ms on 1.77ms post 1.24ms diff 495µs
align 33554432 pre 1.02ms on 1.35ms post 996µs diff 346µs
align 16777216 pre 1.02ms on 1.35ms post 995µs diff 341µs
align 8388608 pre 974µs on 1.35ms post 994µs diff 368µs
align 4194304 pre 1.27ms on 1.71ms post 1.03ms diff 562µs
align 2097152 pre 1.31ms
on 1.44ms post 1.26ms diff 161µs
align 1048576 pre 1.25ms on 1.44ms post 1.3ms diff 164µs
align 524288 pre 1.3ms on 1.43ms post 1.26ms diff 156µs
align 262144 pre 1.25ms on 1.43ms post 1.29ms diff 162µs
align 131072 pre 1.3ms on 1.44ms post 1.26ms diff 157µs
align 65536 pre 1.25ms on 1.42ms post 1.27ms diff 159µs
align 32768 pre 1.25ms on 1.43ms post 1.24ms diff 182µs
align 16384 pre 1.24ms on 1.43ms post
1.27ms diff 178µs
align 8192 pre 1.25ms on 1.31ms post 1.24ms diff 67.7µs
align 4096 pre 1.19ms on 1.34ms post 1.24ms diff 126µs
align 2048 pre 1.19ms on 1.25ms post 1.18ms diff 69.6µs
flashbench -a /dev/sdb --blocksize=2048 --count=100
align 2147483648 pre 1.29ms on 1.72ms post 1.25ms diff 448µs
align 1073741824 pre 1.28ms on 1.7ms post 1.22ms diff 449µs
align 536870912 pre 1.25ms on 1.74ms post 1.29ms diff 473µs
align 268435456 pre 1.25ms on 1.66ms post 1.22ms diff 421µs
align 134217728 pre 1.28ms on 1.79ms post 1.29ms diff 501µs
align 67108864 pre 1.3ms on 1.74ms post 1.26ms diff 466µs
align 33554432 pre 1.12ms on 1.51ms post 1.1ms diff 401µs
align 16777216 pre 1.09ms on 1.45ms post 949µs diff 427µs
align 8388608 pre 1.1ms on 1.46ms post 949µs diff 438µs
align 4194304 pre 1.15ms on 1.6ms post 1.07ms diff 487µs
align 2097152 pre 1.16ms on 1.28ms post 1.15ms diff 126µs
align 1048576 pre 1.15ms on 1.28ms post 1.16ms diff 126µs
align 524288 pre 1.16ms on 1.28ms post 1.15ms diff 123µs
align 262144 pre 1.15ms on 1.28ms post 1.16ms diff 123µs
align 131072 pre 1.16ms on 1.28ms post 1.15ms diff 130µs
align 65536 pre 1.15ms on 1.28ms post 1.16ms diff 122µs
align 32768 pre 1.16ms on 1.28ms post 1.15ms diff 123µs
align 16384 pre 1.15ms on 1.28ms post 1.16ms diff 122µs
align 8192 pre 1.13ms on 1.17ms post 1.13ms diff 39.8µs
align 4096 pre 1.13ms on 1.17ms post 1.13ms diff 41.5µs
flashbench -a /dev/sdb --blocksize=2048 --count=100
align 2147483648 pre 1.69ms on 2.11ms post 1.58ms diff 479µs
align 1073741824 pre 1.67ms on 2.1ms post 1.63ms diff 452µs
align 536870912 pre 1.65ms on 2.15ms post 1.68ms diff 486µs
align 268435456 pre 1.59ms on 2.01ms post 1.49ms diff 469µs
align 134217728 pre 1.69ms on 2.19ms post 1.7ms diff 499µs
align 67108864 pre 1.68ms on 2.15ms post 1.59ms diff 517µs
align 33554432 pre 1.39ms on 1.78ms post 1.38ms diff 394µs
align 16777216 pre 1.27ms on 1.68ms post 990µs diff 551µs
align 8388608 pre 1.26ms on 1.68ms post 985µs diff 555µs
align 4194304 pre 1.38ms on 1.88ms post 1.29ms diff 543µs
align 2097152 pre 1.44ms on 1.6ms post 1.44ms diff 155µs
align 1048576 pre 1.44ms on 1.58ms post 1.48ms diff 122µs
align 524288 pre 1.48ms on 1.6ms post 1.43ms diff 140µs
align 262144 pre 1.44ms on 1.6ms post 1.48ms diff 143µs
align 131072 pre 1.48ms on 1.59ms post 1.43ms diff 140µs
align 65536 pre 1.43ms on 1.56ms post 1.48ms diff 110µs
align 32768 pre 1.47ms on 1.58ms post 1.43ms diff 129µs
align 16384 pre 1.43ms on 1.59ms post 1.47ms diff 137µs
align 8192 pre 1.41ms on 1.48ms post 1.41ms diff 73.5µs
align 4096 pre 1.41ms on 1.48ms post 1.41ms diff 67.4µs
flashbench -f /dev/sdb
4MiB 5.02M/s 8.23M/s 2.39M/s 5.04M/s 10.4M/s 2.08M/s
2MiB 4.64M/s 17.1M/s 4.91M/s 4.41M/s 5.01M/s 4.51M/s
1MiB 4.98M/s 13.9M/s 4.69M/s 4.98M/s 4.72M/s 1.75M/s
512KiB 4.74M/s 16.9M/s 4.98M/s 4.74M/s 4.78M/s 15M/s
256KiB 4.99M/s 13.4M/s 4.93M/s 4.71M/s 1.99M/s 4.97M/s
128KiB 4.74M/s 14.1M/s 4.53M/s 4.96M/s 4.38M/s 4.99M/s
64KiB 4.73M/s 13.3M/s 4.92M/s 4.76M/s 2.03M/s 4.9M/s
32KiB 4.41M/s 15.1M/s 4.9M/s 4.42M/s 4.96M/s 4.68M/s
16KiB 4.58M/s 11M/s 4.78M/s 4M/s 4.83M/s 3.39M/s
flashbench /dev/sdb --open-au --erasesize=$[4*1024*1024] --blocksize=$[16*1024] --open-au-nr=1
4MiB 14.9M/s
2MiB 17.9M/s
1MiB 18.5M/s
512KiB 18.1M/s
256KiB 18.1M/s
128KiB 17.6M/s
64KiB 17.3M/s
32KiB 16M/s
16KiB 13.2M/s
flashbench /dev/sdb --open-au --erasesize=$[4*1024*1024] --blocksize=$[16*1024] --open-au-nr=2
4MiB 16.4M/s
2MiB 17.8M/s
1MiB 17.8M/s
512KiB 17.1M/s
256KiB 16.3M/s
128KiB 15.1M/s
64KiB 14M/s
32KiB 11.3M/s
16KiB 8.04M/s
flashbench /dev/sdb --open-au --erasesize=$[4*1024*1024] --blocksize=$[16*1024] --open-au-nr=3
4MiB 17.4M/s
2MiB 18.2M/s
1MiB 17.7M/s
512KiB 17.1M/s
256KiB
16M/s
128KiB 15.3M/s
64KiB 14M/s
32KiB 11.2M/s
16KiB 7.92M/s
flashbench /dev/sdb --open-au --erasesize=$[4*1024*1024] --blocksize=$[16*1024] --open-au-nr=4
4MiB 10.9M/s
2MiB 5.98M/s
1MiB 9.38M/s
512KiB 7.03M/s
256KiB 6.67M/s
128KiB 6.8M/s
64KiB 8.36M/s
32KiB 7.11M/s
16KiB 5.92M/s
flashbench /dev/sdb --open-au --erasesize=$[4*1024*1024] --blocksize=$[16*1024] --open-au-nr=5
4MiB 6.5M/s
2MiB 4.62M/s
1MiB 3.2M/s
512KiB 3.41M/s
256KiB 3.25M/s
128KiB 2.83M/s
64KiB 4.41M/s
32KiB 6.06M/s
16KiB 3.52M/s
With --random parameter:
flashbench /dev/sdb --open-au --erasesize=$[4*1024*1024] --blocksize=$[16*1024] --random --open-au-nr=1
4MiB 15.8M/s
2MiB 17.8M/s
1MiB 18M/s
512KiB 15.7M/s
256KiB 8.44M/s
128KiB 3.01M/s
64KiB 1.45M/s
32KiB 719K/s
16KiB 343K/s
flashbench /dev/sdb --open-au --erasesize=$[4*1024*1024] --blocksize=$[16*1024] --random --open-au-nr=2
4MiB 13.9M/s
2MiB 17.8M/s
1MiB 17.8M/s
512KiB 15.5M/s
256KiB 8.48M/s
128KiB 2.99M/s
64KiB 1.45M/s
32KiB 718K/s
16KiB 342K/s
flashbench /dev/sdb --open-au --erasesize=$[4*1024*1024] --blocksize=$[16*1024] --random --open-au-nr=3
4MiB 7.17M/s
2MiB 17.9M/s
1MiB 17.1M/s
512KiB 15.5M/s
256KiB 8.36M/s
128KiB 3.01M/s
64KiB 1.45M/s
32KiB 718K/s
16KiB 343K/s
flashbench /dev/sdb --open-au --erasesize=$[4*1024*1024] --blocksize=$[16*1024] --random --open-au-nr=4
4MiB 8.54M/s
2MiB 5.46M/s
1MiB 9.28M/s
512KiB 4.51M/s
256KiB 3.65M/s
128KiB 1.43M/s
64KiB 745K/s
32KiB 441K/s
16KiB 254K/s
flashbench /dev/sdb --open-au --erasesize=$[4*1024*1024] --blocksize=$[16*1024] --random --open-au-nr=5
4MiB 5.46M/s
2MiB 5.01M/s
1MiB 4.92M/s
512KiB 2.16M/s
256KiB 1.32M/s
128KiB 799K/s
64KiB 432K/s
32KiB 246K/s
16KiB 177K/s
I think that the Erased Block has 4 MiB and each Page has 16 kiB, but the open-au it's only 1 or maybe 2, I don't know. Is that correct?
I want use F2FS in this card, but I don't know if this card is good for this, and I don't know too how to alignment correctly with F2FS, using mkfs.f2fs.
Sérgio Benjamim