Abo
  • IT-Karriere:

I/O und Spectre v2 machen Probleme

Wie erwähnt hängen die Leistungseinbußen durch PTI von einer Vielzahl von Gegebenheiten ab, die vor allem von Anwendungsentwicklern durch eine optimierte Nutzung bestimmter Kernel-Funktionen zudem in vernachlässigbarem oder zumindest geringem Umfang gehalten werden können.

Stellenmarkt
  1. Allianz Deutschland AG, Stuttgart
  2. Hays AG, südliches Bayern

Trotzdem benutzen insbesondere Datenbanken, Proxy-Server oder unter Umständen auch Storage- und Logging-Systeme tendenziell eher viele Systemaufrufe, da diese besonders oft mit vergleichsweise kleinen Dateien I/O-Operationen ausführen.

Aus Sicht der Linux-Entwickler problematisch ist hier etwa der vielfach genutzte und auch in einigen Medienberichten erwähnten Benchmark Flexible I/O (FIO), der einfach nur Daten hin- und herschiebt, ohne diese weiterzuverarbeiten, dabei unter Umständen aber unnötig viele Systemaufrufe durchführt, wie die Linux-Entwickler auf dem LSFMM 2018 vermuten.

Kernel-Barrieren gegen Spectre v2

Interessant an den Tests mit FIO ist jedoch die Erkenntnis, dass die Anzahl der I/O-Operation pro Sekunde bei aktivierten PTI-Patches nicht abfällt, sofern dem Programm genügend Prozessorzeit zur Verfügung steht. Zu den mit FIO bei Intel durchgeführten Tests, von denen The Next Platform berichtet, heißt es bei dem Magazin: "Da bei diesem Speicher-Benchmark die CPUs zu 100 Prozent ausgelastet sind, gibt es nur eine Richtung, in die sich die Leistung entwickeln kann, und das ist nicht aufwärts".

Besonders kritisch wird dieser einzig mögliche Abwärtstrend zusätzlich durch den Schutz vor der Spectre-v2-Lücke (Branch Target Injection). Über diese lässt sich die CPU dazu bewegen, das Ziel einer indirekten Codeausführung zu verfälschen, um so Zugriff auf privilegierten Speicher zu erhalten.

Um das zu verhindern, kommt neben zwei weiteren Funktionen vor allem die Indirect Branch Restricted Speculation (IBRS) zum Einsatz. Diese wird gesetzt, sobald die CPU in einen privilegierten Modus fällt. In diesem Fall sorgt der Code dafür, dass die CPU die in einem weniger privilegierten Modus erlernten Ziele für den Codezweig (Branch Targets) vergisst.

Laut dem Magazin Ars Technica schätzt Intel, dass Verzweigungen mit einer Genauigkeit in den oberen 90 Prozent richtig prognostiziert werden. Mit IBRS fällt diese CPU-Optimierung weg und kann dementsprechend nicht genutzt werden, was offensichtlich zu massiven Leistungseinbußen führen muss.

Retpoline als Optimierung

In den erwähnten FIO-Tests von Intel ist der Leistungsverlust durch IBRS mit 64 KByte Blockgröße bei einer typischen Arbeitslast im Rechenzentrum auf Skylake-CPUs jedoch quasi nicht vorhanden. Das wird im Prinzip auch von den Linux-Entwicklern bestätigt. Auf CPUs der Broadwell- oder Haswell-Generation liegt der Leistungsverlust hier jedoch bei rund 30 Prozent.

Diese Unterschiede sind auf Architekturverbesserungen der Skylake-Architektur zurückzuführen. Die Linux-Entwickler nutzen deshalb auch standardmäßig die per Microcode-Update umgesetzte IBRS-Funktion auf Skylake.

Für ältere CPU-Generationen ist der Leistungsverlust jedoch so groß, dass Linux gegen Spectre v2 auf die sogenannten Retpoline (Return Trampoline) setzt. Diese Lösung erlaubt es, indirekte Branches von der spekulativen Ausführung auszunehmen, was unter anderem durch Änderungen am Compiler erreicht wird.

Mit den Retpolines fällt der Leistungsverlust von den genannten 30 Prozent für Broadwell und Haswell auf lediglich 1 bis 2 Prozent. Das ist auch der Grund, weshalb im Linux-Kernel für die älteren CPU-Generationen von Intel konsequent auf Retpoline gesetzt wird.

 Verbesserungen in Kernel und AnwendungenSchadensbegrenzung erreicht 
  1.  
  2. 1
  3. 2
  4. 3
  5. 4
  6. 5
  7.  


Anzeige
Top-Angebote
  1. (u. a. For Honor für 11,50€, Anno 1404 Königsedition für 3,74€, Anno 2070 Königsedition...
  2. (u. a. Total war - Three Kingdoms für 35,99€, Command & Conquer - The Ultimate Collection für 4...

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
       


Pedelec HNF-Nicolai SD1 Urban ausprobiert

Wir sind das Pedelec eine Woche lang zur Probe gefahren und waren besonders vom Motor angetan.

Pedelec HNF-Nicolai SD1 Urban ausprobiert Video aufrufen
Endpoint Security: IT-Sicherheit ist ein Cocktail mit vielen Zutaten
Endpoint Security
IT-Sicherheit ist ein Cocktail mit vielen Zutaten

Tausende Geräte in hundert verschiedenen Modellen mit Dutzenden unterschiedlichen Betriebssystemen. Das ist in großen Unternehmen Alltag und stellt alle, die für die IT-Sicherheit zuständig sind, vor Herausforderungen.
Von Anna Biselli

  1. Datendiebstahl Kundendaten zahlreicher deutscher Firmen offen im Netz
  2. Metro & Dish Tisch-Reservierung auf Google übernehmen
  3. Identitätsdiebstahl SIM-Dieb kommt zehn Jahre in Haft

Ryzen 3900X/3700X im Test: AMDs 7-nm-CPUs lassen Intel hinter sich
Ryzen 3900X/3700X im Test
AMDs 7-nm-CPUs lassen Intel hinter sich

Das beste Prozessor-Design seit dem Athlon 64: Mit den Ryzen 3000 alias Matisse bringt AMD sehr leistungsstarke und Energie-effiziente CPUs zu niedrigen Preisen in den Handel. Obendrein laufen die auch auf zwei Jahre alten sowie günstigen Platinen mit schnellem DDR4-Speicher.
Ein Test von Marc Sauter

  1. Ryzen 3000 BIOS-Updates schalten PCIe Gen4 für ältere Boards frei
  2. Mehr Performance Windows 10 v1903 hat besseren Ryzen-Scheduler
  3. Picasso für Sockel AM4 AMD verlötet Ryzen 3400G für flottere iGPU

Kickstarter: Scheitern in aller Öffentlichkeit
Kickstarter
Scheitern in aller Öffentlichkeit

Kickstarter ermöglicht es kleinen Indie-Teams, die Entwicklung ihres Spiels zu finanzieren. Doch Geld allein ist nicht genug, um alle Probleme der Spieleentwicklung zu lösen. Und was, wenn das Geld ausgeht?
Ein Bericht von Daniel Ziegener

  1. Killerwhale Games Verdacht auf Betrug beim Kickstarter-Erfolgsspiel Raw
  2. The Farm 51 Chernobylite braucht Geld für akkurates Atomkraftwerk
  3. E-Pad Neues Android-Tablet mit E-Paper-Display und Stift

    •  /