[gull] Above Meltdown & Spectre

Marc Mongenet marc.mongenet at gmail.com
Wed Feb 7 21:04:18 CET 2018


Bonjour

Le 7 février 2018 à 00:22, Daniel Cordey <dc at pxcluster.com> a écrit :
>
> Sachant que la majorité du code se résume à l'exécution de LOAD & STORE
> (mesure sur des millions de lignes de code ayant permit de définir
> l'architecture HP-PA, ~80% !!!),

Il doit y avoir un malentendu, car la notion de ligne s'applique au code source,
tandis que la notion LOAD/STORE s'applique aux instructions machine.
Et il est difficile d'imaginer un programme exécutant 80% de load/store.
Même avec des compilateur d'il y a 25 ans sur une architecture pauvre
en registres comme x86, il n'y a que 34% de load/store dans l'exécution
des benchmarks SPECint92 (ref: Computer Architecture a Quantitative
Approach, 2nd edition, p.81).
Selon la même source, il y a 20% de branchements conditionnels.
Avec des pipelines d'aujourd'hui de plus de 10 étages, supprimer l'exécution
spéculative (correcte dans bien plus de 90% des cas) aurait un effet
dévastateur sur les performances: il y aurait une bulle dans le pipeline
tant que le branchement ne serait pas retiré, donc durant presque
autant de cycles qu'il y a d'étages de pipeline.

Marc


More information about the gull mailing list