1 / 7

Programmation graphique du processeur CELL : Faciliter la programmation

Programmation graphique du processeur CELL : Faciliter la programmation. T. Grandpierre. Contexte. 8 cœurs DSP + 2 threads sur le PowerPC Communications par DMA. Problèmes. Découpage (distribution) des tâches sur chaque processeur Allocation mémoire correspondante

emma
Télécharger la présentation

Programmation graphique du processeur CELL : Faciliter la programmation

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Programmation graphique du processeur CELL : Faciliter la programmation T. Grandpierre

  2. Contexte 8 cœurs DSP + 2 threads sur le PowerPC Communications par DMA

  3. Problèmes • Découpage (distribution) des tâches sur chaque processeur • Allocation mémoire correspondante • Programmation des transfers DMA • Génération de code • Exécution • Mesure de performances

  4. Méthodologie de conception Implantation optimisée d’appli. temps réels : Algo. : parallélisme potentiel Archi. : parallélisme disponible Implantation = distribution + ordonnancement + optimisation/estimation de performances + génération (code/config. communications) Contraintes : temps réel, prototypage rapide, hétérogénéité, différents domaines d’expertise Méthodologie Adéquation

  5. processor_( opr1, .) semaphores_(s_empty…) alloc_(type_in/calc...) thread_(comr1a) pre0 (s_empty) loop_ sucF(s_full) send(in/calc) preE(s_empty) endloop_ endthread_ main_ in_ini( ) spawn_thread(com1ra) loop_ sucE(s_empty) in(in/calc) preF(s_full) endloop_ in_end ( ) endmain_ endprocessor_ Algorithmes (Graphe flot de données) Architectures multiprocesseurs (Graphe d’architecture) BIBLIOTHEQUE GENERIQUE D’EXECUTIF BIBLIOTHEQUE GENERIQUE D’EXECUTIF in_ini out_ini processeur1 processeur3 Opr1 processeur2 Opr2 Opr3 loop 2 1 loop loop loop all.Pin RAM D/P RAM D/P RAM D RAM D/P Com1b SAM Com2b all.Pcalc ESPACE MEMOIRE RAM Com1a Com2a Com3a all.Dlo1 all.Dlin in Executable1 all.D_o1o2 all.Dlcalc RAM D all.Dl2 SAM all.Po3 all.Po2 all.Po1 all.Po4 all.D_o2o3 Adéquation (heuristiques distribution ordonnancement) Estimation performances MACRO PROCESSEUR COMPILATEUR RAM D/P all.Dlo3 alias.D_o3o4 all.D_o3o4 send receive all.Dlo4 Opr4 all.Din/calc src 3 retard processeur4 calc all.Din/calc all.Din/calc Executable2 4 filtre adap all.Dcalc/out adap gensig Génération automatique d’exécutifs distribués BIBLIOTHEQUE de macros BIBLIO. De Fonctions out sub filtre all.Pout endloop endloop endloop all.Dlout visu endloop coeff in_end out_end AAA/SynDEx 1 2 3 4

  6. SynDEx

  7. Objectifs • Décrire le processeur CELL dans SynDEx • Enrichir la librairie d’exécutif • Développer une application de test

More Related