Cray-1

Le Cray-1 était un ordinateur géant conçu par une équipe comprenant le Seymour Cray pour la recherche de Cray de . Le premier système Cray-1 a été installé au laboratoire national de Los Alamos dans le 1976 , et il a continué pour devenir l'un des ordinateurs géants les plus connus et les plus réussis dans l'histoire.

Histoire

Dans le d'années 1968 au 1972 Cray fonctionnait aux paramètres sur une nouvelle machine connue sous le nom de CDC 8600 , le successeur logique de de sa CDC plus tôt 6600 et conceptions de la CDC 7600 . Les 8600 se sont essentiellement composés de quatre 7600s dans une boîte, avec un mode spécial additionnel qui leur a permis d'actionner la Serrure-étape d'une mode du SIMD .

Jim Thornton, autrefois associé de la technologie de Cray sur de premières conceptions, avait lancé un projet plus radical connu sous le nom de CDC STAR-100 . À la différence de l'approche de la force brutale 8600's à l'exécution, l'ÉTOILE a pris un itinéraire entièrement différent. En fait le processeur principal de l'ÉTOILE a eu moins d'exécution que les 7600, mais matériel additionnel supplémentaire et instructions d'accélérer en particulier des tâches communes d'ordinateur géant.

Dans le 1972 les 8600 avaient atteint un cul-de-sac. La machine était tellement incroyablement complexe qu'il était impossible d'obtenir à on fonctionnant correctement ; même un composant défectueux simple rendrait la machine non-operational. Cray est allé au William Norris , le PRÉSIDENT des paramètres, dire qu'une conception à partir de zéro était nécessaire. Lorsque la compagnie était dans l'ennui financier sérieux, et avec l'ÉTOILE dans la canalisation aussi bien, Norris simplement ne pourrait pas investir l'argent. Commençant de nouveaux yards d'un QG de compagnie seulement du laboratoire de CDC, tous les deux en arrière cour de terre qu'il a achetée en quelques automnes de Chippewa de , WI , lui et un groupe d'anciens employés de CDC commencés rechercher des idées. Au début le concept de construire un autre ordinateur géant a semblé impossible ; si la CDC ne pourrait pas l'avoir les moyens, comment a-t-elle osé une compagnie minuscule sans le placement ? Mais après que le CTO ait voyagé au Wall Street et ait trouvé une ligne des investisseurs davantage que voulant soutenir Cray, tout qui était nécessaire était une conception.

Dans le 1975 les 80 mégahertz Cray-1 ont été annoncés. L'excitation était si haute qu'une guerre d'offre pour la première machine ait éclaté entre le laboratoire national de Lawrence Livermore de et le laboratoire national de Los Alamos , ce dernier par la suite gagnant et recevant le numéro de série 001 de 1976 pour une épreuve de six mois. Le centre national de pour la recherche atmosphérique (NCAR) était officiel 1977 du client des recherches de Cray le premier en juillet, payant US$8.9 millions plus $1 millions pour les disques). La machine de NCAR était en janvier le désarmé 1989 . La compagnie attendue vendre peut-être une douzaine des machines, mais plus de quatre-vingts Cray-1s de tous les types ont été vendues, évalué de $5M à $8M. Le Cray fait à la machine une célébrité et la compagnie un succès, durant jusqu'à l'accident d'ordinateur géant au début des années 90.

Le Cray-1 a été réussi au 1982 par 800 le Cray X-MP , le premier ordinateur du MFLOPS de multitraitement de Cray. Dans 1985 le très avancé Cray-2 , capable de 1.9  ; Exécution maximale de GFLOPS, réussie les deux premiers modèles mais rencontrée un succès commercial légèrement limité en raison de certains problèmes à produire l'exécution soutenue dans des applications réelles. Un successeur évolutionnaire plus conservativement conçu des modèles de Cray-1 et de X-MP a été donc fait, par le nommé Cray Y-MP , et lancé dans le 1988 .

Fond

Les charges de travail scientifiques typiques se composent lire dans de grands ensembles de données, les transformant d'une manière quelconque, et alors écrivant ils soutiennent encore. Normalement les transformations étant appliquées sont identiques à travers tous les points de repères dans l'ensemble. Par exemple, le programme pourrait additionner 5 à chaque nombre dans un ensemble de million de nombres. Dans des ordinateurs traditionnels le programme ferait une boucle au-dessus de chacun des million de nombres, additionnant cinq, produisant de ce fait de million d'instructions indiquant que le a = ajoutent b, c. Intérieurement l'ordinateur résout cette instruction dans plusieurs étapes. D'abord il lit l'instruction de la mémoire et la décode, puis il rassemble n'importe quelles informations supplémentaires qu'il a besoin, dans ce cas-ci les nombres b et c, et finalement puis court l'opération et stocke les résultats.

Machines de vecteur

Dans l'ÉTOILE, les nouvelles instructions ont essentiellement écrit les boucles pour vous. L'utilisateur a dit la machine où dans la mémoire le " ; grande liste de numbers" ; a été stocké, et a puis chargé un a simple d'instruction (1.1000000) = l'addv b (1. Au premier regard il est évident que l'épargne est limitée ; dans ce cas-ci la machine cherche et décode seulement une instruction simple au lieu de 1000000, sauvant de ce fait 1000000 efforts et la décode, peut-être ¼ du temps global.

Mais la vraie épargne n'est pas aussi évidente. Intérieurement l'unité centrale de traitement du de l'ordinateur est accumulée d'un certain nombre de pièces consacrées à une tâche simple, par exemple, ajoutant un nombre ou cherchant de la mémoire. Normalement car l'instruction traverse la machine seulement une part est en activité à tout moment, signifiant que le processus entier doit accomplir avant qu'une valeur soit écrite. Mais l'addition d'une canalisation d'instruction de change ceci, dans de telles machines que l'unité centrale de traitement " ; " de lecture anticipée ; et début cherchant les prochaines instructions tandis que la première toujours est en cours de travail dessus. Dans cette chaîne de montage de mode de que n'importe quelle une instruction prend toujours en tant que longtemps au processus, mais dès qu'on accomplira le prochain déjà est presque faite.

Utilisation des processeurs de vecteur de cette technique avec un " additionnel ; trick" ;. Puisque l'implantation de données est " ; known" ; , fondamentalement un ensemble de nombres a arrangé linéairement dans la mémoire, les canalisations peut être accordé pour améliorer l'exécution des efforts. À la réception d'une instruction de vecteur, le matériel spécial a installé l'accès mémoire pour les rangées et bourre les données dans le processeur aussi rapidement comme possible.

L'approche de la CDC dans l'ÉTOILE a employé ce qui est aujourd'hui connu comme architecture de mémoire-mémoire de . Ceci s'est rapporté à la manière les données recueillies par machine, installant sa canalisation pour lire et écrire à la mémoire directement. Ceci lui a permis d'employer des vecteurs de toute longueur ou largeur (ou pas de pendant qu'on le connaît), le rendant fortement flexible. Malheureusement la canalisation a dû être très " ; deep" ; afin de permettre à lui d'avoir assez d'instructions de compenser en vol la mémoire lente, et à cela a signifié que la machine a eu un coût très élevé en commutant de traiter des vecteurs aux données normales. En plus le " lent ; normal" ; l'exécution de la machine a signifié qu'après que le commutateur ait eu lieu et la machine était des instructions de logique typiques courantes, l'exécution était tout à fait pauvre. Le résultat était exécution réelle plutôt décevante, quelque chose qui pourrait avoir été évidente a eu les concepteurs considérés la loi d'Amdahl de .

L'approche de Cray

Cray pouvait regarder l'échec de l'ÉTOILE et apprendre de lui. Il a décidé qu'en plus du vecteur rapide traitant, sa conception exigerait également l'excellente exécution d'ensemble de logique aussi bien. De cette façon quand la machine a commuté des modes, c'était toujours la sortie la plus rapide là. En plus ils ont noté que les charges de travail pourraient être spectaculairement améliorées dans la plupart des cas par l'utilisation des registres .

Juste comme les premières machines avaient ignoré le fait que la plupart des opérations étaient appliquées à beaucoup de points de repères, l'ÉTOILE a ignoré le fait que ces mêmes points de repères seraient à plusieurs reprises opérés. Considérant que l'ÉTOILE lirait et traiterait la même mémoire cinq fois d'appliquer cinq opérations de vecteur sur un ensemble de données, elle serait beaucoup plus rapide pour les lire dedans une fois et pour appliquer chacune des cinq opérations tout en se reposant dans des registres de l'unité centrale de traitement. Les registres sont extrêmement chers en termes de circuits ainsi seulement ainsi beaucoup pourraient être fournis, signifiant que la conception de Cray aurait moins de flexibilité en termes de tailles de vecteur. Au lieu d'indiquer n'importe quel vecteur classé plusieurs fois aussi dans l'ÉTOILE, dans la conception de Cray la machine devrait indiquer de petites parties des données à la fois, mais d'autre part court plusieurs opérations immédiatement. Les charges de travail typiques données, Cray ont estimé que la petite perte due à doit mémoire d'accès dans les étapes était un puits de coût intéressant le paiement.

Puisque l'opération de vecteur typique impliquerait de charger un petit ensemble de données dans les registres de vecteur et puis de courir plusieurs opérations là-dessus, le système de vecteur de la nouvelle conception a eu sa propre canalisation séparée. Par exemple, la multiplication et les unités d'addition ont été mises en application en tant que matériel séparé, ainsi les résultats d'un pourraient être intérieurement canalisés dans le prochain, l'instruction décodent déjà l'manipulation dans la canalisation principale de la machine. Cray s'est rapporté à ce concept comme enchaînant , en tant que lui a permis des programmeurs au " ; together" à chaînes ; plusieurs instructions et performance d'extrait plus haute.

Description

La nouvelle machine était la première conception de Cray pour utiliser les circuits intégrés (IC) de . Bien que les IC aient été disponibles depuis les années 60, c'était seulement au début des années 70 qu'ils ont atteint l'exécution nécessaire pour des applications à grande vitesse. Le Cray-1 a employé seulement 4 types différents d'IC, une porte NON-ET duelle d'ECL (4 + 5 entrés entrés, chacun avec le rendement différentiel), une porte NON-ET différente de MECL 4/5 plus lent utilisée pour la sortance d'adresse, (6 NS) une MÉMOIRE RAM 16x1 statique à grande vitesse utilisée pour des registres, et un 1k X 1 RAM de la charge statique 50 NS utilisé pour de mémoire centrale. En tout, le Cray-1 a contenu environ 200.000 portes, rudement les mêmes que le Intel 386 des années 80.

Des IC ont été montés sur les grandes cartes électronique de de cinq-couche avec jusqu'à 144 IC par conseil. Des conseils ont été alors montés de nouveau au dos pour se refroidir (voient ci-dessous) et placé dans vingt-quatre 28 avancer les hauts supports contenant 72 double-conseils. Le module typique (unité de traitement distincte) a exigé un ou deux conseils. Dans toute la machine contenue 1.662 modules dans 113 variétés.

Un problème découvert pendant la conception initiale était que la vitesse de fonctionnement de la machine était assez proche des temps de signal sur les panneaux - une caractéristique de conception délibérée que des ondes stationnaires pourraient être installées dans certains des circuits électriques. Ceci a signifié que le signal pourrait arriver à sa destination IC à un " ; bas point" ; dans l'onde stationnaire, le rendant difficile à détecter. Ce problème a été résolu en ajoutant de légers retards dans le circuit, en plaçant le clinquant près des traces pour ajouter un peu de capacité, ou en ajoutant alternativement des IC additionnels aux clous du signal. Une partie estime le déclarer qui environ 40% des portes dans la machine étaient là simplement d'ajouter le retard et pour nettoyer le signal.

En tant que toujours, Cray a passé un temps considérable sur la conception mécanique et électrique du système, améliorant l'exécution par des durées de cycle raccourcies. Des modules ont été câblés entre eux avec les circuits de haute puissance pour ramener les effets du bruit, permettant les récepteurs au " ; settle" ; plus rapidement. Chaque câble entre les modules a été fait en torsadé, et coupe aux longueurs très spécifiques afin d'éviter des réflexions électriques. Chaque amplificateur était équilibré, ainsi si un fil était mis à la puissance élevée un autre a été abaissé, rendant de ce fait la demande sur l'alimentation d'énergie constante et évite le bruit de commutation.

Tous ces circuits de haute puissance produisent de la chaleur considérable, et comme toujours les concepteurs de Cray ont consacré autant effort sur le système de réfrigération que le reste de la conception mécanique. Dans ce cas-ci chaque carte a été appareillée avec une seconde, placée de nouveau au dos avec une feuille de cuivre entre eux. La feuille de cuivre a conduit la chaleur aux bords du camp, où fréon liquide fonctionnant dans des pipes l'a dessiné loin au dispositif de refroidissement au-dessous de la machine. Le premier Cray-1 a été retardé six mois de dû aux problèmes dans le système de refroidissement ; le lubrifiant qui est normalement mélangé à du fréon pour garder le fonctionnement de compresseur coulerait par les joints et enduit par la suite les conseils de l'huile jusqu'à ce qu'ils aient court-circuité dehors. De nouvelles techniques de soudure ont dû être employées pour sceller correctement la tuyauterie.

Afin d'extorquer chaque once possible de vitesse hors de la machine, le châssis entier a été plié dans une grande C-forme. des parties Vitesse-dépendantes du système ont été placées sur le " ; edge" intérieur ; du châssis où les fil-longueurs étaient plus courtes. Ceci a accordé la durée de cycle être diminué à NS 12.5 (80 mégahertz), pas aussi rapidement que les 8 NS 8600 qu'il avaient abandonné dessus, mais jeûner assez pour battre sa CDC plus tôt 7600 et l'ÉTOILE de . NCAR a estimé que la sortie globale sur le système était 4.

Le Cray-1 a été construit comme système 64-bit, un départ au 7600/6600 qui était 60 matériels travaillant au niveau du bit (un changement également prévu pour les 8600). L'adressage était 24 bits, pour un maximum de 1 megaword (mb 8) de mémoire centrale. De la mémoire a été écartée à travers 16 banques, chacune avec une durée de cycle de 50 NS, permettant à jusqu'à quatre mots d'être lus par cycle.

L'ensemble de registre principal s'est composé de huit registres 64-bit de la grandeur scalaire (s) et huit 24 adresses de bit (a) s'enregistre. Ceux-ci ont été soutenus par un ensemble de soixante-quatre registres chacun pour la mémoire temporaire de S et d'A connue sous le nom de T et B respectivement, qui ne pourraient pas être vus par les unités fonctionnelles. Le système de vecteur a ajouté encore mot huit 64 par les registres 64-bit du vecteur (v), comme un masque de longueur (VL) de vecteur et de vecteur (VM). Enfin le système a également inclus une horloge 64-bit et quatre amortisseurs d'instruction 64-bit qui ont tenu soixante-quatre instructions de 16 bits chacune. Le matériel a été installé pour permettre aux registres de vecteur d'être alimenté à un mot par cycle, alors que les registres d'adresse et de grandeur scalaire exigeaient deux. En revanche, l'amortisseur d'instruction entier de seize-mot a pu être complétés des cycles à quatre temps.

Le système a employé douze unités fonctionnelles, mais avait limité le parallélisme. Il pourrait chercher une instruction par rhythme dans les unités, mais les opère en parallèle et retirerait deux. Son exécution théorique était ainsi de 160 MIPS (instructions de de × 2 de 80 mégahertz), bien qu'il y ait eu quelques limitations qui ont fait à exécution de la virgule flottante le megaflops de généralement environ 136 . Cependant, en employant des instructions de vecteur soigneusement et en construisant les chaînes utiles, le système a pu faire une pointe au megaflops 250.

Puisque la machine a été conçue pour opérer de grands ensembles de données, la conception a également consacré les circuits considérables à l'entrée-sortie . Les premières conceptions de Cray à la CDC avaient inclus les ordinateurs séparés consacrés à cette tâche, mais ceci n'était nécessaire plus. Au lieu de cela le Cray-1 a inclus quatre 6 - les contrôleurs de la Manche de qui a été donné à accès par le passé au chaque de mémoire centrale des cycles à quatre temps. Les canaux étaient 16 bits au loin, et inclus 3 bits et quatre de commande pour de correction d'erreurs, ainsi la vitesse maximum de transfert était 1 mot par 100 NS, ou mots 500K par seconde pour la machine entière.

Le modèle initial, le Cray-1A , pesé 5.5 tonnes comprenant le système de réfrigération de Fréon . Configuré avec 1 million de mots de RAM, la machine et ses alimentations d'énergie ont consommé environ 115 kilowatts de puissance ; refroidissement et stockage probablement plus que doublé cette figure. Une supernova S/200 de Data General a été généralement employée comme " ; end" avant ; pour introduire des instructions de commande dans la machine, plus tard remplacée par l'éclipse .

Le postérieur Cray-1S a eu légèrement plus rapidement clockspeed de NS 12.0, et de mémoire centrale dans les tailles de 1, 2 et 4 millions de mots. Les machines de Data General ont été remplacées par une conception de 16 bits interne fonctionnant à 80 MIPS. Le système d'entrée-sortie a été séparé de la machine principale, reliée au système principal par l'intermédiaire d'un mb 6 par le deuxième canal de contrôle et d'un mb 100 par voie de transmission de données à grande vitesse de seconde. Cette séparation a fait le ressembler 1S au " deux ; demi de crays" ; séparé par quelques pieds, qui ont permis au système d'entrée-sortie d'être augmenté comme nécessaires. Des systèmes ont pu être achetés dans une série de configurations du S/500 sans l'entrée-sortie et le M-mot de ½ de la mémoire, au S/4400 avec 4M-words et 4 processeurs d'entrée-sortie.

Le Cray 1-S lui-même a été remplacé par le Cray-1M , le M indiquant qu'il a utilisé MOS moins cher - RAM basé de dans le système d'entrée-sortie. Le 1M a été fourni dans seulement trois versions, le M/1200 avec 1M-word à 8 banques, ou le M/2200 et le M/4200 avec 2 ou 4M à 16 banques. Toutes ces machines ont inclus deux, trois ou quatre processeurs d'entrée-sortie, et le système a ajouté une deuxième voie de transmission de données à grande vitesse facultative. Les utilisateurs pourraient également ajouter un dispositif de stockage à semi-conducteur, un disque virtuel , avec 8 à 32M-words de MOS-RAM.

Logiciel

Dans le 1978 , le premier logiciel standars pour le Cray-1 a été libéré, se composant de trois produits principaux :
Cray du système d'exploitation (COS) (les machines postérieures courraient la saveur d'UNIX du UNICOS , du de Cray),
Langage assembleur de Cray (calorie), et
Fortran (TFC), le premier compilateur vectorizing automatiquement de Cray de de Fortran

Comparaison avec les PC-processeurs modernes

À partir de 2007, les processeurs de PC les plus rapides exécutent plus de 40 GFLOPS, plus de 130 fois plus rapidement que Cray-1.

D'autres images du Cray-1

.

Random links:380 AVANT JÉSUS CHRIST | Technologies d'Allegheny | Placement public | Philippe Henri, marquis de Ségur | Mis (bande) | Cray-1