Changes between Version 9 and Version 10 of AS6-TME-B8


Ignore:
Timestamp:
May 7, 2024, 1:33:08 PM (13 months ago)
Author:
franck
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • AS6-TME-B8

    v9 v10  
    4747Pas de question de cours cette fois. Je vais vous demander de lire et de commenter dans le compte-rendu les codes proposés.
    4848
    49 -- 01_sequentiel
     49== 01_sequentiel
    5050
    51 [[Image(htdocs:img/image-seq.png,nolink,left,height=230)]]
     51[[Image(htdocs:img/image-seq.png,nolink,center,height=300)]]
    5252
    5353
    5454Dans cette version, il n'y a pas d'OS, tout est fait dans la fonction `kinit()`
    5555Les trois étapes (lecture disque, traitement, affichage) sont faites séquentiellement
     56
     57**Questions**
    5658
    5759 - Ouvrez le code pour voir la boucle de traitement.
     
    6264
    6365
    64 -- 02_parallel
     66== 02_parallel
    6567
    66 [[Image(htdocs:img/image-parallel.png,nolink,left,height=230)]]
    67 
     68[[Image(htdocs:img/image-parallel.png,nolink,center,height=230)]]
    6869
    6970Dans cette version, les trois étapes sont faites en parallèle sous la forme d'un pipeline avec deux couples de buffer utilisés en altenance.
    7071
     72{{{
    7173 - Disk->BD->BUFIN[0]
    7274 - Disk->BD->BUFIN[1] & BUFIN[0]->CPU->BUFOUT[O] 
     
    7880 - Disk->BD->BUFIN[1] & BUFIN[0]->CPU->BUFOUT[0] & BUFOUT[1]->DMA->FBF
    7981 - etc.
     82}}}
    8083
    81 Questions
     84**Questions**
     85
    8286 - Qu'est ce qu'on gagne à procéder ainsi ?
    83  - Est-ce qu'on peut gagner plus ?
     87 - Est-ce qu'on peut gagner plus et si oui comment faire (en supposant qu'on a plusieurs processeurs dans le SoC).
    8488
    85 ## 03_multicore
     89== 03_sdl
    8690
    87 Dans cette version, on utilise plusieurs cores pour faire le calcul en parallèle
     91Le code ici utilise la version de ko6 vue dans les TP précédents.
    8892
    89 - Que peut-on espérer gagner ?
    90 - Utilisez de 1 à 8 cores et tracer une courbe de speedup ? Qu'en concluez-vous ? (notez que la simulation se fige acutuellement mais je n'ai pas eu le temps de débugger...)
    91 - Expliquez le rôle de la variable working.
    92 - Retirez l'invalidation du cache de la fonction compute(), observez et expliquez.
    93 - Pourquoi certaines parties ne doivent être traitées que par le CPU 0 ?
     93{{{
    9494
     95}}}
     96
     97