Linux a Unix testovací Disk I/O výkon s příkazem dd

Jak mohu použít příkaz dd na Linuxu k testování I / o výkonu mé jednotky pevného disku? Jak mohu zkontrolovat výkon pevného disku, včetně rychlosti čtení a zápisu v operačních systémech Linux? Jak mohu použít příkaz dd v rámci testu výkonu Linux I/O?
v systémech Linux nebo Unix můžete použít následující příkazy pro jednoduchý sekvenční I / O výkonnostní test:

  • příkaz dd : Používá se ke sledování výkonu zápisu diskového zařízení v systému Linux a Unix.
    podrobnosti Tutorial
    Obtížnost Střední (rss)
    oprávnění uživatele Root Ano
    Požadavky dd
    Čas 15m
  • hdparm příkaz : používá se k get/set pevného disku parametrů, včetně testu čtení a ukládání do mezipaměti výkon disku zařízení na Linuxu založený systém.

v tomto tutoriálu se dozvíte, jak používat příkaz dd k testování výkonu I / o disku .

pomocí příkazu dd monitorujte výkon čtení a zápisu diskového zařízení:

příkaz dd je užitečný pro zjištění jednoduchého sekvenčního I / o výkonu.

pochopení možností příkazu dd

v tomto příkladu používám pole RAID-10 (Adaptec 5405Z s SAS SSD) běžící na serveru Ubuntu Linux 14.04 LTS. Základní syntaxe je následující zjistit propustnost serveru:

Ukázkové výstupy:

Obr.01: Ubuntu Linux Server s RAID10 a testování serveru propustnost s dd

vezměte Prosím na vědomí, že jeden gigabyte byl napsán pro test a 135 MB/s byla propustnost serveru pro tento test. Kde,

  • if= / dev / zero (if= / dev / input.soubor): název vstupního souboru, ze kterého chcete číst.
  • z=/tmp/test1.img (of= / path / to / output.soubor): název výstupního souboru, který chcete DD zapsat vstup.soubor do.
  • bs=1G (bs=block-size): Nastavte velikost bloku, který má dd použít. Pro test byl napsán 1 gigabajt. Vezměte prosím na vědomí, že Linux bude potřebovat 1 GB volného místa v paměti RAM. Pokud váš testovací systém nemá k dispozici dostatek paměti RAM, použijte menší parametr pro bs (například 128 MB nebo 64 MB atd.).
  • count=1 (count=počet bloků): počet bloků, které má dd číst.
  • oflag=dsync (oflag=dsync): pro data použijte synchronizované vstupy/výstupy. Tuto možnost nevynechávejte. Tato volba se zbaví ukládání do mezipaměti a poskytuje dobré a přesné výsledky
  • conv=fdatasyn: opět to říká, že dd vyžaduje úplnou „synchronizaci“ jednou, těsně před ukončením. Tato volba je ekvivalentní oflag=dsync.

Najít server latenci

V tomto příkladu, 512 bajtů bylo napsáno tisíckrát, aby si RAID10 server latenci:

dd if=/dev/zero of=/tmp/test2.img bs=512 count=1000 oflag=dsync

Ukázkové výstupy:

1000+0 records in1000+0 records out512000 bytes (512 kB) copied, 0.60362 s, 848 kB/s

Vezměte prosím na vědomí, že server propustnost a latenci záleží na serveru/aplikace zatížení. Takže doporučuji, abyste tyto testy spustili na nově restartovaném serveru a ve špičce, abyste získali lepší představu o své pracovní zátěži. Nyní můžete porovnat tato čísla se všemi zařízeními.

ale proč je propustnost serveru a doba latence tak nízká?

nízké hodnoty neznamená, že používáte pomalý hardware. Hodnota může být nízká kvůli mezipaměti hardwarového řadiče RAID10.

Použít příkaz hdparm vidět vyrovnávací paměti a mezipaměti disku rychlost čtení

doporučuji vám spustit následující příkazy 2 nebo 3 krát Provádět časování zařízení čte pro orientační a srovnávací účely:

### Buffered disk read test for /dev/sda ##hdparm -t /dev/sda1## OR ##hdparm -t /dev/sda

provádět časování mezipaměti přečte pro orientační a srovnávací účely znovu spusťte následující příkaz 2-3 krát (poznámka-T, možnost):

## Cache read benchmark for /dev/sda ###hdparm -T /dev/sda1## OR ##hdparm -T /dev/sda

NEBO kombinovat oba testy:

hdparm -Tt /dev/sda

Ukázkové výstupy:

Obr.02: Příkaz Linux hdparm pro testování výkonu disku pro čtení a ukládání do mezipaměti

znovu si všimněte, že díky ukládání souborů do mezipaměti při operacích se soubory budete vždy vidět vysokou rychlost čtení.

Použít příkaz dd na Linuxu testovat rychlost čtení

získat přesné čtení testovací data, nejprve zlikvidujte cache testování před spuštěním následujících příkazů:

flushecho 3 | sudo tee /proc/sys/vm/drop_cachestime dd if=/path/to/bigfile of=/dev/null bs=8k

Linux Laptop příklad

Spusťte následující příkaz:

Apple OS X Unix (Macbook pro) příklad

GNU dd má mnohem více možností, ale OS X/BSD a Unix-jako dd příkaz nutné spustit takto testovat v reálném disk I/O a ne paměť přidat možnost synchronizace takto:

## Run command 2-3 times to get good results ###time sh -c "dd if=/dev/zero of=/tmp/testfile bs=100k count=1k && sync"

Ukázkové výstupy:

1024+0 records in1024+0 records out104857600 bytes transferred in 0.165040 secs (635346520 bytes/sec) real0m0.241suser0m0.004ssys0m0.113s

Takže jsem stále 635346520 bajtů (635.347 MB/s) rychlost zápisu na mém MBP.

není fanoušek nástrojů příkazového řádku…?

můžete použít disk utility (gnome-disk-utility) v systému založeném na Linuxu nebo Unixu, abyste získali stejné informace. Následující obrázek je převzat z mé Fedora Linux v22 VM a Ubuntu 20.04 desktop:

Grafická metoda

Klikněte na „Aktivity“ nebo stiskněte tlačítko „Super“ klíč k přepínání mezi Činnosti, přehled a desktop. Typ „Disky“

Obr.03: Start Gnome disk utility

Vyberte váš pevný disk v levém podokně a klepněte na tlačítko konfigurovat a klikněte na „Referenční oddíl“:

Obr.04: Benchmark disk / partition

nakonec klikněte na tlačítko“ Start Benchmark… “ (můžete být povýšeni na uživatelské jméno a heslo správce):

obr.05: konečný výsledek benchmarku

Running Disks tool pod Ubuntu 20.04 LTS:

  1. nejprve otevřete disky z přehledu aktivit.
  2. Dále vyberte disk ze seznamu v levém podokně.
  3. vyberte tlačítko menu a vyberte Benchmark disk… z nabídky.
  4. klikněte na Start Benchmark… a podle potřeby upravte parametry přenosové rychlosti a doby přístupu.
  5. nakonec klikněte na Start Benchmarking a vyzkoušejte, jak rychle lze z disku číst data. Mohou být vyžadována oprávnění správce. Zadejte své heslo nebo heslo pro požadovaný účet správce systému.

Otestujte výkon pevného disku pomocí disků‘

jakou metodu a příkaz doporučujete použít k testování výkonu i/o disku?

  • doporučuji dd příkaz na všech Unix-like systémů (čas sh-c „dd if=/dev/zero of=/tmp/testfile bs=100k count=1k && sync“))
  • Pokud používáte GNU/Linux pomocí příkazu dd (dd if=/dev/zero of=/tmp/testALT.img bs=1 count=1 conv=fdatasync)
  • ujistěte Se, že můžete nastavit počet a bs argumenty, dle vašeho nastavení, aby si dobrou sadu výsledek.
  • metoda GUI se doporučuje pouze pro uživatele notebooků Linux / Unix se systémem Gnome 2 nebo 3 desktop.
  • pro detailní srovnávání výkonu I / O použijte příkaz Fio
  • používáme IOzone. Jedná se o srovnávací nástroj souborového systému. Benchmark generuje a měří různé operace se soubory.

závěr

naučili jste se používat DD pod Linuxem nebo Unixem pro testování jednoduchého a sekvenčního měření výkonu I/O. Pro detailní i / o výkon benchmarking zkuste „Flexibilní I / O Tester (FIO)“ pro Unix nebo Linux. Podívejte se, jak Linux zkontrolovat IDE / SATA rychlost přenosu pevného disku a manuálové stránky: hdparm (1) pro více informací.

🐧 podpořte mou práci na Patreonu nebo darem.
Get Získejte nejnovější Návody na Linux, Open Source & DevOps prostřednictvím RSS kanálu nebo týdenního e-mailového zpravodaje.
14 zatím 14 komentářů. .. přidat jeden ↓
Kategorie Seznam Unix a Linux příkazy
Správa Souborů kočka
Firewall Alpine Zeď • CentOS 8 • OpenSUSE • RHEL 8 • Ubuntu 16.04 • Ubuntu 18.04 • Ubuntu 20.04
Síťové Nástroje dig • host • ip • nmap
OpenVPN CentOS 7 • CentOS 8 • Debian 10 • Debian 8/9 • Ubuntu 18.04 • Ubuntu 20.04
Správce balíčků apk • apt
Procesy Řízení bg • chroot • cron • popřít • fg • práce • killall • zabít • pidof • pstree • pwdx • čas
Vyhledávání grep • kde je ted • které
Informace pro Uživatele skupiny • id • lastcomm • poslední • víko/libuser-víko • název • členové • uživatelé • whoami • kdo • w
WireGuard VPN Alpine • CentOS 8 • Debian 10 • Firewall • Ubuntu 20.04

You might also like

Napsat komentář

Vaše e-mailová adresa nebude zveřejněna.