Pilot ACE
Fiche rapide
- Nom : Pilot ACE — Pilot Automatic Computing Engine
- Institution : National Physical Laboratory (NPL), Royaume-Uni
- Origine du projet : architecture ACE conçue par Alan Turing
- Premier programme : 10 mai 1950
- Présentation publique : fin 1950
- Architecture : ordinateur électronique série
- Longueur d’un mot : 32 bits
- Fréquence : 1 MHz
- Mémoire initiale : 128 mots de 32 bits
- Technologie mémoire : lignes à retard au mercure
- Composants : environ 800 lampes électroniques dans sa première configuration
- Type : ordinateur expérimental à programme enregistré
- Fin d’utilisation : 1955
Alan Turing imagine l’ACE
Après la Seconde Guerre mondiale, Alan Turing rejoint le National Physical Laboratory. En 1945-1946, il conçoit un projet d’ordinateur électronique baptisé ACE, pour Automatic Computing Engine.
Turing imagine une machine générale dont les instructions sont enregistrées en mémoire. Un même ordinateur peut ainsi accomplir des tâches très différentes simplement en changeant de programme.
L’idée peut être résumée ainsi : même machine + programme différent = nouvelle tâche.
Le projet de Turing est cependant très ambitieux pour les moyens techniques disponibles. Sa réalisation prend du retard et Turing quitte le NPL en 1948 pour rejoindre l’Université de Manchester.
Les ingénieurs du NPL poursuivent alors ses travaux en construisant une version simplifiée de l’ACE : le Pilot ACE, qui exécute son premier programme le 10 mai 1950.
Turing est donc bien à l’origine de l’architecture du projet, mais le Pilot ACE est réalisé par l’équipe du NPL après son départ.
10 mai 1950 : le premier programme
Le 10 mai 1950, alors que la machine n’est encore que partiellement achevée, l’équipe réussit à lui faire exécuter un premier petit programme.
Les moyens sont encore rudimentaires. Les instructions sont introduites en binaire à l’aide d’interrupteurs et le résultat est observé grâce à des voyants lumineux.
L’objectif n’est pas de résoudre un grand problème scientifique. Il faut avant tout démontrer que les différents éléments de la machine peuvent fonctionner ensemble :
- lire une instruction ;
- conserver des informations en mémoire ;
- effectuer une opération ;
- enchaîner automatiquement plusieurs instructions.
Cette réussite confirme que l’architecture est viable. Au cours des mois suivants, le Pilot ACE est complété et devient une machine réellement utilisable.
Une machine extrêmement rapide pour son époque
Le Pilot ACE fonctionne à une fréquence de 1 MHz. Cela signifie que son rythme électronique de base atteint un million d’impulsions par seconde, une valeur remarquable au début des années 1950.
Il ne faut cependant pas comparer directement cette fréquence à celle d’un processeur moderne. L’architecture est très différente et l’exécution d’une instruction nécessite de nombreuses impulsions.
Malgré cela, le Pilot ACE se distingue par sa vitesse. Dans certaines conditions, une addition peut être effectuée en quelques dizaines de microsecondes.
Cette rapidité repose en partie sur une caractéristique particulière de la machine : les programmeurs organisent soigneusement les instructions afin de réduire les temps d’attente provoqués par la mémoire.
Une mémoire à lignes à retard
Le Pilot ACE utilise une mémoire à lignes à retard au mercure. Les données y circulent sous forme d’impulsions acoustiques et ne sont donc pas accessibles instantanément.
La première configuration dispose de 128 mots de 32 bits. Pour lire une donnée ou une instruction, le processeur doit parfois attendre qu’elle repasse au bon endroit dans la ligne à retard.
Cette contrainte a une conséquence directe sur la programmation : il faut organiser les instructions de manière à limiter les temps d’attente. C’est ce qui conduit notamment au codage optimal, caractéristique importante du Pilot ACE.
Le « codage optimal » : programmer aussi le temps
Pour éviter que le processeur passe son temps à attendre la mémoire, les programmeurs du Pilot ACE utilisent une technique appelée codage optimal (optimum coding).
L’idée consiste à placer les instructions dans la mémoire de manière à ce que l’instruction suivante arrive précisément au moment où la précédente se termine.
Le programmeur ne réfléchit donc pas uniquement à l’ordre logique :
instruction A → instruction B → instruction C
Il doit également tenir compte de la position physique de ces instructions dans les lignes à retard.
Un bon programme minimise ainsi les périodes pendant lesquelles le processeur attend que la bonne information réapparaisse.
Cette méthode permet d’obtenir d’excellentes performances, mais elle rend la programmation particulièrement difficile. Modifier une instruction peut obliger à repenser le placement de plusieurs autres instructions.
Une architecture inhabituelle
Le Pilot ACE ne ressemble pas à un ordinateur moderne organisé autour de nombreux registres accessibles de manière uniforme.
Son architecture repose largement sur le transfert de mots entre différentes zones de stockage. Une instruction indique essentiellement :
- d’où vient l’information ;
- où elle doit aller ;
- quelle instruction devra être exécutée ensuite.
Cette troisième information est particulièrement importante à cause des lignes à retard : elle permet justement d’organiser le programme en fonction du moment où la prochaine instruction sera disponible.
L’architecture de Turing accorde ainsi une place centrale aux transferts de données plutôt qu’à une longue liste d’opérations spécialisées.
Un prototype qui devient une vraie machine de calcul
Le Pilot ACE devait initialement être un banc d’essai. Pourtant, une fois la machine opérationnelle, ses performances attirent rapidement l’attention.
Des modifications sont alors réalisées afin de faciliter son utilisation. Sa mémoire est augmentée, certaines opérations sont accélérées et des dispositifs d’entrée-sortie plus pratiques sont ajoutés.
Le Pilot ACE commence à résoudre de véritables problèmes scientifiques et techniques.
Il est notamment utilisé pour des calculs liés :
- à l’aéronautique ;
- aux contraintes mécaniques ;
- aux équations différentielles ;
- à l’ingénierie ;
- à l’analyse numérique.
La machine expérimentale devient donc progressivement un ordinateur de production.
James Wilkinson et le calcul numérique
Le mathématicien James H. Wilkinson joue un rôle important dans le développement et surtout dans l’utilisation du Pilot ACE.
L’une des difficultés des premiers ordinateurs concerne la représentation des nombres. Une machine possède un nombre limité de bits : elle ne peut donc représenter exactement toutes les valeurs mathématiques.
Les calculs successifs peuvent produire de petites erreurs d’arrondi qui finissent parfois par devenir importantes.
Les travaux réalisés autour du Pilot ACE conduisent Wilkinson à étudier profondément ces problèmes de précision numérique et d’erreurs d’arrondi. Il deviendra l’une des grandes figures de l’analyse numérique informatique.
L’histoire du Pilot ACE ne concerne donc pas uniquement le matériel : elle participe également au développement de méthodes permettant de rendre les calculs informatiques fiables.
Du Pilot ACE au DEUCE
Le succès du Pilot ACE montre qu’une machine issue de cette architecture peut avoir une véritable utilité industrielle.
La société britannique English Electric développe alors une version commercialisable appelée DEUCE, pour Digital Electronic Universal Computing Engine.
Introduit en 1955, le DEUCE reprend largement l’architecture du Pilot ACE tout en bénéficiant d’une réalisation adaptée à une utilisation régulière.
Plus de trente exemplaires sont construits et utilisés dans des entreprises, des organismes scientifiques et des centres de recherche.
Les travaux de Turing au NPL débouchent ainsi indirectement sur une véritable famille d’ordinateurs commerciaux britanniques.
Et le véritable ACE ?
Le mot « Pilot » rappelle qu’une machine plus ambitieuse devait initialement lui succéder.
Le NPL poursuit effectivement le développement d’un ACE complet. Cependant, sa réalisation prend beaucoup plus de temps que prévu.
Lorsque cette grande version devient opérationnelle à la fin des années 1950, les technologies informatiques ont déjà progressé rapidement. Le Pilot ACE, pourtant conçu comme une simple étape intermédiaire, aura finalement eu une influence pratique plus immédiate.
C’est notamment son architecture qui sert directement de base au DEUCE.
Les limites du Pilot ACE
Malgré ses performances remarquables, le Pilot ACE reste très éloigné d’un ordinateur moderne.
- Mémoire : la capacité initiale de 128 mots est extrêmement réduite.
- Accès mémoire : les lignes à retard imposent d’attendre que l’information recherchée arrive.
- Programmation : le codage optimal demande une connaissance très précise du fonctionnement de la machine.
- Composants : environ 800 lampes électroniques produisent beaucoup de chaleur et nécessitent une maintenance importante.
- Entrées-sorties : les premiers dispositifs restent beaucoup moins pratiques qu’un clavier et un écran modernes.
Ces contraintes n’empêchent pourtant pas la machine de fournir plusieurs années de service utile.
Pourquoi le Pilot ACE est-il important ?
- Alan Turing : il matérialise une partie des idées d’architecture développées par Turing au NPL.
- Programme enregistré : la fonction de la machine peut être modifiée par le logiciel plutôt que par son câblage.
- Performances : son organisation permet d’atteindre une vitesse remarquable pour 1950.
- Mémoire : il illustre les possibilités et les contraintes des lignes à retard au mercure.
- Programmation : le codage optimal montre à quel point les premiers logiciels doivent tenir compte du fonctionnement physique de la mémoire.
- Calcul scientifique : un prototype devient suffisamment efficace pour être utilisé sur de vrais problèmes.
- Héritage industriel : son architecture donne naissance au DEUCE commercialisé par English Electric.
Le Pilot ACE constitue ainsi un exemple particulièrement intéressant de la transition entre les premiers prototypes à programme enregistré et les ordinateurs réellement utilisés pour le calcul scientifique et industriel.
Il montre également une idée chère à Alan Turing : la puissance d’un ordinateur ne vient pas seulement de son électronique, mais surtout de sa capacité à devenir une machine différente selon le programme qu’on lui donne.
Repères chronologiques
- 1945 : Alan Turing rejoint le National Physical Laboratory.
- 1945-1946 : conception du projet ACE.
- 1948 : Turing quitte le NPL avant la construction du Pilot ACE.
- 10 mai 1950 : exécution du premier programme sur le Pilot ACE.
- Fin 1950 : présentation publique de la machine.
- 1951 : modifications et extension permettant une utilisation plus régulière.
- Début des années 1950 : utilisation du Pilot ACE pour des problèmes scientifiques et techniques.
- 1954 : ajout d’un stockage sur tambour magnétique.
- 1955 : fin de l’exploitation du Pilot ACE et apparition du DEUCE d’English Electric.
- Fin des années 1950 : mise en service de la version complète de l’ACE au NPL.
Photo de couverture : Le Pilot ACE, sa console et le simulateur ACE, tels qu’ils sont exposés au Science Museum de Londres. par Logg Tandy, CC BY 4.0, Link
