Télécharger la présentation
La présentation est en train de télécharger. S'il vous plaît, attendez
1
AHA Algorithmes Hybrides et Adaptatifs
MOAIS / ID-IMAG Algorithmique, programmation parallèle, ordonnancement GILCO Optimisation combinatoire: gestion production, transport LMC-IMAG Algorithmique calcul exact ARENAIRE Algorithmique calcul fiable MOVI Vision et interaction, reconstruction 3D
2
Adaptabilité Les données varient Les ressources varient Application
2 slides : Contexte: données et machine varient Adaptatbilite: repteter le schema puis ajouiter une bulle adptatbilite - combiner plusieurs algorithmes - recuperer des mesures Projet algorithmique:. Lors de l’exécution d’un algorithme, le contexte d’exécution varie: - au niveau des données manipulées au niveau de l’architecture d’exécution Pour s’adapter Approche hiérarchique : Première distribution prenant en compte l’architecture globale : Volume global de calculs Hétérogénéité inter-clusters Adaptation à la machine locale de l’application Pré-calibrage Équilibrage dynamique Nécessité d’adaptation pour les applications: => chgt de degré de //isme, chgt d’algo Retrait/Ajout de clusters/gros nœuds (lourd) Surcharge/sous-charge au sein d’un cluster/nœud SMP => Vision générique, intégrée d’une application adaptable Faire un dessin : et 2 slides ou une animation : bien le faire passer ! Ce qui varie : Ressources Données Ce que peut faire l’ordonnancement : Planification a priori : scheduling Load-balancing : redistribution Ce que peut faire l’algorithme : Pré-paramétrage en fonction de caractéristiques connues Réaction à l’environnement : hétérogène dynamique AHA: avoir une vision globale d’un algorithme adaptatif qui est basé sur une combinaison de plusieurs algorithmes possibles qui calculent la même chose avec des performances différentes Nécessité d’adaptation pour améliorer la performance
3
Adaptabilité Les données varient Les ressources varient Adaptations
Mesures sur les ressources Mesures sur les données Adaptations Choix algorithme séquentiels/parallèle(s) approché/exact en mémoire / out of core Ordonnancement planification (scheduling) volume calculs / hétérogénéité redistribution (load-balancing) Calibrage pré-paramétrage taille de blocs / cache choix d’instructions gestion de priorités 2 slides : Contexte: données et machine varient Adaptatbilite: repteter le schema puis ajouiter une bulle adptatbilite - combiner plusieurs algorithmes - recuperer des mesures Projet algorithmique:. Lors de l’exécution d’un algorithme, le contexte d’exécution varie: - au niveau des données manipulées au niveau de l’architecture d’exécution Pour s’adapter Approche hiérarchique : Première distribution prenant en compte l’architecture globale : Volume global de calculs Hétérogénéité inter-clusters Adaptation à la machine locale de l’application Pré-calibrage Équilibrage dynamique Nécessité d’adaptation pour les applications: => chgt de degré de //isme, chgt d’algo Retrait/Ajout de clusters/gros nœuds (lourd) Surcharge/sous-charge au sein d’un cluster/nœud SMP => Vision générique, intégrée d’une application adaptable Faire un dessin : et 2 slides ou une animation : bien le faire passer ! Ce qui varie : Ressources Données Ce que peut faire l’ordonnancement : Planification a priori : scheduling Load-balancing : redistribution Ce que peut faire l’algorithme : Pré-paramétrage en fonction de caractéristiques connues Réaction à l’environnement : hétérogène dynamique AHA: avoir une vision globale d’un algorithme adaptatif qui est basé sur une combinaison de plusieurs algorithmes possibles qui calculent la même chose avec des performances différentes Objectif de AHA : vision intégrée de l’adaptation Approche algorithmique : combinaison auto-adaptative d’algorithmes avec comportement global justifié d’un point de vue théorique
4
Contexte applicatif Calcul fiable (LMC, ARENAIRE) : FFLAS (exact), MPIF (intervalles) => Adaptation : ressources: hiérarchie mémoire, unités de calcul (flottantes / entiéres), hybridation arithmétique approchée / intervalles / exacte utilisés par LinBox ( Vision artificielle (MOVI) : reconstruction 3D multi-caméras Adaptation : ressources hétérogènes (mono-pro / bipro) niveau de détail Optimisation combinatoire (GILCO) : conception de réseaux pour le transport => Adaptation : ressources disponibles sur une grille hybridation méthodes exactes / méthodes approchées Grimage (MOVI, MOAIS) Grâce à l’exploitation automatique de ces architectures, relever des défis applicatifs Besoin d’adaptation dans chaque applicatif Differentes cibles privilégiées : SMPs, clusters heterogenes, grille Insister : sur la transversalité e l’adpatation mais sur un seul: citer les autres mais pas les edetailler Detailler une :
5
Verrou scientifique Existant : Algorithmes qui intègrent une forme d’adaptabilité restreinte Verrou : comment construire une combinaison d’algorithmes qui s’adapte automatiquement à l’ensemble du contexte d’exécution ? Clef : trouver la combinaison qui permet de garantir la meilleure performance globale : technique algorithmique classique en parallélisme « Cascading Divide&Conquer » (1991) Aller plus loin : « poly-algorithme »
6
Approche scientifique de AHA
Problème à résoudre : f Plusieurs algorithmes (adaptifs) possibles: algo_f1, algo_f2(taille_bloc), … algo_fk Chaque algorithme algo_fk est récursif : algo_fi ( n, … ) { …. f ( n - 1, … ) ; // appels à des …. // f ( n / 2, … ) ; // sous-problèmes … } Adaptation choix de algo_fj pour chaque appel à f Etre large : integrer ordt, calibrage, algos Auto-adaptation : le calcul progresse tout en permettant de remettre en cause des choix non pertinents. Maîtriser le surcoût dû au choix (Work-first principle)
7
Un exemple : calcul des préfixes
Entrées : P-1, a0, an-1 Sorties : P-1*a0, P-1*a0*a1, …, P-1*a0*a1*…*an-1 Problèmes d’adaptation sur deux machines M1 et M2 : Algorithme séquentiel M1, M2 / Algorithme parallèle M1, M1+M2, … Tseq = n / T = log(n) mais T1 > 1.5 n Taille de blocs : dépend machine Adaptation aux données: opération * de coût variable Contrainte de temps sur les résultats : * à précision adaptable Comment peut-on les résoudre par combinaison récursive auto-calibration à l’installation : taille de blocs; pré-distribution des données Adaptation inactivité aux ressources Etre large : integrer ordt, calibrage, algos
8
Préfixe(Pm-1*Ru-1, au, an-1)
bloc Pm-1 = Préfixe(P-1, a0, am-1) M1 Préfixe(Pm-1*Ru-1, au, an-1) M2 bloc Ru-1 = Préfixe(1, am, au-1) Prédistribution Exécution séquentielle par défaut pour chaque algorithme
9
Préfixe(Pm-1*Ru-1, au, an-1)
bloc Pm-1 = Préfixe(P-1, a0, am-1) M1 Préfixe(Pm-1*Ru-1, au, an-1) M2 Ru-1 = Préfixe(1, am, au-1) Algorithme auto-adaptatif : s’adapte au contexte (données+machine)) T = n + log(n) en pire cas, donc proche du temps séquentiel T = log(n) en meilleur cas ; n sur deux machines idéales Dans tous les cas, activité utile des ressources
10
Conclusion Approche algorithmique de l'adaptabilité
Clef pour l’exploitation de ressources mutualisées Forte composante théorique avec validation expérimentale pour relever des défis applicatifs
11
Questions ?
12
Organisation de AHA 1 fourniture transversale : AdSynth Description générique d’un algorithme adaptatif Synthèse théorique des algorithmes adaptatifs / hybrides Analyse, classification, complexité Spécification d’un schéma générique Défi : efficacité de l'adaptabilité sur des exemples simples Validation : Plateforme d’expérimentation Plateformes disponibles: serveurs(bi-procs), clusters (grimage, icluster2), grilles (ciment, grid5000) Pas de multi-processeurs (bi-processeurs insuffisants) : SMP = premier cadre d’utilisation: essentiel pour transférer la technologie Valider l’approche : reproductibilité des expérimentations participation à l’acquisition d’un SMP (quadri-processeurs au moins) 3 fournitures dans chaque domaine applicatif Calcul fiable adaptatif Optimisation combinatoire Reconstruction 3D Combinaison théorique: mécanisme de haut-)niveau: self-scheduling (work-stealing, …) - pré- calibration - etc : hiérarchique
13
Justifications Technologique Politique Sociétale :
Disponibilité des architectures fédératives Grimage, Ciment, … Grid’5000 Visibilité du pôle Grenoblois sur ces plateformes Fédérer les développements logiciels [ROXANE] Vision intégrée de l’adptabilité Politique Concrétiser les relations existantes autour d’une problématique émergente: les algorithmes adaptatifs Algorithmique LMC, ARENAIRE, MOAIS, GILCO Grimage : MOVI / MOAIS Pas de moyens pour de gros clusters : on doit exploiter des ressources hétérogènes, non-uniformes (ex: CERN) Sociétale : Indirecte : à travers les défis applicatifs : Reconstruction 3D temps réel : environnements de travail collaboratif Optimisation : gestion de production, stockage, transport Adaptabilité = clef pour la mutualisation de ressources sinon vacantes donc polluantes
14
Contexte scientifique (1/2)
Mécanismes d’adaptation exploités effectivement et prouvés Atlas [2001] bibliothèque algèbre linéaire dense (FFLAS) Choix entre algorithmes par bloc ou scalaire ? Auto-calibration de la taille des blocs à l’installation sur la machine FFTW (1998, … ) = algorithme récursif adaptatif Choix de la meilleure découpe possible à chaque appel récursif ? Pré-calcul de la découpe optimale pour la taille n du vecteur sur la machine Cilk (1998, …) Athapascan (2000, …) : parallélisme récursif Choix entre exécution parallèle ou séquentielle pour chaque appel récursif ? « Work-first principle » : Exécution séquentielle optimisée sauf si inactivité Au niveau du contexte scientifique, il y a depuis quelques années un regain d’interet pour l’adaptation. D’une part elle est exploitée dans des logiciels Atlas qui est la bibliothèque de référence en algebre lineaire dense; dans Atlas, Dans Atlas, il y a 2 types des algorithmes: par blocs, et déroulés au sein d’un bloc. Le seuill entre les 2 algorithmes est calculé à l’installation du logiciel sur lamachine. Atlas est utilisée par FFLAS Utilisée pour le calcul exact dans les corps finis (FFLAS, 2004) Exploitation des unités flottantes + garantie exactitude du résultat Le matrices sont découpéees par blocs, chaque bloc étant Ordonnancement multi-critère avec garantie [Trystram&al 2004] Optimiser un critère en relâchant l’autre tout en garantissant une approximation pour chaque facteur Tâche « moldable » Minsum / makspan (2004 ) : construction récursive Dans FFT, logiciel référence pour les calculs de FFT efficace et portables
15
Contexte scientifique (2/2)
Résultats théoriques récents : combinaison d’algorithmes avec justification théorique Tâches moldables : Ordonnancement bi-critère avec garantie [Trystram&al 2004] Combinaison récursive alternatiive d’approximation pour chaque critère Auto-adaptation avec performance garantie pour chaque critère Algorithmes « Cache-Oblivious » [Bender&al 2004] Découpe récursive par bloc qui minimise les défauts de page Auto-adaptation à la hiérarchie mémoire (B-tree) Algorithmes « Processor-Oblivious » [Roch&al 2005] Combinaison récursive de 2 algorithmes séquentiel et parallèle Auto-adaptation à l’inactivité des ressources Au niveau du contexte scientifique, il y a depuis quelques années un regain d’interet pour l’adaptation. D’une part elle est exploitée dans des logiciels Atlas qui est la bibliothèque de référence en algebre lineaire dense; dans Atlas, Dans Atlas, il y a 2 types des algorithmes: par blocs, et déroulés au sein d’un bloc. Le seuill entre les 2 algorithmes est calculé à l’installation du logiciel sur lamachine. Atlas est utilisée par FFLAS Utilisée pour le calcul exact dans les corps finis (FFLAS, 2004) Exploitation des unités flottantes + garantie exactitude du résultat Le matrices sont découpéees par blocs, chaque bloc étant Ordonnancement multi-critère avec garantie [Trystram&al 2004] Optimiser un critère en relâchant l’autre tout en garantissant une approximation pour chaque facteur Tâche « moldable » Minsum / makspan (2004 ) : construction récursive Dans FFT, logiciel référence pour les calculs de FFT efficace et portables
16
Collaborations LinBox (UD, NCSU, UWO)
Transports : A.Barra, R.Balassiano (UFRJ/PUC, Rio), F.Loureiro (UF de Ceara, Fortaleza) Reconstruction 3D / Grimage : MOVI / Brown university Algorithmes « oblivious », adaptatifs : M. Bender Stony Brook C. Leiserson MIT (AtomicCilk)
17
Questions ?
18
Contexte technologique
Disponibilité effective d’architectures agglomérant des ressources hétérogènes, non-uniformes Machines (hiérarchie mémoire, SMP UMA/NUMA) Clusters : nœuds de calcul (x86, IA64, PowerPC,…) , I/O (caméras, projecteurs, …) Grille : locale [CIMENT] nationale [Grid5000]
19
Bilan financier
20
Approche scientifique (1/4)
Description générique d’un algorithme adaptatif Synthèse théorique des algorithmes adaptatifs / hybrides Analyse, classification, complexité Plateforme d’expérimentation Machine SMP quadri-processeurs Modèles de perturbation / Reproductibilité Défi: rendre, grâce à l’adaptabilité, le calcul sur processeurs non uniformes aussi efficace que sur processeur uniforme Fourniture AdSynth: Investissement 8k€ / Fnct 6k€ / Missions 12 k€ = 26k€
21
Approche scientifique (2/4)
Calcul fiable adaptatif Calcul exact d’un signe (arithmétique exacte/flottante/intervalles) Existant : FFLAS / MPFI Utilisant Atlas / BLAS (calculs flottants avec garantie) Adaptabilité : Exploitation de ressources parallèles Hybridation arithmétique exacte / intervalles/ flottante Calcul flottant avec garantie d’erreur ou d’exactitude : Calcul exact d’un signe Résolution de système par pré-conditionnement flottant (arithmétique exacte/flottante/intervalles) Défi: Rendre le calcul exact aussi efficace que le numérique Fourniture AdCalc: Investissement 8k€ / Fnct 6k€ / Missions 6 k€ = 20k€
22
Approche scientifique (3/4)
Optimisation combinatoire adaptative: problème de transport à Fortalerza, Brésil Adaptabilité : parallélisme adaptatif + méthodes hybrides (approchées-exactes) Méthode exacte (PLNE+CPLEX) Méthodes approchées (Recherche Tabou) solutions de meilleure qualité Défi: Transport urbain avec #villes = 1OOO Fourniture AdOpt: Investissement 3k€ / Vacations 10k€ / Missions 5k€ = 18k€ Critères: compromis entre qualité de services clients (temps de transport,fréquence des bus, # de transferts, % de satisfaction) et coûts de l’opérateur de transport (couverture, # de lignes, # de bus, # de conducteurs)
23
Approche scientifique (4/4)
Reconstruction 3D multi-caméras temps réel Adaptabilité : en fonction des ressources: Changement de contexte (arrivée de nouvelle personne, …) : niveau de détail (oct-tree, … ), redéploiement Ajout/retrait/ déplacement de quelques caméras : auto-calibration dynamique, … Défi: Précision, fluidité et latence (interaction mondes réel / virtuel) Fourniture AdOpt: Vacations 9k€ / Missions 6k€ = 15k€ 6 caméras 12 caméras 25 caméras
Présentations similaires
© 2024 SlidePlayer.fr Inc.
All rights reserved.