Contexte


L’évolution de l’informatique durant ces dernières années a changé profondément notre vision de l’utilisation des systèmes informatiques, de leur programmation et du calcul. La taille et la complexité des applications ou des problèmes ont conduit à une quête aux hautes performances de traitement qui a imposé le concept de parallélisme dans les architectures de processeurs et de machines. Ce phénomène est visible partout : des supercalculateurs, jusqu’ aux stations de travail et PC portables. Actuellement, l’architecture des processeurs est en général basée sur l’utilisation de plusieurs cœurs et les unités spécialisées comme les cartes graphiques, où GPU, peuvent être utilisées à des fins de calcul généraliste avec parfois des accélérations importantes. Simultanément, les technologies réseaux ont connu un essor important, le calcul parallèle et le calcul distribué ont convergé et des concepts nouveaux comme les clusters ou les réseaux pair à pair sont apparus.