This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
• 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
bloc Pm-1 = Préfixe(P-1, a0, am-1)
bloc Ru-1 = Préfixe(1, am, au-1)
M1
M2
Préfixe(Pm-1*Ru-1, au, an-1)
PrédistributionExécution séquentielle par défaut pour chaque algorithme
bloc Pm-1 = Préfixe(P-1, a0, am-1)
Ru-1 = Préfixe(1, am, au-1)
M1
M2
Préfixe(Pm-1*Ru-1, au, an-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 ; 0.75n sur deux machines idéalesDans tous les cas, activité utile des ressources
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
Questions ?
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
Justifications• Technologique
– 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
• 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é
• 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
• 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, …