Architecture Dataflow - Définition

Source: Wikipédia sous licence CC-BY-SA 3.0.
La liste des auteurs de cet article est disponible ici.

Langages

  • Id a été mis au point à Irvine (Université de Californie), puis au MIT
  • Val au MIT.
  • SISAL (Streams and Iteration in a Single Assignment Language) à l'université de Manchester.

Types de machine

Il existe plusieurs types d'ordinateur flot de données, mais on peut distinguer deux modèles :

  1. le modèle statique : il n'y a qu'un seul jeton sur un arc à un instant donné.
  2. le modèle dynamique : il peut y avoir plusieurs jetons en attente sur un arc.

Des machines hybrides dataflow/von Neumann ont aussi été conçues (MIT P-RISC).

Machines statiques

Rentrent dans cette catégorie la machine conçue par Jack Dennis du Massachusetts Institute of Technology en 1974. La difficulté rencontrée sur cette architecture est la contrainte de n'avoir qu'une seule valeur (jeton) sur un arc à un moment donné (car on ne peut pas faire de différence entre les jetons). Elle est effacée par l'utilisation de jetons de contrôles qui acquiescent la transmission des données d'un nœud à un autre.

Machines dynamiques

Ces machines associent un marqueur (tag), ou une couleur, à chaque jeton. La règle de base est modifiée, et devient : lorsqu'un nœud voit toutes ses entrées satisfaites par des jetons de même couleur, il est activé et produit une valeur en sortie, avec sa propre couleur, et les marqueur et jetons d'entrées sont « effacés ».

L'architecture en est simplifié, et le dépliage des boucles se fait tout seul : il est créé autant de couleurs/jetons que nécessaire.

Exemple : la machine dataflow dynamique de Manchester

Synoptique simplifié de la machine de l'Université de Manchester (1981)

Son architecture simplifiée est représentée par la figure ci à droite. Elle est volontairement simplifiée, mais est tout à fait représentatives des machines de type dynamique. On remarque immédiatement qu'elle est très facilement « pipelinable », ce qui bien sur améliore sensiblement les performances. Il est spécifié en caractères italiques le type de paquets circulant entre deux unités.

Les jetons appartenant à une même instruction sont appairés dans l'unité de correspondance. Ils sont envoyés vers l'unité où sont stockés les instructions, d'où ils chargent les instructions dont ils dépendent. Ces paquets enfin exécutables sont dirigés vers l'unité de calcul qui à la suite de l'exécution de l'instruction reçue en entrée va émettre de nouveaux jetons. L'unité d'entrée/sortie sert à communiquer avec l'ordinateur externe qui contrôle la machine dataflow, par le biais du bus schématisé verticalement, qui permet l'injection de paquets ou bien leur récupération. La file d'attente « jetons » est simplement une mémoire tampon FIFO.

Les jetons sont formés de :

  • 37 bits de données, associées à
  • un marqueur de 36 bits suivi de
  • une adresse de destination sur 22 bit, puis
  • un second marqueur de 1 bit

Étant donné que de larges itérations ou vastes ensembles de données peuvent provoquer un dépassement de capacité (en nombre de jetons), une unité particulière est couplée à l'unité de correspondance pour pallier ce cas.

L'unité de calcul va bien sur contenir plusieurs unités arithmétiques et logiques pour permettre d'exécuter les instructions en parallèle.

Quelques machines

Machines à architecture statique

  • MIT Static Dataflow Architcture, prototype avec 8 processeurs.
  • HDFM, Hughes Dataflow Multiprocessor, 512 processeurs.
  • LAU, TI's Distributed Data Processor, DDM1, etc.

Machines a jetons marqués (architecture dynamique)

  • MIT Tagged-Token Dataflow Machine, 4 processeurs/cluster, les clusters sont interconnectés sur un réseau en boucle.
  • SIGMA-1, superordinateur Japonais, 128 processeurs, 1988.
  • PATTSY, Processor Array Tagged-Token System, système expérimental Australienne. 18 processeurs Intel 8085 reliés à un IBM-PC.
  • DDDP, Distributed Data Driven Processor, conception Japonaise, 16 processeurs.
  • Q-p, SDFA, CSIRAC II, PIM-D etc.

Il est tout à fait possible que le dataflow soit remis au goût du jour sous forme d'un superordinateur.

Page générée en 0.133 seconde(s) - site hébergé chez Contabo
Ce site fait l'objet d'une déclaration à la CNIL sous le numéro de dossier 1037632
A propos - Informations légales
Version anglaise | Version allemande | Version espagnole | Version portugaise