Calcul à haute performance et simulations stochastiques : Etude de la reproductibiité numérique sur architectures multicore et manycore
La reproductibilité des expériences numériques sur les systèmes de calcul à haute performance est parfois négligée. De plus, les méthodes numériques employées pour une parallélisation rigoureuse des simulations stochastiques sont souvent méconnues. En effet, les résultats obtenus pour une simulation...
Main Author: | |
---|---|
Other Authors: | |
Language: | fr en |
Published: |
2017
|
Subjects: | |
Online Access: | http://www.theses.fr/2017CLFAC005/document |
Summary: | La reproductibilité des expériences numériques sur les systèmes de calcul à haute performance est parfois négligée. De plus, les méthodes numériques employées pour une parallélisation rigoureuse des simulations stochastiques sont souvent méconnues. En effet, les résultats obtenus pour une simulation stochastique utilisant des systèmes de calcul à hautes performances peuvent être différents d’une exécution à l’autre, et ce pour les mêmes paramètres et les même contextes d’exécution du fait de l’impact des nouvelles architectures, des accélérateurs, des compilateurs, des systèmes d’exploitation ou du changement de l’ordre d’exécution en parallèle des opérations en arithmétique flottantes au sein des micro-processeurs. En cas de non répétabilité des expériences numériques, comment mettre au point les applications ? Quel crédit peut-on apporter au logiciel parallèle ainsi développé ? Dans cette thèse, nous faisons une synthèse des causes de non-reproductibilité pour une simulation stochastique parallèle utilisant des systèmes de calcul à haute performance. Contrairement aux travaux habituels du parallélisme, nous ne nous consacrons pas à l’amélioration des performances, mais à l’obtention de résultats numériquement répétables d’une expérience à l’autre. Nous présentons la reproductibilité et ses apports dans la science numérique expérimentale. Nous proposons dans cette thèse quelques contributions, notamment : pour vérifier la reproductibilité et la portabilité des générateurs modernes de nombres pseudo-aléatoires ; pour détecter la corrélation entre flux parallèles issus de générateurs de nombres pseudo-aléatoires ; pour répéter et reproduire les résultats numériques de simulations stochastiques parallèles indépendantes. === The reproducibility of numerical experiments on high performance computing systems is sometimes overlooked. Moreover, the numerical methods used for rigorous parallelization of stochastic simulations are often unknown. Indeed, the results obtained for a stochastic simulation using high performance computing systems can be different from run to run with the same parameters and the same execution contexts due to the impact of new architectures, accelerators, compilers, operating systems or a changing of the order of execution of the floating arithmetic operations within the micro-processors for parallelizing optimizations. In the case of non-repeatability of numerical experiments, how can we seriously develop a scientific application? What credit can be given to the parallel software thus developed? In this thesis, we synthesize the main causes of non-reproducibility for a parallel stochastic simulation using high performance computing systems. Unlike the usual parallelism works, we do not focus on improving performance, but on obtaining numerically repeatable results from one experiment to another. We present the reproducibility and its contributions to the science of experimental and numerical computing. Furthermore, we propose some contributions, in particular: to verify the reproducibility and portability of top modern pseudo-random number generators, to detect the correlation between parallel streams issued from such generators, to repeat and reproduce the numerical results of independent parallel stochastic simulations. |
---|