Schneller und weniger oft zum Kernel

Ziel der Maßnahme gegen Meltdown ist es, den Adressraum des Kernels möglichst weitgehend von dem einer Userspace-Anwedung zu trennen. Unter Windows wird diese Technik als Kernel Virtual Adress (KVA) Shadow bezeichnet und unter Linux als Page Table Isolation (PTI).

Stellenmarkt
  1. Senior Project Manager (m/w/d) für den Bereich Business Process Outsourcing
    nexnet GmbH, Berlin
  2. Frontend-Entwickler (m/w/d)
    DFN-CERT Services GmbH, Hamburg-Hammerbrook
Detailsuche

Bisher war der Kernel standardmäßig in den Userspace gemappt, um einen Kontextwechsel zwischen Kernelspace und Userspace schneller durchführen zu können und den Translation Lookaside Buffer (TLB) hierbei nicht leeren zu müssen. Die CPU sorgt eigentlich für die dennoch notwendige strikte Trennung zwischen Kernel- und Userspace, was bei Meltdown allerdings geschickt umgangen wird.

Der Kernel wird mit den Patches nicht mehr so gemappt wie bisher, was dazu führt, dass der TLB bei einem Wechsel des laufenden Prozesses vom User- in den Kernelspace geleert wird und auf dem Rückweg ebenfalls. Dieses neue Verhalten führt damit allerdings zwangsläufig zu einem Leistungsverlust und ist genau deshalb auch bisher vermieden worden.

Systemaufruf und Kontextwechsel sind teuer

In einem völlig synthetischen Benchmark, auf den der Linux-Entwickler Dave Hansen in seinen PTI-Patches verweist, fällt die Rate zum wiederholten Aufrufen des Systemaufrufs lseek von 5,2 Millionen Aufrufen je Sekunde auf 2,2 Millionen Aufrufe bei Verwendung der PTI-Patches.

Golem Akademie
  1. Elastic Stack Fundamentals – Elasticsearch, Logstash, Kibana, Beats: virtueller Drei-Tage-Workshop
    26.–28. Oktober 2021, Virtuell
  2. Netzwerktechnik Kompaktkurs: virtueller Fünf-Tage-Workshop
    6.–10. Dezember 2021, virtuell
Weitere IT-Trainings

In ähnlichen Tests des Netflix-Angestellten Brendan Gregg zeigt sich darüber hinaus, dass sich die Leistungseinbußen mit steigender Anzahl der Systemaufrufe sogar noch vergrößern könnten. Bei 10 Millionen Systemaufrufen je Sekunde und CPU liegt der Leistungsverlust demnach gar bei 400 Prozent. Ähnliche Erkenntnisse liefert Gregg auch für Kontextwechsel: Je mehr diese vorkommen, desto größer ist der Leistungsverlust.

Greift ein Programm außerdem häufig auf einen vergleichsweise großen Bereich des Arbeitsspeichers zu (Working Set Size) und kommt es hierbei möglicherweise gar zum Auslagern des Speicherbereiches, sind die Leistungseinbußen entsprechend noch größer. Denn schlimmstenfalls versucht ein Programm dann auf nicht im Arbeitsspeichers befindliche Speicherbereiche zuzugreifen. Solch ein Seitenfehler verursacht eine Programmunterbrechung und das Neuladen des notwendigen Speicherbereichs.

Für Linux-Nutzer relativ leicht nachvollziehen lassen sich diese Ergebnisse mit kleinen Werkzeugen wie stress-ng, die es ebenfalls ermöglichen, das System mit dauerhaften Systemaufrufen oder auch Kontextwechseln - wie der Name sagt - zu stressen. Damit lassen sich ebenso absurd hohe Leistungseinbußen ermitteln. Aussagekräftig oder gar relevant ist das aber nicht.

So schreibt etwa Gregg, dass die typische Rate von Systemaufrufen der Anwendungen von Netflix bei etwa 10.000 pro Sekunde und CPU liege. Der damit verbundene Leistungsverlust ist also mehr oder weniger vernachlässigbar. Eine Reduktion und eventuell auch Überprüfung der Anzahl der Systemaufrufe ist aber eigentlich immer angebracht, auch völlig unabhängig von Meltdown. Und die möglichen und tatsächlich genutzten Optimierungen spielen hierbei noch gar kein Rolle.

Bitte aktivieren Sie Javascript.
Oder nutzen Sie das Golem-pur-Angebot
und lesen Golem.de
  • ohne Werbung
  • mit ausgeschaltetem Javascript
  • mit RSS-Volltext-Feed
 Meltdown- und Spectre-Benchmarks: Weniger schlimm als erwartetVerbesserungen in Kernel und Anwendungen 
  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.

bioharz 04. Mai 2018

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



Aktuell auf der Startseite von Golem.de
Kaufberatung (2022)
Die richtige CPU und Grafikkarte

Die Verfügbarkeit von PC-Hardware ist schlecht wie nie, doch ungeachtet der Preise wird gekauft. Wir geben einen Über- und einen Ausblick.
Von Marc Sauter

Kaufberatung (2022): Die richtige CPU und Grafikkarte
Artikel
  1. Microsoft: Windows 11 verlangsamt SSDs wohl teils merklich
    Microsoft
    Windows 11 verlangsamt SSDs wohl teils merklich

    Viele Teile der Community messen schlechtere Werte im Vergleich zu Windows 10, wenn sie Windows 11 auf ihren SSDs verwenden.

  2. Samsung Galaxy Watch 4 bei Amazon zum Hammerpreis
     
    Samsung Galaxy Watch 4 bei Amazon zum Hammerpreis

    Die Last Minute Angebote bei Amazon bringen heut wieder viele spannende Deals. Unter anderem sind Galaxy-Watches von Samsung reduziert.
    Ausgewählte Angebote des E-Commerce-Teams

  3. Open Source: EU-Kommission will eigene Software frei veröffentlichen
    Open Source
    EU-Kommission will eigene Software frei veröffentlichen

    Die EU-Kommission will offenbar mit guten Beispiel vorangehen und hat sich neue Regeln für den Umgang mit Open-Source-Software gegeben.

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 • Acer-Monitore zu Bestpreisen (u. a. 27" FHD 165Hz OC 199€) • Kingston PCIe-SSD 1TB 69,90€ & 2TB 174,90€ • Samsung Smartphones & Watches günstiger • Saturn: Xiaomi Redmi Note 9 Pro 128GB 199€ • Alternate (u. a. Razer Opus Headset 69,99€) • Release: Halo Infinite 68,99€ [Werbung]
    •  /