##Bitte hier den eigenen Benutzernamen und das geplante Fertigstellungsdatum eintragen [[Vorlage(Baustelle, 20.06.2011, nbkr)]] ## eine vollständige Befehlsübersicht befindet sich im Wiki unter http://wiki.ubuntuusers.de/Wiki/Syntax ## eine Kopiervorlage für viele Syntaxelemente findet man unter http://wiki.ubuntuusers.de/Wiki/Kopiervorlage ## Artikeltext = Beschreibung = bonnie++ ist ein Benchmarkwerkzeug, mit dessen Hilfe man die Leistung einer Partition, also Dateisystem plus zugehörige Hardware testen kann. = Installation = bonnie++ ist schon seit Ubuntu 6.06 in den Softwarerepositories enthalten und kann mittles {{{ sudo apt-get install bonnie++ }}} installiert werden. = Nutzung = bonnie++ liegt unter /usr/sbin und ist somit nicht direkt im Pfad eines normalen Anwenders. Startet man bonnie++ jedoch als root erhält man einen Hinweis, dass man es eigntlich als normaler User verwenden sollte. Zur Lösung ruft man bonnie++ einfach mit vollständigem Pfad auf, also {{{/usr/sbin/bonnie++}}} = Interpretation der Ausgabe = Die Ausgabe von bonnie++ ist nicht unbedingt selbsterklärend. Die Software misst prinzipiell drei Werte. - Wie schnell kann auf die Platte geschrieben werden. - Wie schnell kann von der Platte gelesen werden. - Wie schnell können Metadaten von Dateien geändert werden. Eine typische Aussgabe kann dabei so aussehen: {{{ /usr/sbin/bonnie++ Writing a byte at a time...done Writing intelligently...done Rewriting...done Reading a byte at a time...done Reading intelligently...done start 'em...done...done...done...done...done... Create files in sequential order...done. Stat files in sequential order...done. Delete files in sequential order...done. Create files in random order...done. Stat files in random order...done. Delete files in random order...done. Version 1.96 ------Sequential Output------ --Sequential Input- --Random- Concurrency 1 -Per Chr- --Block-- -Rewrite- -Per Chr- --Block-- --Seeks-- Machine Size K/sec %CP K/sec %CP K/sec %CP K/sec %CP K/sec %CP /sec %CP srv1 16G 910 98 62103 8 29399 4 3481 75 71631 4 236.6 5 Latency 15233us 11422ms 1309ms 112ms 204ms 1157ms Version 1.96 ------Sequential Create------ --------Random Create-------- srv1 -Create-- --Read--- -Delete-- -Create-- --Read--- -Delete-- files /sec %CP /sec %CP /sec %CP /sec %CP /sec %CP /sec %CP 16 22125 29 +++++ +++ 10922 6 +++++ +++ +++++ +++ +++++ +++ Latency 21238us 704us 395us 603us 26us 72us 1.96,1.96,srv1,1,1307522373,16G,,910,98,62103,8,29399,4,3481,75,71631,4,236.6,5,16,,,,,22125,29,+++++,+++,10922,6,+++++,+++,+++++,+++,+++++,+++,15233us,11422ms,1309ms,112ms,204ms,1157ms,21238us,704us,395us,603us,26us,72us }}} Wichtig sind dabei die mit "Sequential Output" und "Sequential Input" überschrieben Bereiche. == Sequential Output == Sequential Output zeigt die Schreibgeschwindigkeit des Systems, dabei wird zwischem einem wiederholten Aufruf von putc() - also quasi dem schreibenen einzelner Zeichnen, dem schreiben von ganzen Blöcken und dem "Rewrite" also dem verändern von Blöcken, unterschieden. Die Zahl 910 gibt also an, dass 910.000 (K steht für Kilo = 1000) putc() Aufrufe pro Sekunden durchgeführt werden können. Das Beispiel zeigt auch, dass 62103000 Blöcke pro Sekunde geschrieben werden können. Man sieht dass das schreiben ganzer Blöcke wesentlich effizienter ist als einzelne putc() Aufrufe. == Sequential Input == Sequential Input zeigt die Lesegeschwindigkeit des Systems. Es wird wieder nach einzelner Zeichen und ganzer Blöcke unterschieden. Im Beispiel kann man als 3.481.000 Zeichen pro Sekunden lesen oder 71.631.000 Blöcke pro Sekunde. == Random Seeks == Random Seeks zeigt die Anzahl von Seekoperationen, also das physikalische Bewegen des Schreiblesekopfs zu einer anderen Position, pro Sekunde. Höhere Werte sind natürlich besser. Das System aus dem Beispiel kann also 236.6 mal pro Sekunde die Leseposition der Festplatte ändern. Dazu gehört zum einen das Bewegen des Schreib/Lesekopfs zum anderen die Drehung der Platte selbst. == Sequential Create / Random Create == Diese Daten geben an wie schnell Dateien bzw. die Metadaten von Dateien auf die Festplatte geschrieben (create), gelesen (read) oder gelöscht (delete) werden können. Diese Werte sind wichtig für Systeme die viele kleine Dateien auf die Festplatte schreiben müssen wie z.B. Proxyserver. == Hinweis zu den %CP Angaben == Die %CP Angaben zeigen wie sehr der Prozessor für die einzelnen Ausgaben belastet wurde. Allerdings muss man diese Werte auf Multikern- oder MultiCPU-Systemen mit Vorsicht betrachten. Oftmals läuft bonnie++ selbst auf einem anderen Prozessor als der Schreib/Lese Prozess. Die Werte sind in einem solchen Fall nicht aussagekräftig. ##nicht auf diesen Artikel zutreffenden Kategorien bitte löschen! #tag: Hardware, System, Shell