Linux 3.10: Kernel ohne Ticks
Mit dem Linux-Kernel 3.10 verschwinden langsam die Ticks. (Bild: US National Oceanic and Atmospheric Administration)

Linux 3.10 Kernel ohne Ticks

Im nächsten Linux-Kernel werden die Weichen für den Betrieb ohne Ticks gestellt. Damit soll die Leistung verbessert werden. Den Entwicklern steht aber bei dieser fundamentalen Änderung noch viel Arbeit bevor.

Anzeige

Jede CPU auf einem Linux-System wird bis zu 1.000 Mal pro Sekunde durch einen Tick unterbrochen. Das führt zu Leistungseinbußen, die die Kernel-Entwickler in künftigen Kernel-Versionen beseitigen wollen. Im nächsten Linux-Kernel wird es möglich sein, Ticks auch komplett auszuschalten. Noch müssen aber zahlreiche Probleme überwunden werden. Kernel-Entwickler Jonathan Corbet bezeichnet den Tickless-Kernel als größten Umbruch seit der Entfernung des Big Kernel Lock.

Die periodischen Unterbrechungen - im Englischen Ticks genannt - veranlassen sämtliche CPUs in einem System, die Prioritäten der Prozesse neu zu definieren oder Read-Copy-Updates (RCU) durchzuführen. Dass sämtliche CPUs unterbrochen werden, ist überflüssig und führt nicht nur zu Leistungseinbußen, sondern belastet auf mobilen Geräten auch den Akku.

Derzeit nur im Schlafmodus

Bislang konnten die Timer-Ticks zwar ausgeschaltet werden, aber nur, wenn die CPUs in den Schlafmodus versetzt wurden. Auf hochverfügbaren Systemen sorgt die Option allerdings dafür, dass die Aufwachphase deutlich länger dauert als mit aktivierten Ticks. Deshalb ist das Ausschalten derzeit optional.

In Linux 3.10 gibt es künftig drei Optionen. CONFIG_HZ_PERIODIC sorgt dafür, dass die Ticks stets für alle CPUs aktiviert bleiben. Neuer Standard wird indes die Option CONFIG_NO_HZ_IDLE, bei der Ticks im Schlafmodus deaktiviert werden. CONFIG_NO_HZ_FULL deaktiviert die Ticks im neuen Kernel.

Tickless mit Einschränkungen

Allerdings muss eine CPU weiterhin für notwendige Arbeiten wie die Neuordnung der Prozesse sorgen. Deshalb lassen sich Ticks nicht ganz deaktivieren. Auf einem Mehrkernsystem wird eine CPU beim Systemstart dafür ausgewählt, die anderen kommen dann ohne Unterbrechungen aus. Die Änderungen, die benötigt würden, um sämtliche CPUs im Tickless-Modus laufen zu lassen, seien noch zu umfangreich, schreibt Corbet.

Eine weitere Einschränkung besteht darin, dass Ticks auf einer CPU nur dann deaktiviert werden, wenn dort nur ein einziger Prozess läuft. Sobald ein zweiter verarbeitet werden soll, wird der Tick wieder benötigt, um die dafür notwendigen Zeitscheiben zu bearbeiten. Außerdem benötigt der Scheduler mindestens eine Unterbrechung pro Sekunde. Dennoch sorgt die Reduzierung der Ticks für mindestens eine einprozentige Leistungszunahme auf Desktopsystemen und deutlich weniger Latenzen in Real-Time-Umgebungen und bei High-Performace-Computing (HPC), schreibt Entwickler Ingo Molnar in seinem Pull-Request.

Der Administrator müsste allerdings nicht nur dafür sorgen, dass Prozesse und Kernel-Threads besser verteilt werden, sondern auch die RCUs anpassen. Dazu gibt es bereits eine Dokumentation, die zahlreiche Optionen auflistet.

Noch viel Arbeit

Obwohl bereits im Kernel 3.9 einige Funktionen für den Tickless-Kernel angepasst wurden, etwa Subsystem printk() oder irq_work, steht den Entwicklern noch einiges an Arbeit bevor. Bislang funktioniert der Kernel ohne Ticks nur auf 64-Bit-Systemen, für 32-Bit-Systeme existiert aber bereits ein Patch. Später wollen die Entwickler auch den letzten Tick beseitigen. Dafür müssen aber sowohl der Scheduler als auch das Load Balancing angepasst werden. Möglicherweise tauchten auch noch unvorhergesehene Probleme bei einem so fundamentalen Umbau auf, schreibt Corbet.

Pläne für die Beseitigung der Ticks bei mehreren Prozessen auf einer CPU sind allerdings erst einmal vom Tisch. Kernel-Vater Linus Torvalds schrieb, dass er nicht glaube, dass sich der Aufwand lohne, schloss aber eine spätere Umsetzung nicht aus, wenn dadurch tatsächlich weitere Entlastungen möglich sind.


SoniX 14. Mai 2013

Irgendwie.... irgendwie finde ich ist der Artikel seltsam aufgebaut. Zuerst wird einem...

SoniX 14. Mai 2013

Naja, merken wird mans höchstens in einem Benchmark. Wenn ich bedenke wie ich damals noch...

Schattenwerk 13. Mai 2013

Derzeit wird bei mir an der Uni noch über Ticks im Kernel unterrichtet. Ich bin gespannt...

Reiter auf dem... 12. Mai 2013

http://blog.zorinaq.com/?e=74

Bigfoo29 12. Mai 2013

Die Tick-Frequenz ist beim Kernel kompilieren einstellbar. Dort lässt sich jeder...

Kommentieren



Anzeige

  1. Wissenschaftliche Mitarbeiterin / Wissenschaftlicher Mitarbeiter am Lehrstuhl für Wirtschaftsinformatik
    Universität Passau, Passau
  2. SAP CRM Berater (m/w)
    SPIRIT/21, Braunschweig
  3. Softwareentwickler / -innen .NET
    Dataport, Hamburg
  4. Softwarearchitekt (m/w) - Portale und Internetanwendungen
    Deutscher Genossenschafts-Verlag eG, Wiesbaden

 

Detailsuche


Folgen Sie uns
       


  1. Apple

    Digitale Geldbörse in iPhone 6 macht offenbar Fortschritte

  2. Auslandsspionage

    Bundesrechnungshof fordert Geheimdienstreform

  3. Videostreaming

    Netflix plant eigene Fernsehserien in Deutschland

  4. Cloud-Durchsuchung

    Microsoft will trotz Gerichtsbeschluss keine Daten hergeben

  5. Demo gegen Überwachung

    "Wo bleiben die deutschen Whistleblower?"

  6. Deutsche Grammophon

    Klassik streamen mit bis zu 320 Kbps

  7. Alibaba

    Milliardenschwerer Börsengang wohl Mitte September

  8. Test Infamous First Light

    Neonbunter Actionspaß

  9. Nach Wurstfirmeninsolvenz

    Redtube-Abmahn-Anwalt verliert Zulassung

  10. Gat out of Hell

    Saints Row und die Froschplage in der Hölle



Haben wir etwas übersehen?

E-Mail an news@golem.de



Test Bioshock für iOS: Unterwasserstadt für die Hosentasche
Test Bioshock für iOS
Unterwasserstadt für die Hosentasche
  1. Unter Wasser Bioshock auf iOS-Geräten

Überschall-U-Boot: Von Schanghai nach San Francisco in 100 Minuten
Überschall-U-Boot
Von Schanghai nach San Francisco in 100 Minuten

Qnap QGenie im Test: Netzwerkspeicher fehlt's an Speicher
Qnap QGenie im Test
Netzwerkspeicher fehlt's an Speicher
  1. Qnap QGenie NAS-System für die Hosentasche
  2. HS-251 Qnap beschleunigt lüfterloses NAS-System
  3. QNAP TS-EC1080 Pro Erweiterbares NAS-System im Tower mit mSATA-Plätzen

    •  / 
    Zum Artikel