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. IT-Specialist Partner + TV Audience Measurement (TVAM) Coordinator (m/w)
    GfK SE, Nürnberg
  2. Mitarbeiter in der Beratung (m/w) Produktdatenmanagement Anlauf- und Supply Chain Management
    Daimler AG, Stuttgart-Untertürkheim
  3. Entwickler (m/w) Controllingsysteme / SAP
    Bitburger Braugruppe GmbH, Bitburg
  4. Spezialist/-in für Datenverkabelungen und Multimedia für Schulen
    Landeshauptstadt Stuttgart, Stuttgart

 

Detailsuche


Folgen Sie uns
       


  1. Wissenschaft

    Wenn der Quantencomputer spazieren geht

  2. Cloud

    Erstmals betriebsbedingte Kündigungen bei SAP

  3. Microsoft

    Windows 10 Technical Preview ist da

  4. Omnicloud

    Fraunhofer-Institut verschlüsselt Daten für die Cloud

  5. Anonymisierung

    Tor könnte bald in jedem Firefox-Browser stecken

  6. Gutscheincodes

    Taxi-Unternehmer halten auch Ubertaxi für illegal

  7. Chris Roberts

    "Star Citizen ist heute besser als ich es mir erträumte"

  8. Leistungsschutzrecht

    Google keilt gegen Springer und Burda

  9. Onlinehändler

    Zalando geht an die Börse

  10. Panoramafreiheit

    Wikimedia erreicht Copyright-Änderungen in Russland



Haben wir etwas übersehen?

E-Mail an news@golem.de



Rochester Cloak: Tarnkappe aus vier Linsen
Rochester Cloak
Tarnkappe aus vier Linsen
  1. Roboter Transformer aus Papier

Test Fifa 15: Mehr Emotionen, mehr Gesang, mehr Dreck
Test Fifa 15
Mehr Emotionen, mehr Gesang, mehr Dreck
  1. Fifa 15 angespielt Verbesserter Antritt bringt viele neue Tore
  2. EA-Pressekonferenz Shadow Realms und Merkels lange Nase
  3. EA Access Battlefield 4 und Fifa 14 im Abo

Bash-Lücke: Die Hintergründe zu Shellshock
Bash-Lücke
Die Hintergründe zu Shellshock
  1. OS X Apple liefert Patch für Shellshock
  2. Shellshock Immer mehr Lücken in Bash
  3. Linux-Shell Bash-Sicherheitslücke ermöglicht Codeausführung auf Servern

    •  / 
    Zum Artikel