Wenige IOPS kontrolliert produzieren mit C

IOPS (Input/Output operations Per Second) auf ein (vernetztes) Storage-Device bieten regelmäßig Stoff für epische Diskussionen großer Bandbreite. Nützlich kann da sogar ein popeliges Tool sein, welches WENIGE IOs pro Sekunde, also z.B. je 1 Byte pro 1/4 Sekunde, auf eine Disk schreiben kann. Möglichst low-level versteht sich. Und sei’s nur, um die Stirn runzeln zu können ob der Fragen die sich da auftun. :-)

In C einen write()-Systemcall abzusetzen ist jedenfalls nicht schwer. Nachdem ich etwas gestöbert habe, konnte ich etwas passendes in C “zusammenkleben”. Folg. produziert z.B. alle 1/4 Sekunden einen write()-Call für popelige 4KiB (bis 800 mal sequenziell stumpf 4KiB geschrieben sind):

iosnail 4096 800 250000 0 /mnt/superdevice/bla.iosnail

Wenn man jetzt parallel systat & symstat (so man ‘ne Symmetrix im Zugriff hat) befragt
… und ebenso “kindgerecht” wie korrekt erklären kann, was da wo passiert (und woher man das weiß) dann hätte ich gerne eine Seminareinladung bitte! Thx! :-)

This entry was posted in Uncategorized and tagged , , . Bookmark the permalink.
  • http://www.querzone.de/blog/2012/01/viele-iops-kontrolliert-produzieren-mit-c/ Viele IOPS kontrolliert produzieren mit C | .:: querzone

    [...] hatte ja schonmal über einen kleinen Hack zur (nachvollziehbaren) periodischen Generierung von wenigen IOs …. In einem “aktuellen Case” war Gegenteiliges von Nöten, sprich: ich wollte alle 1000 [...]