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. Senior IT-Projektmanager (m/w/d)
    HiScout GmbH, Berlin
  2. SAP Business Analyst - Sales & Distribution (m/w/x)
    über duerenhoff GmbH, München
Detailsuche

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.

Golem Karrierewelt
  1. Cinema 4D Grundlagen: virtueller Drei-Tage-Workshop
    09.-11.01.2023, Virtuell
  2. Microsoft 365 Security: virtueller Drei-Tage-Workshop
    07.-09.12.2022, Virtuell
Weitere IT-Trainings

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.  


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.



Aktuell auf der Startseite von Golem.de
25 Jahre Mars Attacks!
"Aus irgendeinem merkwürdigen Grund fehl am Platz"

Viele Amerikaner fanden Tim Burtons Mars Attacks! nicht so witzig, aber der Rest der Welt lacht umso mehr - bis heute, der Film ist grandios gealtert.
Von Peter Osteried

25 Jahre Mars Attacks!: Aus irgendeinem merkwürdigen Grund fehl am Platz
Artikel
  1. NIS 2 und Compliance vs. Security: Kann Sicherheit einfach beschlossen werden?
    NIS 2 und Compliance vs. Security
    Kann Sicherheit einfach beschlossen werden?

    Mit der NIS-2-Richtlinie will der Gesetzgeber für IT-Sicherheit sorgen. Doch gut gemeinte Regeln kommen in der Praxis nicht immer unbedingt auch gut an.
    Von Nils Brinker

  2. Artemis I: Orion-Kapsel ist in Mondorbit eingeschwenkt
    Artemis I
    Orion-Kapsel ist in Mondorbit eingeschwenkt

    Die Testmission für Mondlandungen der Nasa Artemis I hat den Mond erreicht. In den kommenden Tagen macht sich die Orion-Kapsel auf den Rückweg.

  3. Apple-Auftragsfertiger: Unruhen bei Foxconn und 30 Prozent iPhone-Produktionsverlust
    Apple-Auftragsfertiger
    Unruhen bei Foxconn und 30 Prozent iPhone-Produktionsverlust

    Foxconn soll Einstellungsprämien an Arbeiter nicht gezahlt haben, weshalb es zu Unruhen kam. Nun gab es Massenkündigungen. Für Apple ist die Situation gefährlich.

Du willst dich mit Golem.de beruflich verändern oder weiterbilden?
Zum Stellenmarkt
Zur Akademie
Zum Coaching
  • Schnäppchen, Rabatte und Top-Angebote
    Die besten Deals des Tages
    Daily Deals • Black Friday bei Mindfactory, MediaMarkt & Saturn • Prime-Filme leihen für je 0,99€ • WD_BLACK SN770 500GB 49,99€ • GIGABYTE Z690 AORUS ELITE 179€ • Seagate FireCuda 530 1TB 119,90€ • Crucial P3 Plus 1TB 81,99 & P2 1TB 67,99€ • Alpenföhn Wing Boost 3 ARGB 120 3er-Pack 42,89€ [Werbung]
    •  /