- SCIENCE ACTUALITES - SEPTEMBRE 1998 -

 

L'ordinateur en faute

Les ordinateurs ne sont pas à l'abri des erreurs. Face à la complexité des programmes, celles-ci ont même tendance à se multiplier. Quelles sont leurs conséquences? Peut-on les éviter?
 



La simulation tridimentionnelle, de plus en plus utilisée dans tous les domaines scientifiques, demande de grands volumes de calculs. Ainsi cette image, représentant un impact en hypervitesse sur des cibles, a nécessité une durée de passage de 20 heures sur le supercalculateur Cray T3D.
PHOTO: © CEA

Depuis quelques années, les erreurs informatiques ont tendance à se multiplier, parallèlement à la complexification des programmes. "Il y a une grosse probabilité pour que, dans tout programme un tant soit peu volumineux, il y ait une ou plusieurs anomalies", reconnaît Alain Deutsch, chercheur à l'Institut de recherche en informatique et en automatique (Inria). Trois grandes sources d'erreurs peuvent être distinguées. Premier problème: la construction d'un programme. Le concepteur peut, dès le départ, avoir une analyse faussée du problème à résoudre ou oublier une de ses composantes. Ce problème est d'autant plus fréquent que les programmes à concevoir sont compliqués et volumineux. Selon Jean-François Colonna, chercheur au Centre de mathématiques appliquées, "certaines anomalies vont se manifester immédiatement. D'autres peuvent très bien ne jamais être détectées si les fonctions où elles se trouvent ne sont pas utilisées". Le second problème réside dans la "traduction" des langages de programmation. En général, ces derniers ont une structure plus élaborée que celle utilisée par les microprocesseurs. On utilise alors un nouveau programme ­ baptisé compilateur ­ qui permet de traduire le langage de programmation dans un langage plus simple. Il existe généralement un compilateur par type de langage et d'ordinateur. Tous ont malheureusement un point commun: très complexes (plusieurs milliers de lignes d'instructions), ils sont eux aussi susceptibles de contenir des anomalies.

Erreurs d'arrondis

Troisième grande source d'erreurs: l'exécution des programmes de calculs. Un des problèmes les plus courants concerne les erreurs d'arrondis. Un ordinateur, quelle que soit sa puissance, a une capacité de stockage limitée et ne peut prendre en compte tous les chiffres flottant après la virgule. Conséquence: la machine ne pourra manipuler qu'un nombre arrondi. Dans la plupart des cas, cet ajustement restera infiniment petit et n'aura aucune conséquence sur les résultats finaux. Il en est tout autrement pour la recherche en mathématiques ou en physique. Quand les résultats sont réutilisés pour de nouveaux calculs qui s'enchaînent les uns aux autres, on peut craindre qu'au bout d'un moment les données obtenues soient complètement faussées. Quelles sont les conséquences de toutes ces anomalies? Pour l'utilisateur lambda d'ordinateurs, elles se traduisent le plus souvent par le "plantage" de l'appareil. Désorienté par des données ou des commandes contradictoires, l'ordinateur se met lui-même hors-circuit.

Tests automatiques

Dans le domaine de l'industrie et de la recherche, les erreurs ont souvent un impact plus grave. On se souvient du premier vol d'Ariane 5, en 1996, qui s'est terminé en moins d'une minute par l'explosion de l'appareil à la suite d'une erreur dans les logiciels de calcul. Les batteries de tests effectués pour vérifier le bon fonctionnement des programmes n'avaient rien détecté. Il est en effet impossible de tester l'ensemble des cas de figures possibles. Depuis cet accident, l'Aérospatiale, associée à l'Institut de recherche en informatique et en automatique, a mis au point une méthode mathématique permettant de compléter les tests en vigueur par des calculs automatiques. Aucune méthode de validation, cependant, ne peut être fiable à 100% et le risque d'erreur ne doit jamais être écarté. La meilleure garantie réside peut-être dans la prudence de l'utilisateur. " On a trop tendance à attribuer aux ordinateurs des propriétés qu'ils n'ont pas, conclut Jean-François Colonna. Il faut être conscient de leurs limites."

* PATRICIA PRADEL

Focus

Puces réfractaires

Il y a quatre ans, une petite puce ébranlait le géant de l'informatique. IBM, leader mondial du secteur, avait alors suspendu pendant huit jours la livraison de tous ses micro-ordinateurs équipés du microprocesseur Pentium, dernier-né de la gamme du constructeur Intel. A l'origine de cette décision, d'importants risques d'erreurs de calcul, allant jusqu'à 20 par jour pour certains logiciels. Une première dans l'histoire de l'informatique, dont les fabricants, se seraient bien passés.

 


Sommaire des kiosques | général Début de l'article | A la une           

© CSI - Science Actualités - Reproduction des photos interdite