Français Anglais
Accueil Annuaire Plan du site
Accueil > Evenements > Séminaires
Séminaire d'équipe(s) Parallel Systems
Milieu de calcul générique
Frédéric Gruau

29 April 2014, 10:30 - 29 April 2014, 11:30
Salle/Bat : 465/PCRI-N
Contact : Frederic.Gruau@lri.fr

Activités de recherche : High-performance computing

Résumé :
On souhaite réaliser du calcul générique, sur un hardware composé d'un même élément de calcul, réparti de facon homogène dans l'espace, et communiquant localement. La localité et le grain fin permettent une scalabilité arbitraire, mais rendent la programmation générique directe impossible.
La programmation générique d'un milieu de calcul peut néanmoins s'obtenir via l'installation d'une machine virtuelle intermédiaire permettant de développer des réseaux d'agents . Un agent crée deux agent, puis 4 et ainsi de suite. Chaque agent est représenté par une région entière de l'espace disponible. La création d'un agent à partir d'un autre se fait en divisant sa région. Au fur et a mesure du développement, les frontières entre régions se ré-équilibre pour maintenir une répartition homogéne. Plus grand devient le réseau, plus petite deviennent les régions représentant chaque agent. Le développement spécifie aussi les connexions entre agents. Deux agent peuvent être connectés et communiquer, seulement si leur régions sont voisines sur le hardware. En particulier si le hardware est 2D, le réseau doit avoir un graphe planaire.
Programmer en utilisant un réseau auto-développant est un exercice nouveau, et amusant. Il ne faut pas seulement spécifier un circuit de donnée, mais également comment développer ce circuit. Il nécessite de prévoir à l'avance quel vont être les trajectoires des données, pour développer le réseau apte à les supporter. Chaque agent doit rester léger car son support se déplace sans cesse ; On suppose qu'il ne peut stoker pas plus qu'un seul scalaire, le développement est donc indispensable pour un calcul non trivial. Par exemple le tri de $n$ scalaire nécessite $n$ agents pour les stoker. Nous donnerons deux exemples de programmes auto-développant : le tri et le produit de matrices ;
L'aboutissement du projet doit permettre d'obtenir des performances théoriques optimales pour ces deux problèmes, sur des support hardware arbitrairement grands. Cela passe cependant par une phase de mise au point difficile : La simulation de la machine virtuelle d'auto développement nécessite la mise en place de règles d' automates cellulaires complexes, de plusieurs centaine de bits, et milliers de portes. L'automate est organisé en une hiérarchie de nombreuses couches programmée orienté objet. Nous en présenterons quelques unes.

Pour en savoir plus :
Séminaires
Measuring Similarity between Logical Arguments
Automated Reasoning
Monday 06 March 2023 - 00:00
Salle : 0 - 650
Victor David .............................................

Imputing Out-of-Vocabulary Embeddings with LOVE Ma
Data-Centric Languages and Systems
Monday 20 February 2023 - 00:00
Salle : 455 - PCRI-N
Lihu Chen .............................................

On the Interplay between Software Product Lines an
Automated Reasoning
Tuesday 18 October 2022 - 14:15
Salle : 2013 - DIG-Moulon
Vander Alves .............................................

Combining randomized and observational data: Towar
Automated Reasoning
Thursday 13 October 2022 - 10:30
Salle : 2011 - DIG-Moulon
Bénédicte Colnet .............................................

New Achievements of Artificial Intelligence in Mul
Automated Reasoning
Tuesday 11 October 2022 - 14:15
Salle : 2013 - DIG-Moulon
.............................................