12.07.2015 Views

Algorithmes de la morphologie mathématique pour - Pastel - HAL

Algorithmes de la morphologie mathématique pour - Pastel - HAL

Algorithmes de la morphologie mathématique pour - Pastel - HAL

SHOW MORE
SHOW LESS
  • No tags were found...

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

<strong>Algorithmes</strong> <strong>de</strong> <strong>la</strong> <strong>morphologie</strong> <strong>mathématique</strong> <strong>pour</strong> les architectures orientées fluxJaromír BRAMBORbloquéactifTempsProcessus no. 1Processus no. 2Processus no. 3(a) Multiprocessing sur un processeurTempsProcessus no. 1Processus no. 2Processus no. 3(b) Multiprocessing sur plusieurs processeurs, les processus sont exécutés concurremmetFIG. 3.14 : Exécution <strong>de</strong> plusieurs processus sur les architectures différentes (selon Stallings Sta06 )Si les fils peuvent être exécutés en même temps, nous parlons du multithreading simultané (SMT).Sur les architectures où l’aspect parallèle d’exécution est présent et qui peuvent <strong>la</strong>ncer plusieurs instructions<strong>de</strong> plusieurs fils d’exécution, nous parlons du Chip-level MultiThreading (CMT). Si plusieursprocesseurs sont intégrés dans une seule puce, nous parlons <strong>de</strong> multiprocessing au niveau <strong>de</strong> <strong>la</strong> puce(CMP) ou <strong>de</strong> plusieurs cœurs (angl. multicore).La sauvegar<strong>de</strong> <strong>de</strong> l’état d’un fil d’exécution suivie par <strong>la</strong> restauration <strong>de</strong> l’état d’un autre fil qui <strong>pour</strong>suivral’occupation <strong>de</strong>s ressources communes lors <strong>de</strong> l’exécution concourante est nommée le changementdu contexte. Il peut être moins coûteux, mesuré par <strong>la</strong> durée <strong>de</strong> ce changement, sur les architectures quipartagent certaines ressources matérielles comme <strong>la</strong> mémoire cache, par exemple. C’est souvent le cas<strong>pour</strong> le multithreading simultané dans les applications multimédia.3.4.3.3 Architectures à fils d’exécutionLes architectures matérielles se sont adaptées à cette façon <strong>de</strong> travailler et ont procédé aux améliorationsen éliminant progressivement les goulots d’étranglement qui freinaient les applications logicielles<strong>de</strong> ce type.Dans un premier temps, l’effort s’est concentré sur les unités <strong>de</strong> préparation d’exécution <strong>de</strong>s instructions.Ces unités travaillent en pipeline qui peut être re<strong>la</strong>tivement long 1 . Durant le travail avec lesthreads, le changement du contexte provoque le vidage <strong>de</strong> ce pipeline et un nouveau remplissage parl’état restauré appartenant au nouveau thread. Ce qui cause, en effet, <strong>la</strong> perte du temps. Cette perte est directementproportionnée, à travers les cycles d’horloges nécessaires <strong>pour</strong> remplir le pipeline à nouveau,à <strong>la</strong> longueur <strong>de</strong> ce pipeline et à <strong>la</strong> fréquence <strong>de</strong> changements <strong>de</strong>s contextes. Ce qui défavorise fortementles applications travail<strong>la</strong>nt fréquemment avec les threads. Pour diminuer cette perte, <strong>la</strong> solution setrouve dans <strong>la</strong> multiplication du nombre <strong>de</strong> ces pipelines. Les processeurs qui ont adopté cette solutionimplémentent, en effet, le multithreading simultané. La technologie <strong>de</strong> ce type développée par Intel estnommée Hyper-Threading Technology MBH+ 02 .La fig. 3.15 présente le schéma <strong>de</strong> <strong>la</strong> structure d’une telle architecture. Remarquons que ces technologies,que nous c<strong>la</strong>ssons sous CMT, ne sont pas <strong>de</strong>stinées uniquement aux processus légers maisexploitent aussi bien le parallélisme <strong>de</strong>s processus distincts lors d’un travail multitâche.Les solutions récentes utilisent cette idée et ont aussi étendu <strong>la</strong> multiplication matérielle aussi auxunités centrales entières. C’est ainsi que nous avons aujourd’hui à notre disposition les architectures à1Tejas, le prototype du successeur du Intel Pentium 4, dont le développement a été abandonné, possédait un pipeline <strong>de</strong> 31phases FH05 48

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!