
Optimisation de la performance
Progrès et limites du calcul séquentiel
Pour parler des progrès considérables de la puissance de calcul, on cite souvent la loi de Moore : la vitesse de calcul des ordinateurs doublait tous les dix-huit mois. Cette loi a été valable pour les machines séquentielles à un seul processeur. Ces résultats fulgurants ont été obtenus en mettant plus de transistors sur le processeur et en augmentant la fréquence de l’horloge.

Source et pour en savoir plus: Wikipedia
Ces progrès ont permis de rendre réalisables de nombreux modèles d’optimisation sous contraintes.
Pour résoudre des programmes linéaires, on bénéficie entre 1988 et 2010 d’une accélération impressionnante de la performance mesurée en temps de calcul (exemple logiciel CPLEX)
- seul gain machine : accélération d’un facteur 800
- seul gain algorithmiques : accélération d’un facteur 2360
- gain machines + algorithmes : accélération d’un facteur 1 900 000
HPC (High Performance Computing) et calcul parallèle
La loi de Moore a une limite si on reste sur des machines à un seul processeur et sur une algorithmique séquentielle. Pour calculer plus vite, traiter des problèmes de plus grande taille ou plus complexes, il faut utiliser des machines plus puissantes possédant une architecture parallèle. Mais pour pouvoir les utiliser, il faut soit distribuer des calculs indépendants sur plusieurs machines (grid computing) ou un superordinateur multi-coeurs, soit tirer partie des architectures parallèles dès la conception des algorithmes.
Pour obtenir plus de puissances de calcul, les constructeurs tels que BULL ont proposé des architectures parallèles cad des machines possédant plusieurs cœurs de calculs avec une grande performance de communication entre ces cœurs. Les ordinateurs de bureaux sont tous équipés de nos jours de 2 cœurs et des PC à 4 ou 8 cœurs sont devenus très accessibles. Lorsqu’on parle de HPC on évoque cependant des puissances de calculs très supérieurs avec des super-ordinateurs équipés de plusieurs dizaines de milliers de cœurs.
Le site http://www.top500.org/list/2010/11/100 donne la liste des supercalculateurs. La Chine vient de se hisser au premier rang. La machine Tera 100 de Bull au CEA occupe le 6ème rang.
Distribuer des calculs
Un premier cas d’utilisation à EURODECISION du HPC a été mis en place pour l’optimisation de la conception de produits. L’outil ALTERNOVA développé à cette fin fait appel à la simulation numérique grosse consommatrice de temps de calcul :
• Le HPC est utilisé à un premier niveau lors d’un calcul de simulation grâce à la parallélisation des codes de calcul eux-mêmes (exemple de calcul de crash avec le logiciel PAMCRASH d’ESI très utilisé en conception de véhicules).
• Il est utilisé aussi pour distribuer des calculs indépendants et obtenir des résultats plus rapidement. Dans la méthodologie ALTERNOVA, chaque itération (une couleur par itération dans le graphique ci-dessous) suppose l’exécution d’un grand nombre de simulations avec des hypothèses de variante de conception.
.png)
Paralléliser des algorithmes d’optimisation
Certaines méthodes d’optimisation, les algorithmes génétiques par exemple, se prêtent bien à du calcul parallèle. Le logiciel PARADISEO, utilisé par EURODECISION pour la mise en œuvre de certains algorithmes, a été conçu de façon à permettre de développer des méta-heuristiques tirant partie du calcul parallèle.
Des travaux de R&D sont en cours à EURODECISION pour tirer partie de ces architectures multi-cœurs ou des possibilités offertes par le grid-computing. Le projet de R&D HORUS en est un exemple.
Comment accéder au HPC ?
La mise à disposition du HPC pour des actions de R&D est gérée au niveau européen par PRACE et au niveau français par GENCI.
Citons également l’association TER@TEC dont EURODECISION est membre.