Wäre eine Lösung nicht das Einführen einer Option für was der Rechner hauptsächlich genutzt werden soll? - Notebook -> 100 Hz - Multimedia -> 1 kHz - Zwischending -> 250- xxx Hz
Imho ist eine generelle Festlegung des Wertes nicht sinnvoll, oder?
Am besten wäre sogar eine Möglichkeit dies während des Betriebs umstellen zu können. Hängt mein Laptop am Stromnetz und beschäftige mich Multimedial geht die Frequenz hoch, ziehe ich das Stromnetz ab und es läuft mit Akku geht sie runter. Oder eine Möglichkeit dies im Betrieb manuell umstellen zu können.
Von Christian Andreas Wantia am Di, 12. Juli 2005 um 11:20 #
Stimme dir zu.
Vielleicht könnte man diesen Wert auch semi-automatisch ermittlen lassen; zumindest bzgl. Latenz zu Leistung. Mit etwas Geduld und mehr Beteiligung durch den Benutzer, zzgl. einer Prise Erfahrung in Form von Empfehlungen, müsste dies sicherlich auch bzgl. des Powermanagements möglich sein.
BTW: Geht es hier eigentlich um die Einteilung der Zeitscheibe in 100 bzw. 250 oder 1.000 Teile; oder um den Sprung zum nächsten Task alle XYZ Hz? Hmmm... obwohl... wo ich gerade so drüber nachdenke, erscheint mir ersteres logischer.
> Imho ist eine generelle Festlegung des Wertes nicht sinnvoll, oder?
Ist ja auch nicht generell festgelegt:
Im Vorfeld zum Kernel 2.6.13 hat Entwickler Andrew Morton allerdings einen Patch präsentiert, der die Taktung des Timers des Kernels konfigurierbar macht und standardmäßig die Systemfrequenz auf 250 Hz drosseln soll.
Aber auf irgendeinen Default-Wert muss die Frequenz ja gesetzt werden ...
IIRC gibt die Frequenz an, wie häufig das momentan laufende Programm unterbrochen und in den Scheduler gewechselt wird -- 100 Hz bedeutet also, dass pro Sekunde hundertmal der Scheduler aufgerufen wird.
als korinthenkacker, auch die systemzeit wird aktualisiert und bei SMP systemen werden die Queues ausbalanciert. http://kerneltrap.org/node/464 wichtige stichworte: timer interrupt, jiffies, HZ. (Falls die noch nicht gefallen sind)
>Was kann man Systemfrequenz verstehen ? Wie oft der "main-loop" abgearbeitet wird ? oder physikalische frequenz von der cpu ?
Ein imho interessanter "Artikel" hatte ich mal bei SuSE gefunden http://portal.suse.com/sdb/de/2003/10/90_scheduling.html
Es ging, zumindes als Bootoption und mit einem "SuSE-Kernel", schon früher, doch seit SuSE den 2.6 benutzt geht es nimmer man kann/konnte dies aber schon immer (?) in param.h ändern.
Wieviele Takte das benötigt kann ich leider nich sagen, da ich mich mit den aktuellen Systemen nicht auskenne und es auch von Architektur zu Architektur ziemlich schwankt.
Man sollte aber bedenken, dass beim jedem Prozesswechsel die cache misses gegen 100% gehen und somit nichtnur die reinen Anzahl an Takten relevant ist.
- Notebook -> 100 Hz
- Multimedia -> 1 kHz
- Zwischending -> 250- xxx Hz
Imho ist eine generelle Festlegung des Wertes nicht sinnvoll, oder?
theile
sysctl [irgendwas]?
(ja, ich weiss, dass -mit dem kernel spielen- gefährlich sein kann)
ich dachte es kann schon zur Laufzeit verändert werden
Vielleicht könnte man diesen Wert auch semi-automatisch ermittlen lassen; zumindest bzgl. Latenz zu Leistung. Mit etwas Geduld und mehr Beteiligung durch den Benutzer, zzgl. einer Prise Erfahrung in Form von Empfehlungen, müsste dies sicherlich auch bzgl. des Powermanagements möglich sein.
BTW: Geht es hier eigentlich um die Einteilung der Zeitscheibe in 100 bzw. 250 oder 1.000 Teile; oder um den Sprung zum nächsten Task alle XYZ Hz? Hmmm... obwohl... wo ich gerade so drüber nachdenke, erscheint mir ersteres logischer.
Ist ja auch nicht generell festgelegt:
Im Vorfeld zum Kernel 2.6.13 hat Entwickler Andrew Morton allerdings einen Patch präsentiert, der die Taktung des Timers des Kernels konfigurierbar macht und standardmäßig die Systemfrequenz auf 250 Hz drosseln soll.
Aber auf irgendeinen Default-Wert muss die Frequenz ja gesetzt werden ...
gruss pulp
http://kerneltrap.org/node/464
wichtige stichworte: timer interrupt, jiffies, HZ. (Falls die noch nicht gefallen sind)
Ein imho interessanter "Artikel" hatte ich mal bei SuSE gefunden
http://portal.suse.com/sdb/de/2003/10/90_scheduling.html
Es ging, zumindes als Bootoption und mit einem "SuSE-Kernel", schon früher, doch seit SuSE den 2.6 benutzt geht es nimmer
man kann/konnte dies aber schon immer (?) in param.h ändern.
mfg
Man sollte aber bedenken, dass beim jedem Prozesswechsel die cache misses gegen 100% gehen und somit nichtnur die reinen Anzahl an Takten relevant ist.
Und naja Boxen ist wohl eine etwas misslungene Übersetzung von "box" aber nicht so schlimm.