X-Kaapi : Une nouvelle implémentation eXtrême du vol de travail
Abstract
Les processeurs multicœurs sont dorénavant des composants standards grand public que l'on retrouve dans un large spectre de machines, du lecteur de DVD incluant un MpSOC, au nœud de calcul des super-calculateurs, en passant par le processeur de la plupart des portables. Dans ce papier nous considérons l'implémentation d'un protocole de vol de travail original pour ordonnancer des applications parallèles sur architecture multicœur. Nous analysons les facteurs introduisant un surcoût à l'exécution et nous en dérivons une implémentation présentée à travers une interface de programmation. Le protocole utilise une coopération entre les voleurs et une victime, ce qui améliore à la fois les surcoûts d'implantation et les surcoûts dûs à la restructuration du code des algorithmes parallèles. Nos expériences préliminaires montrent qu'il est possible d'obtenir une implémentation ultra-légère possédant un surcoût à l'exécution extrêmement faible pour des algorithmes à grain fin. Cette proposition d'interface constitue le cœur du nouveau moteur exécutif de Kaapi appelé X-Kaapi.