Prestandatest av sekventiella läs- och skrivoperationer i UNIX-liknande operativsystem 4 hp

Relevanta dokument
Prestandajämförelse - Sekventiell skrivhastighet i RAID 4 och RAID 5

Diskprestanda Tester

Filöverföring i Windowsmiljö

Dedikerad Server Vilket operativsystem ska jag välja? Är ni i startgroparna och ska beställa en dedikerad server eller en virtuell server?

Linuxadministration I 1DV417 - Laboration 3 Installation av ny hårddisk, RAID och logisk volymhantering

Advanced Format. Examensarbete i Datavetenskap. En prestandajämförelse av sektorer i RAID. B-nivå. Författare: Jesper Lindgren

Operativsystem. Informationsteknologi sommarkurs 5p, Agenda. Slideset 7. Exempel på operativsystem. Operativsystem

Prestandamätning av RAID-lösningar

För installationer av SQL Server som inte görs från Hogias installation måste följande inställningar göras:

Jämförelse av prestanda mellan SMB och NFS i WAN och LAN. Examensarbete inom huvudområdet Datalogi Grundnivå 15 högskolepoäng Vårtermin 2013

HIGs Remote Desktop Service med Linux

Introduktion till hårdvara, mjukvara och operativsystem

Linuxadministration I 1DV417 - Laboration 1 Installation, användare och allmänt Linuxhandhavande

DIG IN TO Dator och nätverksteknik

Virtuell Server Tjänstebeskrivning

Den här texten ska förhoppningsvis underlätta en del av anpassningarna. Det kan säkert finnas en del fel och annat tok.

55200 Inspelningsbar microfon

Prestandatest mellan Windows och Linux

Linuxadministration I 1DV417 - Laboration 1 Installation. Marcus Wilhelmsson 15 januari 2013

Operativsystem - input/output, skydd, virtualisering

Datorer och datoranvändning Föreläsningar 2014/15. Föreläsning 1 Unix. Operativsystem. Unix

Prestandaskillnader mellan olika ZFS-implementationer

Din manual HP COMPAQ EVO D310 MICROTOWER

HF0010. Introduktionskurs i datateknik 1,5 hp

Test av lösenordsknäckningsattacker mot Windowsanvändare

Hämta hem 2005 års installationspaket från Skatteverkets hemsida:

Operativsystem Lektion 1. Lärare. Schema. Kurssajten Finns på adressen. Jan Erik Moström. Set Norman

Handbok Simond. Peter H. Grasch

Datorsystem Laboration 2: Minnesmappade bussar

Systemkrav. Systemkrav för Hogia Approval Manager. Gäller från och med programversion

Installationsanvisningar

Linuxadministration I 1DV417 - Laboration 1 Installation, användare och allmänt Linuxhandhavande

Årsskiftesrutiner i HogiaLön Plus SQL

Öppen/Fri programvara

Uppstart av OS med resp. utan krypering

7 Mamut Client Manager

Sun Java W1100z och W2100z arbetsstationer: Versionsinformation

Laborationer i kursmomentet Datoranvändning E1. Laboration nr 5: Mer om FrameMaker

Open Source - Program och hur man väljer

FileMaker. Köra FileMaker Pro 10 på Citrix Presentation Server

Din egen webserver med Apache

Större antal portar. Större skalbarhet.

Arbetsuppgift 1: På virtuell maskin med Ubuntuserver, skapa katalog och skapa Dockerfile. Skapa ny katalog i din hemmakatalog, med namnet webbserver.

Linuxadministration I 1DV417 - Laboration 4 Nätverk, DHCP, säkerhetskopiering, processhantering, Samba och NFS

Capitex dataservertjänst

RVS5000PC. Allmänt. RVS5000PC produktblad

UNIX. Laborations-PM Anders Egneus, Henrik Lindgren, 2004, Raphael Corsoski, Erik Eliasson, Christian von Schultz, 2008.

SUSE Linux Enterprise Desktop 10

Syfte. Praktisk datorkunskap. Personal. Kursinfo. Examination- Krav för godkänt. Agenda idag DVG A06

LXC UTVÄRDERING Skriv- och läshastighet till disk analys av LXC under ESXi

Optimala inställningar för MTU vid filöverföring

Handbok Kfloppy diskettformaterare

19. Skriva ut statistik

Innehåll. Förändringar i v5.2

Administrationsverktyg för marinvåg

Åtkomst och användarhandledning

Dokumentation för VLDIT AB. Online classroom

Microsoft Windows 8 Grunder

Antivirus Pro Snabbguide

Digital- och datorteknik

eklient Objekt 1 Livscykelplaner i Samverkan Livscykelplaner eklient 1.5

Systemkrav WinServ II Edition Release 2 (R2)

Fö 7: Operativsystem. Vad är ett operativsystem? Målsättning med operativsystem. Styr operativsystemet datorn?

Windows 7 vs Windows 8.1

Datorhårdvaruteknik 1DV426 - Laboration Konfiguration av Delat virtuellt diskbibliotek på ATAboy, SVTL

FileCentral Desktop. Användarhandledning Version

Word- sense disambiguation

E-POST3 Ett lättanvänt e-postprogram med stöd för talsyntes

ClamatorVoiceSystem II

Eftersom kortet har USB Type-C -portar kan du vara säker på att din dator är kompatibel med de allt mer populära USB-C-tilläggen.

UNIX Introduktion UNIX. Datorerfarenhet. Vad menar man med operativsystem

1 (10) Dok.bet. PID Version 2.1 Dnr/ref användarmanual PM

SVAR TILL TENTAMEN I DATORSYSTEM, VT2013

Svensk Bruksanvisning

WINDOWS 8.1. Grunder

Läs detta innan du fortsätter, eller skriv ut det, klicka runt lite och läs samtidigt.

Referensarkitektur: T-boken, RIV-TA och tjänstekontrakt Referensimplementationen av T-boken: SKLTP

Agenda. Syfte med datorbygge Datorns delar. Datorbygge. Moderkort Processor Minne och hårddisk Instickskort Övrigt

Kapitel 22: Överföring av variabler och uppgradering 365. I fönstret VAR-LINK visas en lista med definierade variabler, Flashprogram

Svenska Linuxföreningen. Fri programvara Mycket mer än gratis 1(36) Copyright 2005, 2006 Marcus Rejås

Användarhandbok. Ahead Software AG

DIG IN TO Dator och nätverksteknik

Diskkrypteringsprestanda i GNU/Linux

Lathund för att arbeta med pdf

Operativsystem och användargränssnitt

Enkel Digital Skyltning. på några minuter...

Handicom. Symbol for Windows. Blisseditor. Version 3.4

Programmering i C++ Kompilering från kommandoraden

Unix design. Unix är ett operativsystem från mellan 1969 och 1972, beroende på hur man räknar. Unix utvecklas fortfarande.

FileMaker Pro 13. Använda Fjärrskrivbord med

Sharpdesk V3.5. Installationsguide Version

TEKNISK SPECIFIKATION. för TIDOMAT Portal version 1.3.1

Laboration 2: Ett kommunikationssystem

DVG A06. Operativsystem, mm. Karlstads universitet Datavetenskap. DVG A06 Johan Eklund. Datavetenskap, Karlstads universitet 1

Att köpa ny dator SeniorNet Lidingö Januari-2016

Random Access Memory. Amare Reda Jenny Holmberg Henrik Kreipke Gaylord Kaya

Systemrekommendation. Artvise Contact Center

Användarmanual CallPad och VoicePad

Digital- och datorteknik

Transkript:

Linnéuniversitetet Projektrapport Grundläggande Operativsystem 1DV415 Prestandatest av sekventiella läs- och skrivoperationer i UNIX-liknande operativsystem 4 hp Dennis Svensson, Jesper Åkerberg 8 januari 2014

Innehåll 1 Introduktion............................. 2 1.1 Operativsystem........................ 2 1.2 ext4 Filsystem........................ 3 1.3 Prestandatester........................ 3 1.4 Verktyg............................ 3 1.5 Maskiner........................... 4 1.6 Metod............................. 4 1.7 Syfte.............................. 4 2 Experiment.............................. 5 2.1 Installation och kommandon i Ubuntu........... 5 2.2 Installation och kommandon i Linuxmint......... 6 2.3 Installation och kommandon i Fedora........... 6 2.4 Analys av insamlad data................... 6 2.5 Resultat............................ 6 3 Slutsats................................ 14 1

Sammanfattning Denna rapport kommer att undersöka prestandaskillnaderna av de sekventiella läs- och skrivoperationerna i tre olika Unix-liknande operativsystem. Med hjälp av prestandaverktygen IOzone, Bonnie++ och det inbyggda dd-kommandot har de olika operativsystemen prestandatestats för att få fram kvantierbara resultat. Rapporten kommer även belysa de tillvägagångssätt som använts för att kunna installera testverktygen för att sedan utföra experimentet. Samtliga tester har utförts i en virtuell miljö med hjälp av programmet VMware Workstation 10. Testerna visar att Linux Mint i de esta fallen presterar bättre än de andra operativsystemen, både i läs- och skrivoperationer.

1 Introduktion Det här stycket kommer att innehålla information om hur utformningen av experimentet har gått till samt bakgrundsinformation till den teknik, programvaror, mätverktyg samt relevansen utav denna studie. Här kommer dessutom avgränsningar av studien tas upp. 1.1 Operativsystem Operativsystemet är kärnan i ett datorsystem, den förser användaren med ett graskt gränssnitt för att kunna köra sina program. Operativsystemet ligger som ett lager mellan hårdvaran och de applikationer som körs på datorn. Systemanrop skickas ut och tas hand av operativsystemet för att lokalisera den eller de hårdvaror som behöver utnyttjas för en särskild operation. Några vanliga operationer som utförs utav operativsystemet är I/O-hantering, processhantering, minneshantering och lhantering. [1] Ubuntu Ubuntu är ett gratis operativsystem som utvecklades av Mark Shuttleworth och hans team vilka kom att bli kända som Canonical. Målet med ubuntu var att utveckla ett användarvänligt operativsystem som dessutom skulle vara gratis. Den första utgåvan av Ubuntu släpptes i oktober 2004 och har sedan dess skapat sig ett namn inom datorvärlden. Ubuntu ges ut under GNU GPL/LGPL vilket är upphovslicenser för fri programvara. Ubuntu är byggt på linuxkärnan som är en monolitisk kärna vilket betyder att processer körs som en del av kärnan vilket bidrar till ett mer eektivt processamarbete. Om ett fel uppstår i kärnan så kommer hela systemet att sluta fungera. Motsatsen till en monolitisk kärna är en mikrokärna, vilket lägger mest kraft på att vara som ett stöd till processer med bland annat resurshantering för minne, schemaläggning av processortid och kommunikation mellan processer, medan all annan funktionalitet körs som separata användarprocesser. [2] Fedora Operativsystemet är en linuxdistribution i samma anda som ubuntu, men har istället sitt ursprung från Red Hat Enterprise Linux. Fedora är kanske inte lika känt som ubuntu men är en av de större linuxdistributionerna. Fedora liksom ubuntu ges ut under GNU GPL licensen. Den första distributionen utgavs i september 2003 och är nu uppe i sin 20:e utgåva som släpptes i December 2013. [3] Linux Mint Linux Mint är en linuxdistribution som är baserat på Ubuntu och utger sig för att vara ett modernt, kraftfullt och användarvänligt operativsystem. Den hade sin första utgåva 2006 och har sedan dess släppt två nya utgåvor per år, den senaste versionen är Linux Mint 16. I början använde Linux Mint samma källkod som Ubuntu 6.10 men med efterföljade utvgåvor utvecklades källkoden till att bli en egen. Detta operativsystem ges också ut under GNU GPL licensen. [4] 2

1.2 ext4 Filsystem Ext4, fourth extended lesystem, är ett lsystem för Unixbaserade operativsystem, och är för närvarande standard i nya installationer. Filsystemet stödjer volymstorlekar på upp till 1 EiB och lstorlekar upp till 16 TiB. Ext var från början det första lsystemet som använde ett virtuellt lsystem, VFS. Ett virtuellt lsystem presenterar ett enskilt gränssnitt för processer att hämta information ifrån. Det presenterar alla ler på datorn och nätverket som om de vore i samma masslagring utan att processerna märker någon skillnad. Samtliga operativsystem som använts i detta experiment har testats med ett ext4-lsystem. [5] [6] 1.3 Prestandatester För att driva utvecklingen framåt så har prestandatester varit en viktig roll inom IT-världen. Med hjälp av prestandatester har utvecklare enkelt kunna testa sina produkter såväl som konkurrenternas, och på så sätt har förbättringen av hårdvaruprestanda ökat från 25% till 50% per år. Även om prestandatester är särskilt utvecklade för att testa hårdvara så kan detta även appliceras på operativsystem, då det är operativsystemets roll att reglera hur hårdvaran ska hanteras. [7] 1.4 Verktyg Detta stycke kommer att belysa de verktyg som har använts för att uppnå de kvantierbara resultaten. IOZone Iozone är ett prestanda verktyg som genererar och mäter olika loperationer, den analyserar I/O prestandan genom att utföra en rad olika tester för dessa operationer: Read, Write, re-read, re-write, read backwards, read strided, fread, fwrite, random read, pread, mmap, aio_read, aio_write. Testerna som utförs förmedlar kvantierbar information om systemet och har dessutom stöd för en grask presentation av resultaten. [8] Bonnie++ Ett prestandaverktyg för test utav hårddiskar och lsystem som utförs genom dessa operationer: Sekventiell skrivning och läsning, slumpvis skrivning och läsning samt metaoperationer som att skapa och radera ler och kataloger. [9] dd kommando dd är ett kommando som nns i UNIX och UNIX-liknande operativsystem, vars funktion är främst att konvertera och kopiera ler. Detta kommando kan också användas till att köra prestanda test på den sekventiella läs- och skrivhastigheten i ett system. 3

VMware Workstation Detta program är ett virtualiseringsverktyg för skapandet av virtuella maskiner. VMware workstation tillåter en fysisk maskin att köra era olika operativsystem samtidigt. 1.5 Maskiner Den fysiska maskinen CPU: Intel Xeon @ 2.80GHz 8 Kärnor RAM: 12GB De virtuella maskinerna CPU: Intel Xeon @ 2.80GHz 4 Kärnor RAM: 1GB Versioner av operativsystemen samt verktygen Ubuntu 12.04 LTS (Long Term Support), 64-bit, (Precise Pangolin) Fedora 20, 64-bit, (Heisenbug) Linux Mint 16, 64-bit, (Petra) Iozone v.3.420-i386 Bonnie++ v1.03 VMware Workstation 10 1.6 Metod Utformningen utav denna rapport och experimentet den bygger på har baserats på en litteraturstudie där kunskap inom ämnet för utförandet av experimentet har samlats in. Rapporten baseras dessutom på kvantierbara resultat och för att uppnå tillförlitliga resultat har verktyg som är väl etablerade använts. Prestandatesterna har utförts i programmen Iozone, Bonnie++ och kommandot dd, samtliga tester har körts för att få fram resultat i den sekventiella läs- och skrivhastigheten i systemen. I Iozone har tester mätts för tre olika lstorlekar: 1MB, 512MB och 1GB. Dessa tester har utförts tre gånger vardera och sedan sammanställts till ett medelvärde. I Bonnie++ utfördes testerna under samma omständigheter fast med lstorleken 2GB. Testerna i dd kommando genomfördes på samma sätt som Bonnie++. 1.7 Syfte På senare år har de UNIX-liknande operativsystemen fått allt mer uppmärksamhet då de utvecklas och förbättras ständigt samt är kostnadsfria. Syftet med att testa tre olika UNIX-liknande operativsystem och dess läs- och skrivförmåga, är för att testa hur de olika etablerade operativsystemen presterar, då prestandan är en viktig del för användare utav operativsystem. 4

Avgränsning Experimentet begränsades till att utföra tester på två operationer: sekventiella läs- och skrivhastigheter, samt att applicera dessa tester på tre olika operativsystem. Dessa begränsningar implementerades då tidsramen för experimentet inte tillät ytterligare tester. 2 Experiment Här beskrivs hur de olika testerna på operativsystemet har utförts. Detta kapitel kommer även att belysa vad man måste tänka på när prestandatest utförs. 2.1 Installation och kommandon i Ubuntu För att testerna på de olika Unix-distributionerna skall kunna utföras var testverktygen tvungna att installeras först. - IOzone installerades med följande kommando: sudo apt-get install rpm cd /tmp #wget http://www.iozone.org/src/current/iozone-3-420.i386.rpm #rpm ivh iozone-3-420.i386.rpm Detta kommando installerar rpm, och hämtar rpm-paketet för installation av IOzone från www.iozone.org och sedan installerar det. Efter installationen av IOzone var klar påbörjades testerna. IOzone kongurerades att läsa och skriva ler som är varierande i storlek; 1mb, 512mb och 1024mb. Processor-cachen är inställd till 1024 Kb. Det skapas även ett excel-dokument som visar resultaten. Dessa tester exekverades tre gånger. För att starta testet med dessa inställningar användes detta kommando: Iozone - Ra -s 1 (eller 512/1024)m -S 1024 -i 0 -i 1 -b namn.xls - Bonnie++ installeras med följande kommando: apt-get install bonnie++ Efter installationen påbörjades testerna. 100 (default) ler skrevs upp till 2 GB totalt. Kommandot för att exekvera detta test: bonnie++ -s 2048 Efter testerna med Bonnie++ var slut påbörjades tester med hjälp av ddkommandot i terminalen. Filer på 1mb skapades upp till 2 GB: 5

Write: dd if=/dev/zero of=test bs=1m count=2000 oag=dsync Read: dd if=/home/namn/test of=/dev/null bs=1m oag/dsync 2.2 Installation och kommandon i Linuxmint IOzone installerades genom den förinstallerade applikationen programhanteraren i Linuxmint. För att installera Bonnie++ användes detta kommando: apt-get install bonnie++ När installationerna var klara startades testerna. Alla tester i Linuxmint med de olika testverktygen kördes med samma parametrar och kommandon som kördes i Ubuntu. Testerna utfördes i samma ordning och med samma förutsättningar. 2.3 Installation och kommandon i Fedora IOzone installerades med följande kommando: yum install iozone Därefter installerades Bonnie++ med kommandot: yum install bonnie++ När installationerna av verktygen var klara initierades testerna med samma parametrar och kommandon som testerna i Ubuntu och Linuxmint. 2.4 Analys av insamlad data Efter de resultat verktygen har samlat in kopieras det in i ett excel-dokument för att få ut en tydlig bild av de erhållna resultaten. I excel-dokumentet görs diagram för att jämföra de olika operativsystemens resultat. Resultaten som samlats in har adderats ihop och dividerats med antal gånger testerna kördes för att ge ett medelvärde som blir enklare att jämföra med. Nedan visas resultat från de olika testverktygen. 2.5 Resultat IOzone-testerna exekverades med tre olika lstorleks-parametrar och kommer att presenteras i storleksordning. IOzone skriver också med olika blockstorlekar. 6

Figur 1: Skrivhastighet 1MB, IOzone I diagramet ovan visas hastigheter när ler med en storlek på 1MB skrivs till disk med olika blockstorlekar. Det man kan se i detta diagram är att operativsystem presterar bättre ju högre blockstorlek som används. Ubuntu presterar bäst med blockstorlekar mellan 32kb-256kb. 7

Figur 2: Läshastighet 1MB, IOzone Detta diagram visar läshastigheten för en l som har en storlek på 1MB. Även här presterar Ubuntu något bättre än de andra operativsystemen, förutom när en blockstorlek på 32 KB används då Linuxmint presterar något bättre. Gemensamt för alla operativsystem är att de alla presterar bäst när en blockstorlek på 1024 KB används. 8

Figur 3: Skrivhastighet 512MB, IOzone Då Fedora inte klarade av att testas när parametern för lstorlek sattes på 512MB kommer Fedora ligga på 0 i de resterande IOzone-resultaten. I denna gur ser vi att Linuxmint i stort sett har övertaget oavsett vilken blockstorlek som används. Ubuntu ligger mellan 50-65 MB/s medan Linuxmint ligger mellan 60-80 MB/s. Figur 4: Läshastighet 512MB, IOzone Figur 4 visar läshastigheten när lstorleken är 512 MB. Linuxmint ligger stabilt runt 80 MB/s och presterar bäst oavsett blockstorlek. 9

Figur 5: Skrivhastighet 1024MB, IOzone Ovan ser vi ett diagram över skrivhastigheten när en l på 1024 MB skrivs till disk. Linuxmint presterar återigen bättre, mest i de lägre blockstorlekarna. Ubuntu ligger väldigt stadigt runt 50 MB/s medan Linuxmint är ostadigare men bättre presterande. Figur 6: Läshastighet 1024MB, IOzone Diagramet visar läshastighet när lstorleken är 1024 MB. Här ser vi att de värden som presenteras är relativt stabila. Linuxmint presterar bättre med en läshastighet runt 75 MB/s oavsett blockstorlek medan Ubuntu presterar ungefär 1/3 av vad Linuxmint gör. 10

Figur 7: Skrivhastighet, Bonnie++ I guren ovan ser vi att Linuxmint presterar bättre när ler på 100 MB skrivs med en total storlek på 2 GB. Linuxmint ligger strax under 45 MB/s medan Ubuntu ligger på 37 MB/s. 11

Figur 8: Läshastighet, Bonnie++ Diagramet visar att även när en l på 2 GB läses presterar Linuxmint i liten grad bättre. Linuxmint har en genomsnittlig läshastighet på 56 MB/s medan Ubuntu har en läshastighet på 52 MB/s. 12

Figur 9: Skrivhastighet, dd-kommando När en lstorlek på 2 GB skrivs till disk 1 MB i taget presterar Ubuntu och Fedora ungefär jämnlikt med en hastighet runt 66 MB/s. Linuxmint nner man en bit lägre med en hastighet på 52 MB/s. 13

Figur 10: Läshastighet, dd-kommando En markant skillnad från skrivhastigheten ser vi här då Fedora kan leverera en läshastighet på 162 MB/s. Ubuntu och Linuxmint presterar ungefär 55% av vad Fedora presterar med hastigheter på runt 90 MB/s. 3 Slutsats Resultaten visar att i genomsnitt presterar Linux Mint bäst enligt testerna med IOzone och Bonnie++. När testerna kördes med dd-kommandot så var Fedora avsevärt bättre än de andra på att läsa. Då Fedora endast kunde testas genom dd-kommandot och i första IOzone testet så går det inte att dra en slutsats hurvida Fedora presterar gentemot de andra två överlag. Vissa resultat vi ck där läs- och skrivhastigheterna uppnådde era 100-1000 MB/s var något oväntade. Men då måste man ta i åtanke att testerna utfördes i en virtuell miljö och läs- och skrivoperationerna utfördes inledningsvis på den stationära datorn, varpå skrivningen/läsningen skedde på en server i nätverket. Detta kan medföra avvikande resultat. Då Fedora inte fungerade med vissa tester spenderade vi väldigt mycket tid på att försöka lösa det utan resultat. Vi testade dels andra operativsystem som var uppbyggda likt Fedora, men lyckades inte. Det vi kunde ha gjort bättre var att nöja oss med två operativsystem och kört er tester på, t.ex random write/ random read på 4K. Dessutom kunde vi ha utformat testerna så att verktygen 14

använde samma parametrar. Något som skulle vara intressant att undersöka i framtiden är hur nyare Unixliknande operativsystem presterar gentemot äldre versioner. Det skulle även vara intressant att göra de tester vi utfört i en fysisk miljö där ler skrivs och läses direkt från den stationära datorns hårddisk. 15

Litteraturförteckning [1] H. Lunell. Datorn i världen, världen i datorn - En introduktion till dataoch informationsteknik. Studentlitteratur AB, 2011. p. 139,140. [2] W. Stallings. Operating Systems: Internals and design principles, volume 7. Pearson Education Limited, 2012. p. 91. [3] Fedora. About fedora. Online, 2013. http://fedoraproject.org/en/aboutfedora. [4] Linux Mint. About us. Online, 2013. http://www.linuxmint.com/about.php. [5] W. Stallings. Operating Systems: Internals and design principles, volume 7. Pearson Education Limited, 2012. p. 580. [6] Kevin D. Fairbanks. An analysis of ext4 for digital forensics, 2012. p. 118, 130. [7] D. Patterson. Technical perspective for better or worse, benchmarks shape a eld. Communications of the ACM, vol. 55, NO. 7, 2012. [8] William D. Norcott. Iozone lesystem benchmark. Iozone, 2013. www.iozone.org/docs/iozone_msword_98.pdf. [9] Russel Coker. Bonnie++. Online, 2001. http://www.coker.com.au/bonnie++. 16