[ad_1]
Vor der Sitzung der Linux Plumbers Conference (LPC), die nächste Woche in Dublin, Irland, stattfinden wird, veranstaltet AMD ein Seminar über Scheduler-Verbesserungen für Split-Last-Level-Cache- oder LLC-Architekturen. K. Prateek Nayak, ein Ingenieur im Linux-Serverteam von AMD, hat eine Reihe von Patches veröffentlicht, die sich auf die Zählung des Benutzerspeicherplatzes konzentrieren und auf die Aufgabenplatzierung hinweisen. Diese neue Entwicklung zeigt die Absicht von AMD, den Linux-Kernel-Scheduler für Split-LLC-CPU-Pläne zu verbessern, um ihre EPYC-Serverprozessoren zu unterstützen.
AMD strebt nach höherer Leistung von EPYC-CPUs unter Linux mithilfe von Userspace-Hinweisen für Workloads
Die neuen Fixes sind als „experimentell“ und „Bitte um Feedback“ gekennzeichnet und verfügen über Schaltflächen auf niedriger Ebene, um das Layout des Userspace-Taskplaners basierend auf den vom Userspace bereitgestellten Anweisungen zu steuern.
Das aktuelle API-Design ist experimentell und kann nur Low-Level-Indizes setzen. Diese API ist nicht für den öffentlichen Gebrauch bestimmt und wird nur verwendet, um die Wirksamkeit der Hinweise zu testen und zu demonstrieren, um dem Planer zu helfen, optimale Platzierungsentscheidungen basierend auf den von den Anwendungen bereitgestellten Anforderungen zu treffen. Dem Planer steht es frei, benutzerdefinierte Ratschläge zu ignorieren, wenn er der Meinung ist, dass das Befolgen der Ratschläge das System in einen suboptimalen Zustand versetzt.
– Motivation
Die heute vom Scheduler verwendeten Heuristiken wie das WF_SYNC-Flag, die Wake_wide()-Logik usw. können die Art der Arbeitslast nicht genau im Hinblick darauf ableiten, ob es besser ist, eine Gruppe von Threads nahe beieinander zu konsolidieren, oder ob sie sollten auseinander gespreizt werden. Wird die Art der Workload nicht abgeleitet, kann dies zu einer Reihe falscher Platzierungsentscheidungen führen, die sich negativ auf die Leistung der Workload auswirken können. Die Strafe scheint auf Systemen mit Split-LLC wie AMD EPYC schwerwiegend zu sein.
Die neue Patch-Sequenz von AMD umfasst die Möglichkeit, die Aufgabenplatzierung in der Nähe des übergeordneten Kerns auszuwählen, wenn sich in der lokalen Gruppe ein Kern im Leerlauf befindet. Von dort aus entscheidet der Prozess, mit der Gruppe mit der geringsten Nutzung fortzufahren, um die Arbeitslast zu erweitern, und es werden auch zusätzliche wahrscheinliche Hinweise untersucht. Peter Zijlstra, ein Ingenieur im Linux-Kernel-Team von Intel, schlug letztes Jahr ein High-Level-Optimierungs-Framework vor, das die Aufgabensequenz des Kernel-Schedulers mit höheren Prozessoren und Arbeitslasten komplexer machen würde. Diese Angabe des Benutzerraums im aktuellen Zustand wird durch die Schnittstelle prctl() erreicht.

AMDs frühe Tests von Patches zur Optimierung des Benutzerbereichs haben die Fähigkeit gezeigt, die EPYC-Serverleistung für verschiedene Workloads wie Hackbench, Schbench, Tbench usw. zu steigern. Erste Tests wurden auf Intels Xeon Ice Lake in einem Bereich durchgeführt, in dem die Anzeige des Benutzerspeicherplatzes Workloads zugute kommen kann.
Da das aktuelle Patchwork experimentell ist, wird davon ausgegangen, dass es mehrere Monate dauern wird, bis die Userspace-Indikation vollständig implementiert und bereit ist, dem Linux-Kernel hinzugefügt zu werden. Benutzer, die daran interessiert sind, den aktuellen Quilt zu entdecken, können mehr über die erfahren Linux-Kernel-Mailingliste.
Nachrichtenquellen: Phoronix, Linux-Kernel-Mailingliste
[ad_2]
Source