Google développe le projet SiliFuzz pour la détection en masse des défauts cachés des processeurs

Par: Yuriy Stanislavskiy | 20.10.2021, 11:50

Google s'est efforcé de détecter de manière proactive les défauts logiciels dans les principaux projets open-source. Mais il a été révélé que l'entreprise développe également SiliFuzz, un système qui détectera les défauts des processeurs.

Qu'est-ce que c'est

Le principe de SiliFuzz est d'analyser les performances des processeurs en exécutant des données de test préparées à l'avance et collectées à l'aide d'émulateurs. Il s'agit d'une forme de phasage : le processeur est chargé de calculs "aléatoires", dont le résultat est vérifié à la sortie. S'il y a une différence, le processeur est considéré comme défectueux.

Pourquoi c'est nécessaire

Le système est principalement conçu pour détecter les défauts électriques dans les puces qui peuvent se produire pendant la fabrication, l'assemblage, le flux de travail, etc. Une attention particulière est accordée à ces derniers, plutôt qu'aux défauts logiques des processeurs eux-mêmes. En même temps, les tests en question n'utilisent pas de mécanismes de débogage de bas niveau, ce qui permet de les utiliser dans des systèmes "live".

En substance, la tâche des développeurs consiste à créer un système capable de tester de manière routinière chaque cœur de chaque serveur Google avec un impact minimal sur ses performances. Dans sa forme actuelle, SiliFuzz choisit un moment où la charge sur une machine particulière n'est pas trop importante, et teste systématiquement des groupes de quatre threads (2 cœurs avec SMT) en deux minutes maximum. Pour l'instant, les développeurs se concentrent sur les processeurs x86-64, qui sont largement utilisés par Google lui-même.

L'objectif principal du projet est d'automatiser la détection des défauts cachés qui entraînent des erreurs de calcul, beaucoup plus dangereuses que les simples pannes et défaillances, car de petits écarts dans le fonctionnement de la puce entraînent l'accumulation de toute une série d'erreurs. Dans certains cas, la différence était inférieure à 0,0000003%, mais cela peut être suffisant pour causer de sérieux problèmes.

Quelle est l'efficacité de

Environ 45 % des défauts détectés par SiliFuzz ne sont pas repérés par d'autres outils. Les futurs développeurs prévoient d'étendre SiliFuzz, en augmentant la vitesse du programme et en améliorant sa qualité générale.

Source : phoronixgithub

Illustration : Laura Ockel on Unsplash