Hinweis: Das Forum wird geschlossen! Neue Registrierungen sind nicht mehr möglich!

 Zurück zu Pro-Linux   Foren-Übersicht   FAQ     Suchen    Mitgliederliste
ionice vs. Software-RAID

 
Neuen Beitrag schreiben   Auf Beitrag antworten    Pro-Linux Foren-Übersicht -> Software
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
der_flo



Anmeldungsdatum: 11.11.2009
Beiträge: 4

BeitragVerfasst am: 11. Nov 2009 14:00   Titel: ionice vs. Software-RAID

Funktioniert ionice in einer Software-RAID-Umgebung korrekt? Ich kann den CFQ-Scheduler für die md-Devices nicht setzen, weil es im Sysfs keine entsprechenden Einträge (z.B. /sys/block/md0/queue/scheduler) gibt. Es sieht so aus, als würden die Einstellungen nicht von den darunterliegenden Festplatten zum RAID-Device propagiert:

Code:

$ cat /sys/block/*/queue/scheduler
noop anticipatory deadline [cfq]
noop anticipatory deadline [cfq]
none
none
<snip>
none
none
noop anticipatory deadline [cfq]
noop anticipatory deadline [cfq]


Code:

# Zwei "dd"s parallel
$ ionice -c3 dd if=/dev/zero of=test1 bs=10M count=100 oflag=dsync
100+0 records in
100+0 records out
1048576000 bytes (1,0 GB) copied, 29,9719 s, 35,0 MB/s
 
$ ionice -c2 -n1 dd if=/dev/zero of=test2 bs=10M count=100 oflag=dsync
100+0 records in
100+0 records out
1048576000 bytes (1,0 GB) copied, 37,251 s, 28,1 MB/s
 
#############
# Oder auch diese:
$ ionice -c3 dd if=/dev/zero of=test1 bs=14M count=1000
1000+0 records in
1000+0 records out
14680064000 bytes (15 GB) copied, 255,732 s, 57,4 MB/s
 
$ ionice -c2 -n1 dd if=/dev/zero of=test2 bs=14M count=1000
1000+0 records in
1000+0 records out
14680064000 bytes (15 GB) copied, 254,077 s, 57,8 MB/s
 
Benutzer-Profile anzeigen Private Nachricht senden

hjb
Pro-Linux


Anmeldungsdatum: 15.08.1999
Beiträge: 3236
Wohnort: Bruchsal

BeitragVerfasst am: 12. Nov 2009 11:43   Titel:

Hi!

Schwierige Frage. Ich kenne ionice auch erst seit 5 Minuten. Ich nehme an, du hast die Manpage bereits gelesen. Es verwendet den Systemaufruf ioprio_set, und dieser bezieht sich auf Prozesse oder Prozessgruppen. Es sollte eigentlich egal sein, welche Geräte benutzt werden, solange der CFQ-Scheduler verwendet wird.

Ein MD-Gerät braucht keinen Scheduler, weil es die Requests einfach an die beteilgten Platten weiterreicht.

Grüße,
hjb
_________________
Pro-Linux - warum durch Fenster steigen, wenn es eine Tür gibt?
 
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen MSN Messenger

Janka



Anmeldungsdatum: 11.02.2006
Beiträge: 3569

BeitragVerfasst am: 12. Nov 2009 12:17   Titel:

Du musst den CFQ-Scheduler für die Platte(n) setzen, nicht für das multi-device.

Janka
_________________
Ich vertonne Spam immer in /dev/dsp statt /dev/null.
Ich mag die Schreie.
 
Benutzer-Profile anzeigen Private Nachricht senden

der_flo



Anmeldungsdatum: 11.11.2009
Beiträge: 4

BeitragVerfasst am: 13. Nov 2009 15:14   Titel:

Janka hat folgendes geschrieben::
Du musst den CFQ-Scheduler für die Platte(n) setzen, nicht für das multi-device.

Wie du im oberen Listing siehst, ist CFQ für alle Devices konfiguriert, also die beiden Platten sda und sdb, außerdem für ominöse dm-0 bis dm-3 (LVM?). Ich denke also nicht, dass mir hier ein Fehler unterlaufen ist.

Die Manpage habe ich natürlich gelesen und auf meiner Workstation scheinte das auch zu funktionieren, bei den neuen Server mit Software-RAID allerdings nicht.
Oder benchmarke ich falsch? Wie benchmarkt ihr konkurrierende Zugriffe?


Danke vorab für euere Meinungen!
Ciao,
der Flo
 
Benutzer-Profile anzeigen Private Nachricht senden

Janka



Anmeldungsdatum: 11.02.2006
Beiträge: 3569

BeitragVerfasst am: 13. Nov 2009 20:07   Titel:

Ich vermute auch, dass hineinspielt, dass du ein File erzeugst, das nur aus Nullen besteht, evtl. wird das ein Sparse-File.

Janka
_________________
Ich vertonne Spam immer in /dev/dsp statt /dev/null.
Ich mag die Schreie.
 
Benutzer-Profile anzeigen Private Nachricht senden

der_flo



Anmeldungsdatum: 11.11.2009
Beiträge: 4

BeitragVerfasst am: 16. Nov 2009 11:38   Titel:

Jetzt werde ich komplett verrückt. Selbst auf meiner Workstation funktioniert auf einmal ionice nicht mehr.

Shell 1:
Code:

ionice -p $$ -c 2 -n 1
time cp -r source copy1


Shell 2:

Code:

ionice -p $$ -c 3
time cp -r source copy2


Die beiden "cp"s synchronisiere ich einigermaßen, trotz alledem kommt bei beiden die gleiche Laufzeit heraus. "source" ist ein Verzeichnis mit 3*Linux-Source hat belegt ca. 1,2GB Speicher.

Mache ich eurer Meinung nach etwas falsch? Wie benchmarkt ihr sowas?

Danke vorab,
der Flo
 
Benutzer-Profile anzeigen Private Nachricht senden

Janka



Anmeldungsdatum: 11.02.2006
Beiträge: 3569

BeitragVerfasst am: 16. Nov 2009 12:16   Titel:

Wird ionice denn auf Kindprozesse (cp) vererbt?

Janka
_________________
Ich vertonne Spam immer in /dev/dsp statt /dev/null.
Ich mag die Schreie.
 
Benutzer-Profile anzeigen Private Nachricht senden

der_flo



Anmeldungsdatum: 11.11.2009
Beiträge: 4

BeitragVerfasst am: 16. Nov 2009 19:16   Titel:

IMHO: Wäre ja schlimm wenn nicht. Normale Nice-Werte werden doch auch vererbt, oder? Sonst könnte ja ein Prozeß locker seine eigenen Beschränkungen lockern, er bräuchte nur forken.
 
Benutzer-Profile anzeigen Private Nachricht senden

Beiträge vom vorherigen Thema anzeigen:   
     Pro-Linux Foren-Übersicht -> Software Alle Zeiten sind GMT + 1 Stunde
Seite 1 von 1

 
Gehen Sie zu:  

Powered by phpBB © phpBB Group
pro_linux Theme © 2004 by Mandaxy