Le 27 février 1976, des opérateurs de la NSA éteignent pour de bon un ordinateur dont le grand public ignorera le nom pendant des décennies. Rien d'une mort glorieuse : une pièce mécanique de sa bibliothèque de bandes s'est usée, le fabricant a mis la clé sous la porte, voilà tout.1

Quatorze ans plus tôt pourtant, cette même machine tenait le rôle de processeur cryptanalytique principal d'une agence si discrète que ses fournisseurs eux-mêmes ne savaient pas pour qui ils travaillaient. Harvest, officiellement IBM 7950, exécutait certaines tâches jusqu'à 200 fois plus vite que n'importe quel autre ordinateur de la planète, sur les intercepts les plus sensibles de la guerre froide, de la crise des missiles de 1962 aux accords d'Helsinki de 1975.19

L'histoire vient de ressortir de l'ombre : IEEE Spectrum consacre ce mois-ci un long papier à la machine, appuyé sur des documents NARA déclassifiés et numérisés, et un article de l'ACM Transactions on Storage de 2025 consacre au passage sa bibliothèque de bandes Tractor comme première bibliothèque automatisée au monde.15 Le manuel système de 1960, déclassifié, permet même de reconstituer la logique interne du coprocesseur.3 Le secret, à lui seul, intéresse depuis longtemps les historiens. Ce qui m'a retenu ici, c'est le raisonnement d'ingénierie qu'on peut enfin lire en entier : chaque composant existe pour une raison physique précise, et chaque raison dit encore quelque chose à quiconque construit un outil aujourd'hui.

La commande impossible

Au début des années 1960, la NSA croule sous le trafic intercepté. Ses machines cryptanalytiques fonctionnent par lots : des opérateurs montent les bandes à la main, une exécution après l'autre. Le flux mondial de messages captés dépasse ce que cette chaîne humaine peut absorber.1

L'agence veut autre chose : avaler un fleuve continu de données, automatiquement, jour et nuit. Cette seule exigence va façonner toute l'architecture. Deux propositions d'IBM sont refusées ; la troisième, en 1958, passe : un ordinateur fondé sur Stretch, son futur mastodonte scientifique, augmenté d'un coprocesseur sur mesure et d'un système de stockage sur bande radicalement nouveau.1

Le sujet est pris si tôt qu'on en retrouve la trace dès mai 1957 dans un manuel préliminaire du système Harvest chez IBM, quand le projet Stretch lui-même n'existe que sur le papier.28 Pendant ce temps, à Poughkeepsie, l'équipe dirigée par Stephen Dunwell recrute Fred Brooks, John Cocke et Jim Pomerène pour construire ce qui doit être cent fois plus vite que l'IBM 704.8

Détail savoureux : avant IBM, l'Army Signal Corps avait recruté Dunwell en 1942 comme directeur technique du département machines d'un nouveau centre cryptographique américain. Il finit la guerre lieutenant-colonel.8 Celui qui allait produire le décodeur de la NSA savait donc exactement ce que veut dire traiter du trafic intercepté à la chaîne. Il l'avait fait.

En 1957, un comité interne baptisé « Three-in-One » tente même de partager le travail en trois machines sœurs : une base commune, un processeur scientifique nommé Sigma pour Los Alamos, et le processeur spécialisé Harvest pour la NSA. L'approche est adoptée en juin 1957, abandonnée en avril 1958, mais elle laisse une trace durable : Harvest conservera précisément cette structure d'un Stretch plus un processeur dédié.8

Salle informatique de la NSA à Fort Meade avec imprimantes et grands meubles d'ordinateur
Un centre de calcul de la NSA à Fort Meade abrite l'une des machines les plus rapides de son temps, rarement mentionnée publiquement.National Cryptologic Museum, via IEEE Spectrum

Un hôte capricieux

Il faut d'abord parler de l'hôte. L'IBM 7030 Stretch est livré à partir de 1961 à huit ou neuf clients, surtout des laboratoires d'armement et de météo. C'est l'une des premières grandes machines entièrement transistorisées, celle qui introduit l'octet de huit bits devenu standard, avec des idées de prélecture d'instructions qui annoncent les processeurs modernes.18

Sur le marché, en revanche, c'est une débâcle. Cent fois la vitesse de l'IBM 704 promise ; les benchmarks livrent bien moins, Tom Watson Jr. coupe les prix puis retire purement la machine de la vente en mai 1961.8 Frances Allen, alors sur le compilateur, garde un souvenir croustillant : une première version de prédiction météo mettait 18 heures pour prévoir... 24 heures.4

À Fort Meade, ces déboires font sourire. Stretch n'en reste pas moins la machine non classifiée la plus rapide du monde pendant ses premières années. Et son point fort, justement, le calcul scientifique en virgule flottante, n'a aucun intérêt ici : l'agence trie et compare des caractères, du texte. D'où le greffon.1

Tout le monde partage deux mémoires : une large banque principale, une autre plus petite mais bien plus rapide. Quand Stretch passe en mode flux, il se rendort et laisse le coprocesseur traverser la mémoire à pleine vitesse. Jamais les deux en même temps.1 Brutal, sans doute. Mais zéro conflit d'accès dans une machine où chaque microseconde compte.

Sept instructions

Voici donc ce greffon : l'IBM 7951. À mille lieues d'un processeur généraliste. Pas de programmes variés enchaînés, juste une séquence d'étapes figée appliquée à tout ce qui passe devant lui. On dirait aujourd'hui un ordinateur de flux.1

Son mécanisme vaut qu'on s'y attarde, car il annonce le pipeline, avant l'heure. Une paire d'octets est comparée ? La suivante est déjà en train d'être lue. Rien n'attend rien. Le coprocesseur tire deux flux de données, P et Q, dans la mémoire partagée avec Stretch, applique ses opérations, et écrit le résultat en mémoire sous forme d'un troisième flux, R. Chaque flux peut faire de 1 à 8 bits de large, et la mémoire est adressable au bit près : on peut demander exactement 5 bits sans remplir un octet.1

Deux unités fonctionnelles font le travail. La plus simple applique les opérations logiques bit à bit qu'un programmeur reconnaîtrait aujourd'hui. La plus étrange est une unité de recherche en table : elle combine les données de P et Q pour former une adresse mémoire, adresse qui sert à incrémenter un compteur, poser un bit ou relire une valeur stockée. Spectrum compare son rôle au rotor d'une machine à chiffrer de l'époque, ce substitut électromécanique d'une valeur par une autre.1

Frances Allen, future première femme à recevoir le prix Turing en 2006, décrit une machine presque indescriptible : environ sept instructions, des milliers de variantes, et des instructions capables de durer des heures. « Une instruction pouvait faire des tris, et faire de l'analyse statistique des données qui passaient devant elle », raconte-t-elle en 2001.4 Avec un débit d'un octet toutes les 0,3 microsecondes, soit autour de trois millions de caractères par seconde, sur environ 800 kilooctets de mémoire adressable logés dans six bancs de mémoire à tores, immergés dans l'huile pour tenir la chauffe.19

Une anecdote rapportée par l'historien James Bamford dit combien la bête déroutait ses propres propriétaires. Pendant les visites internes, des cadres de l'agence montraient la machine d'un air moqueur : « It's beautiful, but it doesn't work. » Elle fonctionne. Simplement, personne d'autre n'a jamais rien construit de pareil.6

La bibliothèque autonome

Calculer vite, soit. Encore faut-il que les données arrivent. En 1962, le disque dur balbutie, trop cher et trop minuscule pour ces montagnes de texte intercepté. Reste la bande. Avec un twist radical.1

Le système Tractor, IBM 7955, est ce que l'ACM Transactions on Storage reconnaît aujourd'hui comme la première bibliothèque de bandes automatisée de l'histoire : un bras servo robotique parcourt des racks de cassettes, saisit celle qu'il faut, la livre à un lecteur, reprend celle qui a fini. Aucune main humaine entre le job et la donnée.5

Les cassettes, surtout, valent le détour. Imaginez un boombox avant les boombox : deux bobines sous vitre, une poignée, six à sept kilos sur la balance, l'équivalent d'une boule de bowling. Dedans, 550 mètres de bande large de 1,75 pouce, environ 120 mégaoctets. Jusqu'à 160 cassettes par meuble de stockage.15

Un technicien IBM tient une cassette de bande Tractor devant des meubles de lecteurs
Une cassette Tractor : deux bobines, 6 à 7 kg, 550 mètres de bande, environ 120 Mo.IBM, via IEEE Spectrum

Au lancement, trois meubles automatiques desservent six lecteurs, soit 44 gigaoctets accessibles en ligne.7 Pour mesurer le fossé : le disque IBM 2314 annoncé en 1965, l'un des plus gros du marché, offre 233 mégaoctets sur huit lecteurs. La bibliothèque de bandes de la NSA embarque environ 190 fois plus de données accessibles, quatre ans avant.1

Le rythme est calé sur l'appétit de la machine. La bande défile à 6 mètres par seconde, trop vite pour l'œil. Passer d'une cassette à la suivante prend environ 18 secondes quand elle est déjà sortie du rack et prête à monter.1 Et le système tourne ainsi 24 heures sur 24, sept jours sur sept : Tractor sert à la fois de stockage permanent, où relire des fichiers anciens, et de mémoire de travail géante pour les jobs en cours. Dans un centre de calcul classique de 1962, « données disponibles » signifie des étagères de bobines qu'un opérateur va chercher une par une.1

Un dernier détail opérationnel dit beaucoup : à côté de Tractor, le système garde de vulgaires lecteurs de bande à bobines ouvertes, branchés sur Stretch. Tous les imports et exports passent par là, faute d'autre voie pratique pour faire entrer ou sortir un gros jeu de données.1 Même la bibliothèque la plus automatisée du monde a besoin d'une porte battante.

Il faudra attendre 1987 et le StorageTek 4400 pour qu'une bibliothèque de bandes automatisée connaisse un succès commercial, avec ses silos robotiques et son concept de stockage « nearline ». Entre Tractor et cette adoption générale, il s'écoule une trentaine d'années. Un seul exemplaire du système original sera jamais construit.5

La lignée ne s'est pas arrêtée là. Les bibliothèques modernes montent à des dizaines de milliers de slots et plus de cent lecteurs par système, et l'article de l'ACM consacre encore ses sections finales aux cas d'usage d'archive de la bande : soixante ans après Tractor, le même support reste la réponse économique au même problème, garder énormément de données accessibles sans payer le prix du disque.5 Le mécanisme change, le raisonnement non.

Dire l'inconnu

Restait un problème que rien dans le matériel ne réglait : comment dire à une machine de flux ce qu'un cryptanalyste cherche ? Réponse conjointe d'IBM et de la NSA : un langage dédié, baptisé Alpha. Selon une histoire du Pentagone déclassifiée, l'acronyme signifie Advanced Language for Programming Harvest. Frances Allen, qui fut l'un des développeurs du compilateur et passa environ un an sur place à l'installation, se souvient pour sa part qu'Alpha « ne voulait rien dire ». La divergence entre documents et souvenirs fait partie du dossier.14

Le langage laisse le programmeur définir l'alphabet dans lequel la donnée sera traitée, et introduit deux caractères sans équivalent dans l'informatique civile de l'époque. Le « scab », tapé comme un point d'interrogation sur la console, désigne un caractère réel mais inconnu. Le « pad », un espace, marque un vide assumé. Des règles gouvernent la propagation de ces inconnues dans les calculs, sur le modèle de ce que l'informatique appellera bien plus tard NaN. On agrège les chaînes en cords, les cords en ropes, une hiérarchie de vocabulaire pour décrire des intercepts complexes.1

Portrait noir et blanc de Frances Allen à son bureau, chemise rayée
Frances Allen, développeuse du compilateur et liaison avec la NSA sur le langage Alpha, prix Turing 2006.IEEE Spectrum

Allen raconte aussi le secret vu de l'intérieur, et il était total. Quand elle commence, la NSA n'existe pour ainsi dire pas hors des cercles classifiés. « Nous nous pensions employés par le Bureau of Ships, parce que c'était le nom de code de la NSA dans le budget ! »4 À la fin du projet, elle écrit le rapport technique final de sa partie du logiciel, plusieurs mois de travail. Il disparaît immédiatement dans les archives de Fort Meade, inaccessible même pour son auteure. Les gens de la NSA développeront ensuite leur propre langage successeur, Beta, sans IBM.4

Un opérateur tape sur une machine à écrire Selectric détournée en console, équipement informatique en arrière-plan
La console principale d'Harvest est une IBM Selectric détournée : le « scab » d'Alpha se tape comme un point d'interrogation.IBM, via IEEE Spectrum

Onze millions de messages

Alors, en vrai, ça donnait quoi ? Les cas documentés sont rares, mais leur échelle parle d'elle-même. Bamford en rapporte un où la machine fouille 3,5 milliards de caractères à la recherche de 7 000 termes cibles. Un peu moins de quatre heures.6

Robert Looney, analyste de l'agence, décrit dans des propos non classifiés de 1972 un travail nommé « Moretown » : onze millions de messages couvrant seize ans de trafic intercepté, confrontés à une liste d'environ 8 000 termes de recherche, en une dizaine d'heures.1 En 1971, la machine tourne à 115 heures de production par semaine, plus des deux tiers du temps. Depuis 1967 pourtant, le nombre de jobs baisse : le travail courant migre vers des machines généralistes plus modernes, et Harvest garde les chantiers que personne d'autre ne peut porter.1

Destin singulier : la machine devient irremplaçable parce qu'elle est inutile au commun des travaux. Looney conclut à l'occasion du dixième anniversaire qu'Harvest est « conceived in the fifties, born in the sixties, and irreplaceable in the seventies ». Il se trompe sur la dernière partie.1

Morte d'une pièce

Le 27 février 1976, les opérateurs arrêtent définitivement la machine. La cause tient en une phrase : un composant mécanique custom de la bibliothèque Tractor est usé, et son fabricant a disparu. IBM déclinera de refaire l'architecture en technologie moderne. Quatorze ans de service, terminés par une pièce de rechange introuvable.19

Quelqu'un à l'agence décide de commémorer la machine par un faux télégramme rédigé en son nom, conservé aujourd'hui dans les archives de l'agence : « Bien que je ne sois pas très connu, j'étais probablement le plus grand, le plus rapide et le plus avancé techniquement des systèmes informatiques au monde. Et maintenant, quatorze ans plus tard, l'heure de la retraite a sonné. »1

Plaque de bois avec plaque de bronze gravée « Site of the Harvest computer system, 1962-1976 »
La plaque commémorative du démantèlement, au siège de la NSA à Fort Meade.National Cryptologic Museum, via IEEE Spectrum

Qui prend la suite ? Un Cray-1. Et le raisonnement du remplacement en dit presque plus long que celui de la construction : le Cray, pensé pour le calcul numérique, se vend assez largement pour financer son entretien et son évolution. Le matériel textuel sur mesure d'Harvest n'a qu'un client. Un seul. Trop peu quand la maintenance finit par coûter plus cher que l'avance technologique qu'elle achète.1

Ce qui a survécu

Le secret a coupé Harvest de toute descendance directe. Aucun constructeur n'a pu s'en inspirer ouvertement, puisque personne ne savait qu'il existait. Mais les idées, elles, ont resurgi.1

La bibliothèque Tractor annonce les silos de stockage robotiques devenus standards des centres de données d'entreprise dans les années 1980.15 L'architecture de pipeline du coprocesseur préfigure le mouvement du dataflow computing des années 80. Et la logique de détection de motifs en continu de ses unités de match trouve des échos directs dans l'inspection matérielle des paquets réseaux, ces détecteurs d'intrusion et commutateurs programmables qui routent aujourd'hui le trafic Internet à vitesse filaire.1

Wikipédia ajoute une trace moins spectaculaire mais révélatrice : le système Harvest-RYE apparaît en 1972 dans une revue comme l'un des deux premiers exemples de tentative de sécurité multi-niveaux, un concept devenu central en sécurité informatique.9

Quant au motif d'ensemble, il est devenu la trame du calcul moderne : un processeur généraliste qui délègue ses charges intensives à un accélérateur spécialisé. CPU et GPU, aujourd'hui, vivent exactement cette relation. Harvest la pratiquait dès 1962, pour une seule mission, et personne ne pouvait même le savoir.1

À prendre, à laisser

Trois leçons survivent, et elles concernent directement ceux qui fabriquent des outils.

La première : le goulot se cachait ailleurs que dans le calcul. IBM a commencé par automatiser la logistique des données, le changement de bande, la mise à disposition ; l'accélération du traitement vient ensuite. Le gain est né des mains humaines supprimées entre deux étapes. Dans un projet actuel, la question équivalente tient en trois mots : quelles mains passent encore entre deux de mes étapes ?

La deuxième : la spécialisation extrême a un coût qui n'apparaît que des années plus tard. Une pièce unique, faite sur mesure par un fournisseur isolé, devient le point de défaillance de tout le système. Quatorze années de service s'arrêtent parce qu'un composant a perdu son fabricant, un point c'est tout. Toute chaîne de production artisanale vit la même tension entre optimisation au millimètre et capacité à réparer.

La troisième concerne la transmission. Alpha, le langage dédié, a permis de décrire rigoureusement des problèmes que personne ne savait formuler autrement, mais le rapport final d'Allen a disparu dans une archive inaccessible et l'architecture n'a jamais été publiée. Une machine secrète ne transmet rien. C'est peut-être la vraie différence entre une prouesse et un procédé : le procédé se transmet, la prouesse se contente d'avoir eu lieu.

Sources et méthode

Les faits de cet article reposent principalement sur le dossier d'IEEE Spectrum signé Peter Capek, ingénieur retraité d'IBM ayant travaillé aux côtés des créateurs d'Harvest, qui synthétise les documents NARA déclassifiés numérisés sur fpgacpu.ca, l'histoire orale de Frances Allen (2001) et les archives du musée cryptologique. Les chiffres de stockage et la qualification de Tractor comme première bibliothèque automatisée proviennent de l'article « Magnetic Tape Storage Technology » de l'ACM Transactions on Storage (2025). Les exemples de jobs viennent de Bamford (2001) et des propos de Robert Looney rapportés par Spectrum. L'exhibit du National Cryptologic Museum cité par l'issue d'origine était inaccessible lors de la vérification (erreur serveur) ; aucun fait ne lui est attribué seul, le pont vers StorageTek étant porté par la source ACM. Les citations sont traduites de l'anglais par nos soins, avec l'original conservé dans les sources.