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ť.