• IT-Karriere:
  • Services:

Verbesserungen in Kernel und Anwendungen

Damit die Leistungseinbußen bei Kontextwechseln ein wenig abgemildert werden können, nutzen sowohl Windows als auch Linux Process-Context Identifiers (PCID), sofern die Hardware diese unterstützt. Diese sind zwar seit Jahren theoretisch verfügbar, werden aber erst seit Linux 4.14 sinnvoll unterstützt. Die PCID ermöglichen es, Seitentabellen, die im TLB gecacht sind, mit entsprechenden Kennzeichnungen zu markieren.

Stellenmarkt
  1. Protagen Protein Services GmbH, Heilbronn,Dortmund
  2. Berliner Verkehrsbetriebe (BVG), Berlin

Das Nachschlagen (Lookup) im TLB wird dann nur für den jeweiligen Kontext erlaubt, wenn der auf der CPU laufende Thread die gleiche Kennzeichnung hat. Die restlichen Einträge im TLB werden schlicht ignoriert. Das vermeidet das Leeren des TLB bei einem Kontextwechsel.

Diese Theorie wird sowohl in den Tests von Hansen als auch in jenen von Gregg wie erwartet bestätigt. Weshalb diese Technik auch standardmäßig verwendet wird. Allerdings nur, wenn auch der Befehl INVPCID (Invalidate PCID) zur Verfügung steht, was ab Intels Haswell-CPU-Generation der Fall. Die Technik ist laut Aussage der Entwickler wohl nur in Kombination der beiden Befehle (PCID, INVPCID) sinnvoll umsetzbar.

Globale Seitentabellen für Intel Atoms

Auf dem Linux Storage, Filesystem and Memory-Management Summit (LSFMM 2018) erläuterte Hansen laut der Zusammenfassung des Magazins LWN.net darüber hinaus, dass er sogenannte globale Seitentabellen für jene Systeme umsetzen will, für die die PCID-Technik nicht zur Verfügung steht.

Neben älteren Chips betrifft das aber auch moderne Atom-Chips von Intel. Die TLB-Einträge des Kernels werden mit Hilfe dieser Technik dauerhaft vorgehalten. In dem von Hansen auch hierfür genutzten synthetischen Benchmark mit lseek wird dank der globalen Seitentabellen bei aktivierter PTI eine Steigerung von bis zu fast 40 Prozent im Vergleich zum Verzicht auf diese Technik erreicht.

Noch macht diese Technik den Linux-Entwicklern in einigen Details aber Probleme, weshalb diese noch nicht standardmäßig aktiviert ist. Die Umsetzung erscheint allerdings vorteilhaft und sollte deshalb kommen, so dass die Kosten für einen Systemaufruf damit künftig weniger hoch sind.

Riesige Seitentabellen für alle

In seinem Vortrag nennt Hansen weitere konkrete Techniken, die das Leeren des TLB verhindern sollen und von Anwendungsentwicklern entsprechend berücksichtigt werden sollten. Darüber hinaus empfiehlt Hansen außerdem die Nutzung der sogenannten Huge Pages (riesige Seitentabellen) beziehungsweise deren Abstraktion der Transparent Huge Pages (THP). Diese sollten einerseits die Zahl der Seitenfehler reduzieren und andererseits die Anzahl der Systemaufrufe zum Bearbeiten der Seitentabellen verringern.

In den Benchmarks von Gregg führt die Kombination von PCID-Nutzung und der Verwendung der THP wie erwartet zu einer deutlichen Reduzierung der durch die PTI verursachten Leistungseinbußen. Für eine vergleichsweise geringe Anzahl von Systemaufrufen pro CPU und Sekunde führt die Nutzung der THP sogar zu einer leichten Leistungssteigerung im Vergleich zum Verzicht auf jegliche PTI-Optimierungen.

Bitte aktivieren Sie Javascript.
Oder nutzen Sie das Golem-pur-Angebot
und lesen Golem.de
  • ohne Werbung
  • mit ausgeschaltetem Javascript
  • mit RSS-Volltext-Feed
 Schneller und weniger oft zum KernelI/O und Spectre v2 machen Probleme 
  1.  
  2. 1
  3. 2
  4. 3
  5. 4
  6. 5
  7.  


Anzeige
Top-Angebote
  1. (u. a. Apocalypse Now für 6,41€ (Blu-ray), The Fog: Nebel des Grauens für 6,41€ (Blu-ray...
  2. (u. a. Tropico 6 El Prez Edition für 31€, Tropico 5 - Complete Edition 9,99€, The Dark...
  3. 74,90€ (Vergleichspreise ab 91,47€)
  4. 1.699,09€ (inkl. 300€ Direktabzug - Vergleichspreis: 1.908!)

n0x30n 04. Mai 2018

Ein Block aus 8 reservierten CVEs ist nicht das Gleiche wie 8 Sicherheitslücken. Abwarten...

DeathMD 04. Mai 2018

Kann mir nicht vorstellen, dass der Ryzen 2700x weniger IPC als deine CPU hat.

drvsouth 04. Mai 2018

Bei meinem Haswell i5-4200U merke ich eigentlich nichts beim täglichen Benutzen. Wenn...

Sybok 04. Mai 2018

Bei top ist das tatsächlich ganz genau so.

bioharz 04. Mai 2018

Darf ich fragen wieso ihr das nicht nützt? BDW: Die Lücke lässt sich auch über JS / Web...


Folgen Sie uns
       


    •  /