Abo
  • Services:

Neuer Prozess-Scheduler soll Linux Beine machen

Überarbeiteter Scheduler und genetische Optimierungen für den Linux-Kernel

Nick Piggin hat den O(1)-Scheduler im Linux-Kernel überarbeitet und auf der Linux-Kernel-Mailing-Liste einen entsprechenden Patch veröffentlicht, mit dem der Kernel für SMP-, CMP- und NUMA-Systeme optimiert wird. Zuvor veröffentlichte Jake Moilanen eine Kernel-Bibliothek für genetische Algorithmen, die ebenfalls den Scheduler optimiert und so die Systemleistung erhöhen soll.

Artikel veröffentlicht am ,

Die von Nick Piggin vorgestellten Veränderungen sollen den Linux-Prozess-Scheduler für Mehrprozessor-Systeme weiter beschleunigen. Dabei sollen auch explizit Verbesserungen mit Intels CMP-Technik (Chip-Multi-Processing) "Hyper Threading" und AMDs Opteron-Systemen zu erzielen sein.

Stellenmarkt
  1. BWI GmbH, Bonn
  2. Robert-Bosch-Krankenhaus GmbH, Stuttgart

Bei Opteron-Systemen ist zwar der gesamte Speicher für jede CPU sichtbar, besonders schnell ist jedoch der lokal an die CPU angebundene Speicher (NUMA - Non Unified Memory Architecture). Piggins Veränderungen verbesseren die Bindung von Prozessen an eine CPU, so dass diese nicht unnötig auf unterschiedlichen Prozessoren hin und her wandern und somit der Cache besser ausgenutzt wird.

Auch der Overhead des aktuellen Schedulers bei der Suche nach freien CPUs soll weiter verringert werden. Dieser ist erst in letzter Zeit angewachsen, als man einige Benchmarks beschleunigte - was allerdings für Chip-Multi-Processing zu Geschwindigkeitseinbußen führte.

Modifiziert wurde auch die initiale Verteilung neuer Prozesse: Aktuell werden alle logischen CPUs der Reihe nach aufgefüllt, d.h. zum Beispiel zuerst die beiden logischen Kerne der ersten CPU vor denen der zweiten, echten CPU. Dies führt oft zu einer suboptimalen Auslastung.

Erst in den letzten Jahren wurde der aus Linux-Urzeiten kaum modifizierte Scheduler, den Linus Torvalds Anfang der 90er-Jahre geschrieben hatte, von dem Red-Hat-Mitarbeiter Ingo Molnar neu geschrieben, um die Geschwindigkeit auf SMP-Systemen zu erhöhen. Hauptsächlich besteht der O(1) Scheduler aus neuem Code für das Suchen ausführbarer Prozesse und freier CPUs. Zuvor war dafür das zeitaufwendige Durchsuchen von Listen nötig, was jetzt durch explizite Sortierung der Listen durch wesentlich einfachere Operationen realisiert wird. Durch die konstante Zeit, die dieser Vorgang in Anspruch nimmt, wurde der Scheduler auch nach mathematischer Notation O(1), für konstante Komplexität, benannt.

Ingo Molnar segnete die Modifikationen bereits als konsequente Weiterentwicklung seiner Arbeit ab.

Weit experimentellere Änderungen stellt Jake Moilanen bereit: Er entwickelte eine Bibliothek als Basis für genetische Optimierungen, mit der er den Prozess- sowie den I/O-Scheduler oder den TCP/IP Stack beschleunigen möchte.

Dabei werden mit Prinzipien der Biologie Probleme mit Hilfe von selbst modifizierenden Algorithmen gelöst. Ein Satz von Parametern wird beispielsweise durch simulierte Fortpflanzung und Rekombination modifiziert und bei verbesserten Resultaten weiter verwendet. Moilanen stellt sogar in Aussicht, dass verschiedene Parametersätze vorgehalten werden könnten, um so jeweils der Situation angepasste zu laden.

Ob die genetischen Algorithmen jedoch Einzug in die offiziellen Kernel-Quellen halten, ist fraglich: Bisher hat sich noch kein Kern-Entwickler dazu geäußert und einem Einzug von Algorithmen der künstlichen Intelligenz in einen Betriebssystem-Kernel steht man eher ablehnend gegenüber, da die Geschwindigkeit nicht vom aktuellen Trainingsstand evolutionär entstandener Parameter abhängen sollte. [von René Rebe]



Anzeige
Hardware-Angebote
  1. 119,90€
  2. und Assassins Creed Odyssey, Strange Brigade und Star Control Origins kostenlos dazu erhalten

nuguckmormal 03. Mär 2005

Wo, beim Wahnsinn oder beim Solaris ;-.) nuguckmormal

Anonymer Nutzer 02. Mär 2005

Wozu braucht die Welt noch einen Papst ? Oder einen Gott ? "Ingo Molnar segnete die...


Folgen Sie uns
       


Intel Core i9-9900K - Test

Der Core i9-9900K ist ein Octacore-Prozessor im 14-nm-Verfahren. Die Platine und der Chip darunter sind recht dick, was wohl der hohen Leistungsaufnahme geschuldet ist. Erstmals seit 2011 verlötet Intel den Metalldeckel wieder statt Wärmeleitpaste zu verwenden.

Intel Core i9-9900K - Test Video aufrufen
Athlon 200GE im Test: Celeron und Pentium abgehängt
Athlon 200GE im Test
Celeron und Pentium abgehängt

Mit dem Athlon 200GE belebt AMD den alten CPU-Markennamen wieder: Der Chip gefällt durch seine Zen-Kerne und die integrierte Vega-Grafikeinheit, die Intel-Konkurrenz hat dem derzeit preislich wenig entgegenzusetzen.
Ein Test von Marc Sauter

  1. AMD Threadripper erhalten dynamischen NUMA-Modus
  2. HP Elitedesk 705 Workstation Edition Minitower mit AMD-CPU startet bei 680 Euro
  3. Ryzen 5 2600H und Ryzen 7 2800H 45-Watt-CPUs mit Vega-Grafik für Laptops sind da

Galaxy A9 im Hands on: Samsung bietet vier
Galaxy A9 im Hands on
Samsung bietet vier

Samsung erhöht die Anzahl der Kameras bei seinen Smartphones weiter: Das Galaxy A9 hat derer vier, zudem ist auch die restliche Ausstattung nicht schlecht. Aus verkaufspsychologischer Sicht könnte die Einstufung in die A-Mittelklasse bei einem Preis von 600 Euro ein Problem sein.
Ein Hands on von Tobias Költzsch

  1. Auftragsfertiger Samsung startet 7LPP-Herstellung mit EUV
  2. Galaxy A9 Samsung stellt Smartphone mit vier Hauptkameras vor
  3. Galaxy J4+ und J6+ Samsung stellt neue Smartphones im Einsteigerbereich vor

Campusnetze: Das teure Versäumnis der Telekom
Campusnetze
Das teure Versäumnis der Telekom

Die Deutsche Telekom muss anderen Konzernen bei 5G-Campusnetzen entgegenkommen. Jahrzehntelang von Funklöchern auf dem Lande geplagt, wollen Siemens und die Automobilindustrie nun selbst Mobilfunknetze aufspannen. Auch der öffentliche Rundfunk will selbst 5G machen.
Eine Analyse von Achim Sawall

  1. 5G Telekom hat ihr Mobilfunknetz mit Glasfaser versorgt
  2. Stadtnetzbetreiber 5G-Netz kann auch aus der Box kommen
  3. Achim Berg "In Sachen Gigabit ist Deutschland ein großer weißer Fleck"

    •  /