ENIAC
|

ENIAC

Electronic Numerical Integrator and Computer

L’ENIAC (Electronic Numerical Integrator and Computer) est un ordinateur électronique conçu et construit à la Moore School of Electrical Engineering de l’université de Pennsylvanie pour l’armée américaine.
Développé entre 1943 et 1945, il est utilisé pour la première fois sur un problème réel le 10 décembre 1945, puis officiellement présenté au public le 15 février 1946. Avec près de 18 000 tubes à vide, environ 30 tonnes de matériel et une consommation électrique considérable, l’ENIAC est une machine gigantesque. Mais sa véritable rupture est technologique : les opérations arithmétiques sont réalisées électroniquement, sans être ralenties par les mécanismes et relais des calculateurs précédents.Capable d’effectuer environ 5000 additions par seconde, l’ENIAC démontre qu’un ordinateur électronique à grande échelle peut fonctionner avec suffisamment de rapidité et de fiabilité pour résoudre de véritables problèmes scientifiques.Il n’est pourtant pas encore un ordinateur moderne. Il travaille en décimal, possède très peu de mémoire et, dans sa conception originale, son programme n’est pas enregistré en mémoire. Programmer l’ENIAC signifie encore configurer des commutateurs et relier physiquement ses différentes unités.

L’histoire de l’ENIAC est ainsi celle d’une transition fondamentale : du calcul électromécanique au calcul électronique, puis du câblage du programme aux instructions enregistrées en mémoire.

Fiche rapide

  • Institution : Moore School of Electrical Engineering, université de Pennsylvanie
  • Concepteurs principaux : John W. Mauchly et J. Presper Eckert
  • Construction : 1943–1945
  • Première utilisation réelle : 10 décembre 1945
  • Présentation publique : 15 février 1946
  • Architecture : décimale
  • Mémoire rapide : 20 accumulateurs de 10 chiffres décimaux
  • Technologie : 17 468 tubes à vide
  • Vitesse : environ 5000 additions par seconde
  • Masse : environ 30 tonnes
  • Consommation de l’installation : environ 150 kW
  • Fin de service : 1955

Une machine née d’un problème militaire

Pendant la Seconde Guerre mondiale, l’armée américaine doit produire d’importantes quantités de tables de tir destinées à l’artillerie.

La trajectoire d’un projectile dépend de nombreux paramètres : vitesse initiale, angle du canon, résistance de l’air, température, vent ou encore caractéristiques du projectile.

Chaque trajectoire nécessite la résolution numérique d’équations différentielles. À la Moore School, un analyseur différentiel et des calculatrices mécaniques permettent d’accélérer une partie du travail, mais de nombreux calculs restent effectués manuellement.

Les personnes chargées de ces opérations sont alors appelées des « computers ». Le terme ne désigne pas encore une machine, mais un métier.

Pendant la guerre, près d’une centaine de femmes sont ainsi recrutées pour calculer les trajectoires destinées au Ballistic Research Laboratory. Une seule trajectoire peut demander plusieurs dizaines d’heures de travail.

Le physicien John William Mauchly est convaincu que l’électronique peut changer radicalement cette situation.

Avec l’ingénieur John Presper Eckert, il propose en 1943 la construction d’une machine entièrement électronique capable d’effectuer ces opérations à une vitesse sans précédent.

Le projet reçoit le nom de code Project PX.

Mauchly et Eckert : de l’idée à la machine

Les deux hommes jouent des rôles complémentaires.

John Mauchly est physicien. Il s’intéresse depuis plusieurs années à l’utilisation de l’électronique pour le calcul scientifique et défend l’idée d’une machine rapide capable de résoudre des problèmes très différents.

Presper Eckert est ingénieur en électronique. Il transforme cette vision en une architecture matériellement réalisable et devient le principal responsable de l’ingénierie de l’ENIAC.

Le défi est considérable.

L’utilisation de quelques dizaines de tubes électroniques est courante. Faire fonctionner près de 18 000 tubes simultanément semble à beaucoup voué à l’échec.

Eckert et son équipe imposent donc des règles de conception rigoureuses : composants soigneusement sélectionnés, tensions inférieures aux limites maximales des tubes, circuits standardisés et contrôle minutieux de la fabrication.

L’expérience leur donne raison.

L’ENIAC démontre qu’une machine électronique extrêmement complexe peut fonctionner avec suffisamment de fiabilité pour devenir un véritable outil de calcul.

18 000 tubes pour changer d’échelle

L’ENIAC occupe une grande salle. Ses dizaines de panneaux forment un ensemble de plusieurs dizaines de mètres de longueur et sa masse approche les 30 tonnes.

Il contient précisément 17 468 tubes à vide, mais aussi des milliers de diodes, relais, résistances et condensateurs.

L’installation nécessite environ 150 kilowatts, notamment pour alimenter l’électronique et assurer son refroidissement.

Ces dimensions spectaculaires ne doivent cependant pas masquer l’essentiel.

L’absence de mécanismes mobiles dans les circuits de calcul permet à l’ENIAC d’atteindre des vitesses jusque-là extraordinaires.

Il peut effectuer environ :

5000 additions par seconde

L’électronique change brutalement l’échelle du temps informatique.

Un ordinateur décimal

Contrairement aux ordinateurs qui s’imposeront par la suite, l’ENIAC ne travaille pas directement en binaire.

Son architecture est décimale.

Le cœur de la machine comprend vingt accumulateurs. Chacun peut conserver un nombre signé comportant jusqu’à dix chiffres décimaux et effectuer des additions ou des soustractions.

Chaque chiffre est représenté par un compteur électronique pouvant prendre dix états différents, de 0 à 9.

La machine possède également des unités spécialisées pour la multiplication, la division et l’extraction de racines carrées.

Des tables de fonctions permettent de conserver des constantes numériques, tandis que des cartes perforées sont utilisées pour une partie des entrées et sorties.

Malgré ses 30 tonnes, l’ENIAC possède donc une mémoire extrêmement réduite : ses vingt accumulateurs constituent l’essentiel de son stockage numérique rapide.

Programmer en branchant des câbles

Dans sa conception originale, le programme de l’ENIAC n’est pas stocké dans une mémoire.

Pour résoudre un nouveau problème, les programmeurs doivent commencer par décomposer l’algorithme en opérations élémentaires : additions, soustractions, multiplications, transferts et tests.

Il faut ensuite déterminer quelle unité réalisera chaque opération et comment les valeurs vont circuler entre elles.

Des câbles établissent physiquement certaines de ces connexions tandis que des commutateurs déterminent le comportement des différentes unités.

Le programme possède donc en partie une existence matérielle.

Une fois configuré, l’ENIAC peut effectuer le calcul à une vitesse extraordinaire. Mais préparer complètement la machine pour un nouveau problème peut nécessiter plusieurs jours.

Cette contradiction va rapidement devenir évidente : une machine capable de calculer en quelques secondes ne peut pas continuer à demander plusieurs jours pour changer de programme.

Les six programmeuses de l’ENIAC

Pour exploiter la nouvelle machine, six mathématiciennes qui travaillaient auparavant sur les calculs balistiques sont sélectionnées :

  • Jean Jennings, future Jean Bartik ;
  • Betty Snyder, future Betty Holberton ;
  • Kathleen « Kay » McNulty ;
  • Frances Bilas, future Frances Spence ;
  • Marlyn Wescoff, future Marlyn Meltzer ;
  • Ruth Lichterman, future Ruth Teitelbaum.

Leur problème est inédit : il n’existe ni langage de programmation, ni compilateur, ni système d’exploitation et pratiquement aucune méthode établie pour programmer une telle machine.

Elles doivent étudier les schémas logiques de l’ENIAC, comprendre le fonctionnement de ses différentes unités puis déterminer comment traduire un calcul en configuration matérielle.

Elles développent des méthodes permettant de suivre les opérations et la circulation des impulsions. Rechercher une erreur peut signifier suivre le déroulement logique du programme jusque dans les commutateurs et les câbles.

Leur rôle dépasse ainsi largement celui de simples opératrices : elles participent à la naissance de la programmation des ordinateurs électroniques.

Adele Goldstine, mathématicienne elle aussi, joue un rôle important dans leur formation et dans la rédaction de la documentation technique de l’ENIAC.

10 décembre 1945 : une première mission secrète

La guerre se termine avant que l’ENIAC puisse remplir à grande échelle la mission pour laquelle il avait été commandé.

Mais avant même sa présentation publique, une première application scientifique lui est confiée par le laboratoire de Los Alamos.

Les physiciens Nicholas Metropolis et Stanley Frankel préparent le problème avec l’aide notamment de Mauchly et d’Adele et Herman Goldstine.

En novembre 1945, les six programmeuses participent à son installation et à son exploitation sur l’ENIAC : elles configurent la machine, positionnent les commutateurs et établissent les connexions nécessaires.

Elles ne connaissent cependant pas la finalité précise du calcul.

Le 10 décembre 1945, le journal de service de la machine porte la mention :

« Problem A — 12/10/45 »

suivie de :

« Machine tested — OK »

Il s’agit de la première utilisation connue de l’ENIAC sur un problème réel.

Le calcul provenant de Los Alamos aurait concerné des travaux sur la faisabilité d’une arme thermonucléaire.

15 février 1946 : l’ENIAC se montre au monde

Quelques semaines plus tard, l’existence jusque-là secrète de l’ENIAC peut être révélée.

L’armée et l’université de Pennsylvanie organisent une démonstration publique spectaculaire.

Cette fois, le problème choisi est une trajectoire balistique, directement liée à la raison pour laquelle l’ENIAC avait été construit.

Jean Jennings et Betty Snyder préparent le programme de démonstration.

La veille, elles travaillent jusque tard dans la nuit pour éliminer une dernière erreur : le programme continue à calculer après le moment où le projectile est censé toucher le sol. Betty Snyder identifie finalement le problème et la correction se résume à modifier la position d’un commutateur.

Le lendemain, la démonstration fonctionne.

L’ENIAC calcule la trajectoire plus rapidement que le projectile réel ne mettrait de temps à la parcourir.

La puissance du calcul électronique devient immédiatement perceptible.

Des balles de ping-pong et des lumières clignotantes

Encore faut-il rendre cette vitesse visible au public.

L’ENIAC possède des voyants au néon indiquant certains états de ses accumulateurs. Pour rendre leur lumière plus spectaculaire, l’équipe utilise une solution étonnamment simple : des balles de ping-pong coupées en deux sont placées devant certains voyants afin d’en diffuser la lumière.

Dans une salle assombrie, les lampes clignotantes donnent l’impression de visualiser l’activité interne du gigantesque « cerveau électronique ».

L’image frappe les esprits.

Les ordinateurs couverts de lumières clignotantes deviendront par la suite un véritable cliché du cinéma et de la télévision.

Mais derrière cette démonstration spectaculaire se trouve un contraste moins visible.

La presse met en avant l’ENIAC, l’armée, Mauchly et Eckert. Le rôle des femmes qui ont appris à programmer la machine et préparé la démonstration est pratiquement absent du récit public.

Jean Jennings et Betty Snyder ne reçoivent notamment pas la reconnaissance correspondant au rôle qu’elles viennent de jouer dans le succès de la présentation.

La contribution des six programmeuses ne sera véritablement remise en lumière que plusieurs décennies plus tard.

Une machine qui continue après la guerre

L’ENIAC n’est pas seulement une démonstration technologique.

Après 1946, il est utilisé pour de nombreux problèmes : balistique, aérodynamique, météorologie, physique nucléaire, rayons cosmiques ou méthodes numériques.

En 1947, il est transféré à l’Aberdeen Proving Ground, dans le Maryland.

Il y restera en activité jusqu’en 1955.

Mais son histoire connaît entre-temps une évolution encore plus importante : la manière de le programmer change profondément.

1948 : du câblage aux instructions codées

Eckert et Mauchly ont compris les limites du câblage avant même que l’ENIAC ne soit achevé.

Avec d’autres membres de la Moore School, ils réfléchissent à une nouvelle machine : l’EDVAC.

Cette fois, les instructions doivent pouvoir être représentées sous forme numérique et conservées dans une mémoire.

Le mathématicien John von Neumann rejoint les discussions en 1944 et joue un rôle essentiel dans la formalisation de cette nouvelle organisation.

L’ENIAC lui-même est ensuite modifié.

À partir de 1947, une grande partie de son câblage est rendue permanente et les tables de fonctions servent à conserver des instructions codées.

En avril 1948, l’ENIAC modifié exécute ainsi un programme selon une organisation beaucoup plus proche de celle des ordinateurs modernes, notamment pour des simulations de Monte-Carlo liées à la physique nucléaire.

Il ne s’agit pas encore exactement d’un ordinateur moderne à mémoire vive contenant indifféremment programmes et données. Les instructions sont essentiellement conservées dans une sorte de mémoire configurable par commutateurs.

Mais le changement conceptuel est majeur.

On passe de :

« câbler le programme »

à :

« coder les instructions »

Une paternité qui devient controversée

En 1945, John von Neumann rédige le célèbre First Draft of a Report on the EDVAC.

Le document expose l’organisation logique d’un ordinateur disposant notamment d’une mémoire, d’une unité arithmétique, d’une unité de contrôle et de dispositifs d’entrée-sortie.

Sa diffusion aura une influence considérable sur les ordinateurs qui seront construits après la guerre.

Mais le document ne porte comme auteur que le nom de John von Neumann.

Or les principes qu’il formalise ne sont pas apparus soudainement avec lui. Ils résultent en partie des travaux et discussions auxquels participent auparavant Eckert, Mauchly et d’autres membres de l’équipe de la Moore School.

Von Neumann joue donc un rôle essentiel dans leur formalisation et surtout leur diffusion, mais l’expression devenue courante d’« architecture de von Neumann » masque en partie le caractère collectif de cette évolution.

Cette question de reconnaissance va bientôt se doubler d’un problème juridique.

Des idées scientifiques aux brevets

La large diffusion du First Draft en 1945 rend publiques plusieurs des idées développées autour de l’EDVAC.

Dans le même temps, un désaccord apparaît entre Eckert, Mauchly et l’université de Pennsylvanie sur les droits de propriété intellectuelle liés aux nouvelles machines.

Eckert et Mauchly souhaitent conserver la possibilité d’exploiter commercialement leurs inventions.

Le conflit contribue à leur départ de la Moore School en mars 1946.

En 1947, ils déposent une importante demande de brevet concernant l’ENIAC.

Le brevet américain n’est finalement accordé qu’en 1964, près de vingt ans après la construction de la machine.

Entre-temps, les droits ont été transférés aux sociétés qui ont succédé à l’entreprise d’Eckert et Mauchly et appartiennent désormais à Sperry Rand.

1973 : le brevet ENIAC est invalidé

La bataille juridique culmine avec l’affaire Honeywell Inc. v. Sperry Rand Corp.

En 1973, le juge Earl Larson déclare le brevet ENIAC invalide.

La décision repose sur plusieurs éléments.

La divulgation publique de certaines idées avant le dépôt du brevet joue un rôle important. Le First Draft of a Report on the EDVAC figure parmi les publications examinées.

Le procès remet également au premier plan les travaux antérieurs de John Atanasoff et Clifford Berry sur l’Atanasoff-Berry Computer. Mauchly avait rencontré Atanasoff et étudié ses travaux en 1941.

Il serait donc inexact de présenter cette histoire comme un simple procès opposant Eckert et Mauchly à von Neumann.

Elle mêle plusieurs questions différentes : qui a inventé quoi, qui doit être crédité, quelles idées peuvent être brevetées et à qui appartiennent-elles ?

L’histoire de l’ENIAC montre précisément pourquoi la naissance de l’ordinateur ne peut pas être attribuée à un seul homme.

De l’ENIAC à l’UNIVAC

Pour Eckert et Mauchly, l’ENIAC n’est pas une fin.

Après avoir quitté l’université de Pennsylvanie, ils fondent une société qui devient l’Eckert-Mauchly Computer Corporation.

Leur ambition est nouvelle : construire des ordinateurs destinés non plus seulement aux militaires et aux scientifiques, mais à des clients.

Après le BINAC, ils développent l’UNIVACUniversal Automatic Computer.

Dès 1946, ils proposent au United States Census Bureau une machine capable de traiter les énormes quantités d’informations du recensement.

L’objectif change.

Il ne s’agit plus seulement de calculer des trajectoires ou de résoudre des équations scientifiques. L’ordinateur doit pouvoir traiter des statistiques, des fichiers, des salaires ou des données commerciales.

Plusieurs personnes issues de cette première génération participent à cette évolution.

Jean Bartik travaille notamment sur le BINAC puis sur l’UNIVAC I. Betty Holberton poursuit également ses travaux sur la programmation.

En 1949, Grace Hopper rejoint l’Eckert-Mauchly Computer Corporation. Ses travaux contribueront ensuite au développement des compilateurs et à l’évolution vers des langages de programmation de plus haut niveau.

L’entreprise rencontre cependant d’importantes difficultés financières.

En 1950, elle est rachetée par Remington Rand.

Le développement continue et, en 1951, le premier UNIVAC I est livré au Census Bureau américain.

En quelques années, Eckert et Mauchly sont ainsi passés d’un ordinateur militaire expérimental à l’un des premiers grands projets d’ordinateur commercial.

L’héritage de l’ENIAC

Présenter l’ENIAC simplement comme « le premier ordinateur » serait historiquement trop simplificateur.

D’autres machines et chercheurs l’ont précédé sur certains aspects.

Sa place essentielle vient de la réunion de plusieurs caractéristiques : l’ENIAC est électronique, numérique, programmable et capable de résoudre une grande variété de problèmes.

Il démontre surtout que le calcul électronique à grande échelle est possible.

Mais l’expérience révèle également les limites d’une programmation réalisée par câblage et contribue directement à la recherche d’une nouvelle architecture où le programme devient lui-même une information.

Autour de l’ENIAC apparaissent ainsi plusieurs éléments fondamentaux de l’informatique moderne : le calcul électronique à haute vitesse, la programmation, le programme enregistré et bientôt l’ordinateur commercial.

Mauchly et Eckert conçoivent la machine et poursuivent l’aventure jusqu’au BINAC et à l’UNIVAC.

Les ingénieurs de la Moore School rendent possible une électronique d’une complexité encore jamais atteinte.

Les six programmeuses apprennent comment transformer un algorithme en opérations exécutables par cette nouvelle machine.

John von Neumann participe à la formalisation et à la diffusion de l’architecture qui succédera à celle de l’ENIAC.

En quelques années seulement, le programme passe des câbles à la mémoire, tandis que l’ordinateur passe du laboratoire militaire à l’industrie.

Les 30 tonnes, les 18 000 tubes et les lumières de l’ENIAC ont marqué les photographies.

Mais son héritage véritable est beaucoup plus profond : il se trouve dans la manière même dont les ordinateurs seront désormais construits, programmés et utilisés.


Photo de couverture par Unidentified U.S. Army photographer — Image from Historic Computer Images, Domaine public, Lien.

Publications similaires

  • |

    Commodore VIC 20

    Commodore VIC-20 : l’ordinateur qui fit entrer la micro-informatique dans les foyers Le Commodore VIC-20 occupe une place essentielle dans l’histoire de la micro-informatique familiale. Commercialisé d’abord au Japon en 1980 sous le nom de VIC-1001, puis en Amérique du Nord et en Europe à partir de 1981, il précède le célèbre Commodore 64 et…

  • |

    Altaïr 8800

    Altair 8800 : le coup de poker ! Au milieu des années 1970, l’informatique demeure dominée par les ordinateurs centraux et les mini-ordinateurs, réservés aux grandes organisations, aux universités et à l’industrie. L’idée qu’un individu puisse posséder son propre ordinateur programmable reste marginale, tant pour des raisons techniques qu’économiques. À titre de comparaison, un ordinateur…

  • |

    PDP 8/e

    Le PDP-8/E est un mini-ordinateur 12 bits introduit par Digital Equipment Corporation (DEC) en 1970. Il conserve l’architecture et la compatibilité logicielle du PDP-8, mais modernise profondément sa réalisation matérielle. Le PDP-8/E n’est pas le premier modèle de la famille à utiliser des circuits intégrés : le PDP-8/I, apparu en 1968, en utilisait déjà. Le…

  • | |

    PDP-10

    Le PDP-10, également commercialisé sous le nom de DECsystem-10, est un ordinateur 36 bits introduit par la Digital Equipment Corporation (DEC) en 1966.Il devient l’une des machines importantes de l’informatique universitaire et scientifique des années 1960 et 1970. Plus puissant et plus coûteux qu’un mini-ordinateur, mais conçu pour une utilisation plus interactive que celle de…

  • |

    Amstrad CPC 6128

    Le CPC 6128 : l’aboutissement de la gamme Amstrad 8 bits Le Amstrad CPC 6128, lancé en 1985, représente l’aboutissement de la première génération des micro-ordinateurs CPC. Il conserve le processeur Zilog Z80A et l’architecture générale de ses prédécesseurs, mais leur apporte deux améliorations importantes : 128 Ko de mémoire vive et un lecteur de…