ProHoster > Log > administrasjon > Hvordan evaluere lagringsytelse på Linux: benchmarking ved hjelp av åpne verktøy
Hvordan evaluere lagringsytelse på Linux: benchmarking ved hjelp av åpne verktøy
В sist vi snakket om åpen kildekode-verktøy for å evaluere prosessor- og minneytelse. I dag snakker vi om benchmarks for filsystemer og lagringssystemer på Linux – Interbench, Fio, Hdparm, S og Bonnie.
Fio (står for Flexible I/O Tester) lager disk I/O-strømmer for å evaluere ytelsen til et Linux-filsystem. Verktøyet kan også kjøres på Windows - du må installere kommandolinjegrensesnittet Cygwin. Oppsettguiden er inne fio repositories på GitHub.
Forfatter fio - Jens Axbo (Jens Axboe), ansvarlig for IO-delsystemet i Linux og verktøyutvikler blktrace for å spore I/O-operasjoner. Han skapte fio, fordi jeg er trøtt skrive programmer for å teste spesifikke belastninger manuelt.
Verktøyet vil beregne IOPS og systemgjennomstrømning, og lar deg også estimere dybden på køen av I/O-operasjoner. Verktøyet fungerer med spesielle filer (.fio-utvidelse) der innstillingene og testbetingelsene er spesifisert. Det er flere testalternativer, for eksempel er det tilfeldig skriving, lesing og overskriving. Her eksempel filinnhold for det første tilfellet:
Verktøyet ble skrevet av den kanadiske utvikleren Mark Lord tilbake i 2005. Hun fortsatt støttet av forfatteren og er en del av mange populære distribusjoner. Hovedformålet med hdparm er å konfigurere stasjonsparametere. Men verktøyet man kan bruk for enkle benchmarks, for eksempel lesehastighet. For å gjøre dette, skriv kommandoen i konsollen:
$ sudo hdparm -t /dev/sdb
Systemet vil generere et svar som dette:
Timing buffered disk reads: 242 MB in 3.01 seconds = 80.30 MB/sec
Når det gjelder konfigurering av stasjoner, lar hdparm deg endre størrelsen på hurtigbufferminnet, endre hvilemodus og strøminnstillinger, og også trygt slette data på SSD-en. Men hvordan varsle Eksperter fra ArchLinux, uforsiktige endringer i systemparametere kan gjøre dataene på disken utilgjengelige og til og med skade stasjonen. Før du arbeider med hdparm, er det bedre å lese manualen - bare skriv inn kommandoen man hdparm i konsollen.
Dette er et sett med benchmarks for å evaluere ytelsen til I/O-systemer. Forfatterne av verktøyet var utviklingsteam fra AlgoDev-gruppen, som inkluderer ansatte i italienske Universitetet i Modena og Reggio Emilia.
Alle benchmarks er bash-skript, evaluatorer lagringssystemytelse - gjennomstrømning, latens, planleggingsytelse. For eksempel "bombarderer" throughput-sync.sh-referansen lagringssystemet med lese- eller skriveforespørsler (i dette tilfellet brukes det allerede nevnte fio-verktøyet). Her kode for dette skriptet.
Et annet skript - comm_startup_lat.sh - måler ventetiden for å lese data fra disken når cachen er "kald" (når den ikke inneholder de nødvendige dataene). Kode også finnes i depotet.
Et verktøy for å evaluere filsystemytelse, utviklet i 1989. Forfatteren var ingeniør Tim Bray. Med Bonnies hjelp planla han optimalisere drift av datasystemer involvert i prosjektet Ny Oxford English Dictionary ved University of Waterloo.
Bonnie oppfyller tilfeldig lesing og skriving av data til disk. Etterpå viser verktøyet parametere som antall byte behandlet pr CPU-sekund, samt prosessorbelastningsnivået i prosent. Referansekildekoden er tilgjengelig finne på Google Code.
Basert på Bonnie, er et annet sett med verktøy for testing av harddisker bygget - Bonnie++ (skrevet i C++ i stedet for C). Det gir ytterligere benchmarkverktøy. For eksempel zcav for å evaluere ytelsen til forskjellige HDD-soner. Også Bonnie++ подходит for testing av e-postservere og databaseservere.
Utviklet verktøyet Con Kolivas (Con Kolivas), australsk anestesilege som er kjent for sine bidrag til utviklingen av Linux-kjernen og arbeidet med "rettferdig prosessorplanlegger" Interbench hjelper deg med å konfigurere I/O-planlegger og filsysteminnstillinger.
Interbench emulerer oppførselen til CPU-planleggeren når du utfører interaktive oppgaver. Disse interaktive oppgavene kan være å jobbe med lyd og video, kjøre dataspill eller ganske enkelt dra en dialogboks i operativsystemet.
Kildekode, eksempler og anbefalinger for konfigurering av verktøyet finner du i offisielt depot på GitHub.