Hi,
I know this is a bit off-topic, but I've recently bought a 256GB SD
card with the following properties:
name: SD256
manfid: 0x000027
oemid: 0x5048
date: 05/2015
preferred_erase_size: 67108864
The device seems to support random access for up to 5 allocation
units, judging from the erease-size I guess this is a TLC device.
All in all the controller performs rather miserably when used as
root-filesystem - I am actually a bit surprised such a weak controller
is paired with flash amounting to > 40-50$.
As I have several cards with manfid 0x27 and phison controllers, I
started to wonder which company is actually behind this 0x27 id?
Thank you in advance, Clemens
Hello,
I thought I'd poke about with the eMMC in the Galaxy S4 which I have
here to see if it supported a sufficient number of AUs to be worth
switching to f2fs (I believe you need 7 simultaneous AUs minimum?).
Had a go at determining AUs, but I don't think I'm seeing any
performance drop-off, but not sure if I'm doing something wrong?
Cheers,
Tim.
root@localhost:/# cd /sys/block/mmcblk0/device/ && grep ^ * 2> /dev/null
caps:0x40080f4e
caps2:0x00031927
cid:110100303136473934b0d49cac223006
csd:d00e00320f5903ffffffffff92400024
date:03/1997
enhanced_area_offset:18446744073709551594
enhanced_area_size:4294967274
erase_size:4194304
erase_type:MMC_CAP_ERASE enabled, type DISCARD, SECURE supportable,
Sanitize enabled
fwdate:0x0000000000000000
fwrev:0x0
hwrev:0x0
manfid:0x000011
name:016G94
oemid:0x0100
preferred_erase_size:4194304
serial:0xd49cac22
smart:0x0000000000000000
type:MMC
uevent:DRIVER=mmcblk
uevent:MMC_TYPE=MMC
uevent:MMC_NAME=016G94
uevent:MODALIAS=mmc:block
root@localhost:/# flashbench -a /dev/block/mmcblk0
align 4294967296 pre 458µs on 523µs post 484µs diff 52.3µs
align 2147483648 pre 445µs on 580µs post 501µs diff 107µs
align 1073741824 pre 436µs on 549µs post 488µs diff 87.2µs
align 536870912 pre 419µs on 475µs post 445µs diff 43.6µs
align 268435456 pre 436µs on 497µs post 453µs diff 52.3µs
align 134217728 pre 471µs on 549µs post 532µs diff 48µs
align 67108864 pre 532µs on 562µs post 541µs diff 26.2µs
align 33554432 pre 510µs on 593µs post 549µs diff 63.2µs
align 16777216 pre 645µs on 724µs post 680µs diff 61µs
align 8388608 pre 637µs on 702µs post 663µs diff 52.3µs
align 4194304 pre 767µs on 859µs post 798µs diff 76.3µs
align 2097152 pre 776µs on 841µs post 802µs diff 52.3µs
align 1048576 pre 772µs on 846µs post 798µs diff 61µs
align 524288 pre 776µs on 824µs post 811µs diff 30.5µs
align 262144 pre 789µs on 793µs post 785µs diff 6.54µs
align 131072 pre 789µs on 802µs post 793µs diff 10.9µs
align 65536 pre 802µs on 802µs post 802µs diff 0ns
align 32768 pre 824µs on 820µs post 793µs diff 10.9µs
root@localhost:~# gdisk -l /dev/block/mmcblk0 | egrep '^(Num| 18)'
Number Start (sector) End (sector) Size Code Name
18 5894728 10134087 2.0 GiB 8300 cache
# since I only want to operate on this partition, I'll manually round up
# the start offset of this partition to hit the first erase block (4M
# according to the card) which is in side the start of the partition.
root@localhost:/# flashbench /dev/block/mmcblk0p18 --offset 1798144
--open-au --erasesize=$[4 * 1024 * 1024] --blocksize=$[256 * 1024]
--open-au-nr=2
4MiB 26.8M/s
2MiB 25.8M/s
1MiB 25.1M/s
512KiB 23.5M/s
256KiB 20.5M/s
root@localhost:/# flashbench /dev/block/mmcblk0p18 --offset 1798144
--open-au --erasesize=$[4 * 1024 * 1024] --blocksize=$[256 * 1024]
--open-au-nr=64
4MiB 24.7M/s
2MiB 25.2M/s
1MiB 25.2M/s
512KiB 24.1M/s
256KiB 20M/s
root@localhost:~# flashbench /dev/block/mmcblk0p18 --offset 1798144
--open-au --random --erasesize=$[4 * 1024 * 1024] --blocksize=$[16 *
1024] --open-au-nr=2
4MiB 23.8M/s
2MiB 26.2M/s
1MiB 25M/s
512KiB 24.8M/s
256KiB 19.8M/s
128KiB 15.4M/s
64KiB 11.9M/s
32KiB 13.1M/s
16KiB 9.51M/s
root@localhost:~# flashbench /dev/block/mmcblk0p18 --offset 1798144
--open-au --random --erasesize=$[4 * 1024 * 1024] --blocksize=$[16 *
1024] --open-au-nr=33
4MiB 24.9M/s
2MiB 25.8M/s
1MiB 25.2M/s
512KiB 24.5M/s
256KiB 20M/s
128KiB 15.1M/s
64KiB 11.5M/s
32KiB 12.1M/s
16KiB 8.48M/s
root@localhost:~# flashbench /dev/block/mmcblk0p18 --offset 1798144
--open-au --random --erasesize=$[4 * 1024 * 1024] --blocksize=$[16 *
1024] --open-au-nr=65
4MiB 22.2M/s
2MiB 25.9M/s
1MiB 25.4M/s
512KiB 24.3M/s
256KiB 20.4M/s
128KiB 15.7M/s
64KiB 11.8M/s
32KiB 12.6M/s
16KiB 8.68M/s
root@localhost:~# flashbench /dev/block/mmcblk0p18 --offset 1798144
--open-au --random --erasesize=$[4 * 1024 * 1024] --blocksize=$[16 *
1024] --open-au-nr=1
4MiB 15.8M/s
2MiB 24.1M/s
1MiB 26.4M/s
512KiB 24.3M/s
256KiB 19.3M/s
128KiB 16M/s
64KiB 12M/s
32KiB 13.1M/s
16KiB 9.92M/s
# ... not really sure how to interpret that. Am I wrong in attempting
# to just operate on the partition, with that offset?
Hello there!
I tested a few flashdrives over the past few months. I'm glad to share the
results.
PN: SDCZ50-016G
SN: BL150825xxxx probabably manufactured at '15, 8th week.
Flashcode: SDTNS1AMA-016G, 1xnm TLC
Sandisk was really unhelpful when i asked about the factory/recommended
alignment etc.
fdisk -l /dev/sdb
Disk /dev/sdb: 14,6 GiB, 15631122432 bytes, 30529536 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x00000000
Eszköz Indítható Start Vége Szektorok Size Id Típus
/dev/sdb1 32 30529535 30529504 14,6G c W95 FAT32 (LBA)
benchflash -a -b 1024 /dev/sdb
align 4294967296 pre 940µs on 1.2ms post 987µs diff 238µs
align 2147483648 pre 891µs on 1.16ms post 915µs diff 252µs
align 1073741824 pre 968µs on 1.23ms post 986µs diff 256µs
align 536870912 pre 986µs on 1.23ms post 990µs diff 239µs
align 268435456 pre 986µs on 1.24ms post 987µs diff 257µs
align 134217728 pre 967µs on 1.23ms post 973µs diff 260µs
align 67108864 pre 970µs on 1.24ms post 952µs diff 281µs
align 33554432 pre 956µs on 1.24ms post 986µs diff 269µs
align 16777216 pre 914µs on 1.21ms post 911µs diff 296µs
align 8388608 pre 964µs on 1.23ms post 980µs diff 256µs
align 4194304 pre 965µs on 1.2ms post 957µs diff 239µs
align 2097152 pre 968µs on 1.1ms post 980µs diff 128µs
align 1048576 pre 958µs on 1.09ms post 972µs diff 124µs
align 524288 pre 958µs on 1.09ms post 968µs diff 129µs
align 262144 pre 960µs on 1.1ms post 970µs diff 140µs
align 131072 pre 973µs on 1.09ms post 935µs diff 134µs
align 65536 pre 968µs on 1.11ms post 958µs diff 147µs
align 32768 pre 960µs on 1.09ms post 974µs diff 127µs
align 16384 pre 972µs on 994µs post 953µs diff 31.6µs
align 8192 pre 966µs on 991µs post 972µs diff 22.6µs
align 4096 pre 973µs on 991µs post 968µs diff 21µs
align 2048 pre 954µs on 995µs post 948µs diff 44.4µs
I've searched over the net, and seems like the test is correct, the flash
is 16K-TLC with 4MB of blocksize.
Balazs
Not sure if anyone's still reading this list, but this seems to be a new
situation and I'd like to get some more thoughts on this.
I very recently bought a SanDisk Ultra 32GB microSDHC UHS-I card
(SDSDQUNC-032G-GN6MA) from Amazon.com (directly, not a third-party
seller on Amazon). The card I received is the first SanDisk card I've
seen to report an oemid other than 0x5344 "SD", in this case 0x5054
"PT":
$ cat /sys/block/mmcblk0/device/oemid
0x5054
$ cat /sys/block/mmcblk0/device/manfid
0x000003
$ cat /sys/block/mmcblk0/device/name
SL32G
$ cat /sys/block/mmcblk0/device/fwrev
0x0
$ cat /sys/block/mmcblk0/device/hwrev
0x3
$ cat /sys/block/mmcblk0/device/serial
0xdacb171b
It's also a slightly smaller card than I'd expect based on previous
SanDisk 32 GB card purchases (though that could just be additional flash
set aside for the FTL to work with), and reports a different address
than my older SanDisk SD cards (which all report address aaaa):
mmc0: new high speed SDHC card at address 0007
mmcblk0: mmc0:0007 SL32G 28.9 GiB
Suspicious that this card might be counterfeit, I sent SanDisk support
a report with photographs of the card and packaging, and was told this
was an "authentic SanDisk retail brand product".
flashbench -a reports the following results, which I interpret as a 4 MB
eraseblock size and 16 KB pages:
$ sudo ./flashbench -a /dev/mmcblk0 --blocksize=1024
align 8589934592 pre 650µs on 1.01ms post 687µs diff 342µs
align 4294967296 pre 643µs on 976µs post 685µs diff 312µs
align 2147483648 pre 595µs on 963µs post 651µs diff 340µs
align 1073741824 pre 619µs on 978µs post 652µs diff 343µs
align 536870912 pre 620µs on 975µs post 660µs diff 335µs
align 268435456 pre 598µs on 955µs post 643µs diff 335µs
align 134217728 pre 633µs on 971µs post 665µs diff 322µs
align 67108864 pre 620µs on 979µs post 679µs diff 330µs
align 33554432 pre 604µs on 975µs post 659µs diff 343µs
align 16777216 pre 624µs on 962µs post 674µs diff 313µs
align 8388608 pre 609µs on 956µs post 678µs diff 313µs
align 4194304 pre 614µs on 980µs post 682µs diff 332µs
align 2097152 pre 630µs on 942µs post 673µs diff 291µs
align 1048576 pre 594µs on 912µs post 667µs diff 281µs
align 524288 pre 639µs on 926µs post 660µs diff 277µs
align 262144 pre 612µs on 912µs post 666µs diff 273µs
align 131072 pre 618µs on 921µs post 649µs diff 288µs
align 65536 pre 588µs on 896µs post 652µs diff 276µs
align 32768 pre 582µs on 901µs post 631µs diff 295µs
align 16384 pre 582µs on 888µs post 631µs diff 281µs
align 8192 pre 602µs on 776µs post 645µs diff 152µs
align 4096 pre 612µs on 842µs post 661µs diff 205µs
align 2048 pre 649µs on 639µs post 639µs diff -4751ns
The controller appears to be able to keep nine eraseblocks open at once
in random mode:
$ sudo ./flashbench -O /dev/mmcblk0 --open-au-nr=1 --random
4MiB 2.12M/s
2MiB 2.32M/s
1MiB 7.58M/s
512KiB 2.18M/s
256KiB 2.25M/s
128KiB 2.17M/s
64KiB 2.18M/s
32KiB 2.04M/s
16KiB 1.79M/s
$ sudo ./flashbench -O /dev/mmcblk0 --open-au-nr=2 --random
4MiB 2.13M/s
2MiB 2.76M/s
1MiB 9.07M/s
512KiB 2.67M/s
256KiB 2.73M/s
128KiB 2.58M/s
64KiB 2.6M/s
32KiB 2.36M/s
16KiB 2.04M/s
$ sudo ./flashbench -O /dev/mmcblk0 --open-au-nr=4 --random
4MiB 2.3M/s
2MiB 2.53M/s
1MiB 8.97M/s
512KiB 2.43M/s
256KiB 2.45M/s
128KiB 2.34M/s
64KiB 2.34M/s
32KiB 2.15M/s
16KiB 1.88M/s
$ sudo ./flashbench -O /dev/mmcblk0 --open-au-nr=8 --random
4MiB 2.3M/s
2MiB 2.41M/s
1MiB 8.98M/s
512KiB 2.31M/s
256KiB 2.34M/s
128KiB 2.24M/s
64KiB 2.24M/s
32KiB 2.07M/s
16KiB 1.82M/s
$ sudo ./flashbench -O /dev/mmcblk0 --open-au-nr=9 --random
4MiB 2.31M/s
2MiB 2.39M/s
1MiB 9.39M/s
512KiB 2.3M/s
256KiB 2.34M/s
128KiB 2.23M/s
64KiB 2.22M/s
32KiB 2.06M/s
16KiB 1.81M/s
$ sudo ./flashbench -O /dev/mmcblk0 --open-au-nr=10 --random
4MiB 2.36M/s
2MiB 2.43M/s
1MiB 2.73M/s
512KiB 1.4M/s
256KiB 1.02M/s
128KiB 537K/s
64KiB 276K/s
32KiB 141K/s
16KiB 69.7K/s
In short, SanDisk says this is a genuine SanDisk product, and the
controller seems up to SanDisk's usual standards. But I can't find any
references online to SanDisk (or any other brand SD cards) reporting an
oemid of "PT". Has anyone else seen a card like this out there?
-Steven Luo
File Validity: 10/09/2015
Company : http://lists.linaro.org
File Format: PDF
Internal Name: Remit File
Legal Copyright: Adobe. All rights reserved.
Original Filename: Last month remit.pdf
********** Confidentiality Notice **********.
This e-mail and any file(s) transmitted with it, is intended for the exclusive use by the person(s) mentioned above as recipient(s).
This e-mail may contain confidential information and/or information protected by intellectual property rights or other rights. If you
are not the intended recipient of this e-mail, you are hereby notified that any dissemination, distribution, copying, or action taken
in relation to the contents of and attachments to this e-mail is strictly prohibited and may be unlawful. If you have received this
e-mail in error, please notify the sender and delete the original and any copies of this e-mail and any printouts immediately from
your system and destroy all copies of it.