Ako skontrolovať eMMC pod Linuxom
Čoraz častejšie je v notebookoch, hlavne tých v nižšej cenovej hladine, používanie eMMC rovnako ako v mobilných telefónoch
eMMC - embedded Multi-Media Card, je štandard pre úložisko, je menej zložitý ako SSD, ale nedosahuje jeho parametre. Takmer každý SSD disk je rýchlejší, ale eMMC úložiská sú lacnejšie.
eMMC sú o dosť pomalšie, aj keď sa často píše, že ide o rýchle úložisko.
Jedným z hlavných problémov ale je získanie informácií o eMMC. Na rozdiel od SSD a HDD bežne, napríklad za pomoci HardInfo alebo inxi / smxi, nie je schopné zobraziť podrobnejšie informácie.
Mne sa osvedčil pistore.
Základné informácie je možné získať z inxi pri použití parametru Dxxx.
mx@gnawty:~
$ inxi -Dxxx
Drives: Local Storage: total: 14.68 GiB used: 6.18 GiB (42.1%)
ID-1: /dev/mmcblk0 vendor: Hynix model: HAG2e size: 14.68 GiB type: SSD
serial: 0x04afd0d4 rev: 0x7 scheme: GPT
mx@gnawty:~
$ Ide o základné informácie, pre porovnanie informácia o SSD:
mx@acer:~
$ inxi -Dxxx
Drives: Local Storage: total: 163.45 GiB used: 16.44 GiB (10.1%)
ID-1: /dev/sda vendor: Kingston model: SMS151S324G size: 22.37 GiB speed: 6.0 Gb/s
type: SSD serial: 50026B7235052A0E rev: 00.7 temp: 31 C scheme: MBR
ID-2: /dev/sdb vendor: Kingston model: SV300S37A120G size: 111.79 GiB speed: 6.0 Gb/s
type: SSD serial: 50026B723B012668 rev: BBF0 temp: 29 C scheme: MBR
ID-3: /dev/sdc type: USB vendor: Silicon Power model: UFD 2.0 32G size: 29.3 GiB
type: N/A serial: 1402665401200310 rev: 1100 scheme: MBR
mx@acer:~Pre zistenie podrobnejších informácií nie je nutné inštalovať žiadne ďaľšie utility, v kerneli sú ovládače a na informácie stačia utility v každej distribúcií. Najmä df, dd, lsblk, fdisk a dmesg
Podrobnejšie informácie sú napríklad cez príkaz dmesg
mx@gnawty:~ $ sudo dmesg | grep mmc [ 2.738029] mmc0: SDHCI controller on ACPI [80860F14:00] using ADMA [ 2.740088] mmc1: SDHCI controller on ACPI [80860F16:00] using ADMA [ 2.885743] mmc0: new HS200 MMC card at address 0001 [ 2.886337] mmcblk0: mmc0:0001 HAG2e\x05 14.7 GiB [ 2.886863] mmcblk0boot0: mmc0:0001 HAG2e\x05 partition 1 4.00 MiB [ 2.887368] mmcblk0boot1: mmc0:0001 HAG2e\x05 partition 2 4.00 MiB [ 2.887598] mmcblk0rpmb: mmc0:0001 HAG2e\x05 partition 3 4.00 MiB, chardev (240:0) [ 2.889762] mmcblk0: p1 p2 p3 [ 5.239929] EXT4-fs (mmcblk0p2): mounted filesystem with ordered data mode. Opts: (null) [ 9.301115] Adding 1070076k swap on /dev/mmcblk0p3. Priority:-2 extents:1 across:1070076k SSFS [ 9.323477] EXT4-fs (mmcblk0p2): re-mounted. Opts: discard [ 10.065159] FAT-fs (mmcblk0p1): utf8 is not a recommended IO charset for FAT filesystems, filesystem will be case sensitive!
Ako vidieť oproti inxi sú zobrazené informácie aj o partíciách a o radiči /-och
Osobne na základnú identifikáciu používam df.
mx@gnawty:~ $ sudo df df: /root/.cache/doc: Operácia nie je povolená Súborový systém 1K-bloky Použ Dostupné Pou% Pripojený na udev 941552 0 941552 0% /dev tmpfs 195356 2732 192624 2% /run /dev/mmcblk0p2 13473072 6418004 6348868 51% / tmpfs 5120 8 5112 1% /run/lock tmpfs 604720 46232 558488 8% /dev/shm /dev/mmcblk0p1 523248 9720 513528 2% /boot/efi cgroup 12 0 12 0% /sys/fs/cgroup tmpfs 195352 16 195336 1% /run/user/1000 mx@gnawty:~ $
Základný test robím cez dd
mx@gnawty:~ $ sudo dd if=/dev/urandom of=/test oflag=direct [sudo] heslo pre používateľa mx: 81920+0 záznamov prečítaných 81920+0 záznamov zapísaných 335544320 bytes (336 MB, 320 MiB) copied, 8,62525 s, 37,6 MB/s mx@gnawty:~ $
Pre zložitejšie testovanie používam pibenchmark pôvodne vyvýjaný pre Raspberry Pi. Na ich súhrnnej stránke je možné dohľadať rôzne disky (aj eMMC) a porovnať si výsledky.
pistore test používa aj mnou vyššie uvedený dd test, ale tu urobí viac a komplexnejších testov.
Inštalácia a spúšťanie je úplne jednoduché:
wget https://raw.githubusercontent.com/TheRemote/PiBenchmarks/master/Storage.sh
chmod +x Storage.sh
sudo ./Storage.sh /<cesta k skriptu>/
Test SSD Kingston SV300S37A120G dáva výsledok 16706 bodov a eMMC 2404.
Výpis z testu pistore eMMC Hynix HAG2e 16GB v Chromebooku GNAWTY (Acer CB3-111), ako vidieť používa inxi, dd a pár ďaľších utilít.
mx@gnawty:~
$ sudo ./Storage.sh
[sudo] heslo pre používateľa mx:
Trimming and syncing drives ...
/boot/efi: 495,5 MiB (519585792 bytes) trimmed on /dev/mmcblk0p1
/: 0 B (0 bytes) trimmed on /dev/mmcblk0p2
Wrong DMI structures count: 12 announced, only 10 decoded.
Wrong DMI structures count: 12 announced, only 10 decoded.
Board information: Manufacturer: GOOGLE - Model: Gnawty - Architecture: x86_64 - OS: Debian GNU/Linux 11 (bullseye)
Fetching required components ...
Wrong DMI structures count: 12 announced, only 10 decoded.
Wrong DMI structures count: 12 announced, only 10 decoded.
Clock speeds: CPU: Unknown - Core:
System rootfs drive (/) has been detected as /dev/mmcblk0p2 (mmcblk0p2)
Starting INXI hardware identification...
System:
Host: gnawty Kernel: 4.19.0-256-antix.1-amd64-smp arch: x86_64 bits: 64
compiler: gcc v: 10.2.1 Desktop: Xfce v: 4.16.0 Distro: MX-21.2.1_x64
Wildflower August 28 2022 base: Debian GNU/Linux 11 (bullseye)
Machine:
Type: Laptop System: GOOGLE product: Gnawty v: 1.0 serial: 123456789
Mobo: GOOGLE model: Gnawty v: 1.0 serial: 123456789 UEFI: coreboot
v: MrChromebox date: 02/04/2018
Battery:
ID-1: BAT0 charge: 27.7 Wh (93.0%) condition: 29.8/36.7 Wh (81.3%)
volts: 12.7 min: 11.4 model: LGC AC14B18 status: N/A
CPU:
Info: dual core model: Intel Celeron N2840 bits: 64 type: MCP
arch: Silvermont rev: 8 cache: L1: 112 KiB L2: 1024 KiB
Speed (MHz): avg: 1402 high: 2301 min/max: 500/2582 cores: 1: 2301 2: 503
bogomips: 8663
Flags: ht lm nx pae sse sse2 sse3 sse4_1 sse4_2 ssse3 vmx
Graphics:
Device-1: Intel Atom Processor Z36xxx/Z37xxx Series Graphics & Display
driver: i915 v: kernel bus-ID: 00:02.0
Device-2: Sunplus Innovation HD WebCam type: USB driver: uvcvideo
bus-ID: 1-3:2
Display: server: X.Org v: 1.20.11 driver: X: loaded: modesetting
unloaded: fbdev,vesa dri: i965 gpu: i915 resolution: 1366x768~60Hz
OpenGL: renderer: Mesa DRI Intel HD Graphics (BYT) v: 4.2 Mesa 20.3.5
direct render: Yes
Network:
Device-1: Intel Wireless 7265 driver: iwlwifi v: kernel bus-ID: 01:00.0
IF: wlan0 state: up mac: 7c:b0:c2:b0:ff:95
Device-2: Intel Bluetooth wireless interface type: USB driver: btusb
bus-ID: 1-4:3
Drives:
Local Storage: total: 14.68 GiB used: 6.47 GiB (44.1%)
ID-1: /dev/mmcblk0 vendor: Hynix model: HAG2e size: 14.68 GiB
Message: No optical or floppy data found.
Partition:
ID-1: / size: 12.85 GiB used: 6.31 GiB (49.1%) fs: ext4 dev: /dev/mmcblk0p2
ID-2: /boot/efi size: 511 MiB used: 9.5 MiB (1.9%) fs: vfat
dev: /dev/mmcblk0p1
ID-3: swap-1 size: 1.02 GiB used: 161.2 MiB (15.4%) fs: swap
dev: /dev/mmcblk0p3
Info:
Processes: 284 Uptime: 2h 24m Memory: 1.86 GiB used: 620.8 MiB (32.5%)
Init: SysVinit runlevel: 5 Compilers: gcc: N/A Packages: 1974
Shell: Storage.sh inxi: 3.3.22
Running additional hardware identification tests...
Additional hardware identification tests completed.
Starting MMC/SD identification...
MMC Detected. Identifying...
cat: /sys/block/mmcblk0/device/emmc_total_size: Adresár alebo súbor neexistuje
MMC Type: eMMC v4 (Embedded) - Manufacturer: SK Hynix - Model: - Size: 13.2G
Running HDParm tests ...
/dev/mmcblk0p2:
Timing O_DIRECT cached reads: 274 MB in 2.00 seconds = 137.04 MB/sec
Timing O_DIRECT disk reads: 364 MB in 3.01 seconds = 121.07 MB/sec
HDParm: 121.07 MB/s - HDParmCached: 137.04 MB/s
Running dd tests ...
81920+0 záznamov prečítaných
81920+0 záznamov zapísaných
335544320 bytes (336 MB, 320 MiB) copied, 8,62525 s, 38,9 MB/s
DD Write Speed: 38.9 MB/s
Running fio write test ...
Running fio read test ...
FIO results - 4k RandWrite: 3002 IOPS (12011 KB/s) - 4k RandRead: 6404 IOPS (25616 KB/s)
Running iozone test ...
Iozone: Performance Test of File I/O
Version $Revision: 3.489 $
Compiled for 64 bit mode.
Build: linux-AMD64
Run began: Mon Oct 17 10:50:54 2022
Auto Mode
Include fsync in write timing
O_DIRECT feature enabled
File size set to 81920 kB
Record Size 4 kB
Command line used: iozone -a -e -I -i 0 -i 1 -i 2 -s 80M -r 4k
Output is in kBytes/sec
Time Resolution = 0.000001 seconds.
Processor cache size set to 1024 kBytes.
Processor cache line size set to 32 bytes.
File stride size set to 17 * record size.
random random bkwd record stride
kB reclen write rewrite read reread read write read rewrite read fwrite frewrite fread freread
81920 4 10252 12388 13207 12950 12357 7292
iozone test complete.
RandRead: 12357 - RandWrite: 7292 - Read: 13207 - Write: 10252
Enter a description of your storage and setup (Example: Kingston A400 SSD on Pi 4 using StarTech SATA to USB adapter)
Description: emmcHAG2e
(Optional) Enter alias to use on benchmark results. Leave blank for completely anonymous.
Alias (leave blank for Anonymous):
Result submitted successfully and will appear live on https://pibenchmarks.com within a couple of minutes.
Category Test Result
HDParm Disk Read 121.07 MB/s
HDParm Cached Disk Read 137.04 MB/s
DD Disk Write 38.9 MB/s
FIO 4k random read 6404 IOPS (25616 KB/s)
FIO 4k random write 3002 IOPS (12011 KB/s)
IOZone 4k read 13207 KB/s
IOZone 4k write 10252 KB/s
IOZone 4k random read 12357 KB/s
IOZone 4k random write 7292 KB/s
Score: 2412
Compare with previous benchmark results at:
https://pibenchmarks.com/
mx@gnawty:~
$

Pre pridávanie komentárov sa musíte prihlásiť.