Spelling suggestions: "subject:"calcul scientifique"" "subject:"oalcul scientifique""
1 |
Du transport de particules à l'optimisation globale sous contrainte d'équations aux dérivées partiellesDumas, Laurent 03 December 2008 (has links) (PDF)
Pour bien comprendre les orientations suivies dans ce mémoire, il convient de replacer les travaux présentés dans leur contexte historique. Au commencement de ce travail, au milieu des années 90, il y eut le projet de navette européenne Hermès et les problèmes associés de réentrée dans la haute atmosphère qui m'orientèrent vers l'étude des modèles cinétiques et leurs simulations numériques par les méthodes de type Monte Carlo. Malheureusement, le lancement de la fusée Ariane 5, réalisé en 1997, est à ce jour le dernier grand projet spatial européen. A la fin des années 90, avec l'essor des moyens informatiques, de nouvelles perspectives virent le jour dans les bureaux d'études d'ingénieurs: la possibilité de lancer une boucle d'optimisation en arrière plan de simulations complexes 3D: cette nouvelle voie me redirigea alors vers l'étude et l'amélioration des méthodes d'optimisation de type Algorithmes Génétiques pour toutes sortes d'applications: optimisation du Cx d'automobiles, optimisation du rendement de réacteurs d'avions, etc... Le même type de problèmes d'optimisation s'est ensuite retrouvé dans le domaine médical et a attiré mon attention depuis mon intégration au sein de l'équipe REO en 2004: optimisation de dispositifs médicaux comme les stents ou les pacemakers, identification de paramètres de modèles numériques d'écoulements sanguins.<br />La première partie de ce mémoire est consacrée à des travaux sur le transport de particules dans le prolongement de ma thèse soutenue en 1995: étude du libre parcours moyen de particules dans un réseau d'obstacles périodiques, trajectoires de particules dans un écoulement fluide turbulent. L'application visée dans cette dernière étude consistait à estimer le dépôt d'alumine dans le fond arrière du propulseur à poudre de la fusée Ariane 5. La seconde partie consiste en la présentation des méthodes d'optimisation hybrides et des principes d'évaluations approchées ayant permis d'améliorer les performances des méthodes de type Algorithmes Génétiques. La troisième partie présente un certain nombre d'application des méthodes précédentes à des problèmes d'optimisation ayant pour point commun leur caractère global ainsi que la présence de contraintes s'exprimant sous la forme d'EDO ou d'EDP. Chacun de ces problèmes est par ailleurs issu d'une problématique d'ingénierie ou médicale.
|
2 |
Calcul en n-dimensions sur GPUBergeron, Arnaud 04 1900 (has links)
Le code source de la libraire développée accompagne ce dépôt dans l'état où il était à ce moment. Il est possible de trouver une version plus à jour sur github (http://github.com/abergeron). / Le calcul scientifique sur processeurs graphiques (GPU) est en plein essor depuis un certain temps, en particulier dans le domaine de l'apprentissage machine.
Cette thèse présente les efforts pour établir une structure de données de table au multidimensionnel de manière efficace sur GPU.
Nous commençons par faire une revue de ce qui est actuellement similaire dans le domaine et des désavantages d'avoir une multitude d'approches.
Nous nous intéresserons particulièrement aux calculs fait à partir du langage Python.
Nous décrirons des techniques intéressantes telles que la réduction d'ordre et le calcul asynchrone automatique.
Pour terminer nous présenterons l'utilisation du module développé dans le cadre de cette thèse. / Scientific computing on GPU (graphical processing units) is on the rise, specifically in machine learning.
This thesis presents the implementation of an efficient multidimensional array on the GPU.
We will begin by a review of what currently implements similar functionality and the disadvantage of a fragmented approach.
We will focus on packages that have a Python interface.
We will explain techniques to optimize execution such as order reduction and automatic asynchronous computations.
Finally, we will present the functionality of the module developed for this thesis.
|
3 |
Towards a software architecture for generic image processing / Vers une architecture logicielle pour le traitement d'images génériqueLevillain, Roland 15 November 2011 (has links)
Dans le cadre du génie logiciel en traitement d'images (TDI), nous nous intéressons à la notion de réutilisabilité des algorithmes. Dans de nombreux outils logiciels, l'implémentation d'un algorithme est souvent dépendante du type des données traitées. Au sens le plus général, les formes que peuvent prendre les images numériques discrètes sont nombreuses (image 2D classiques, volumes 3D, graphes non réguliers, complexes cellulaires, etc.) conduisant à une explosion combinatoire du nombre théorique d'implémentations. La programmation générique (PG) est un cadre adapté au développement d'outils logiciels réutilisables. Nous présentons un paradigme de programmation basé sur la PG conçu pour la création de logiciels scientifiques tels ceux dédiés au TDI. Cette approche concilie réutilisabilité, puissance d'expression, extensibilité et performance. Nous proposons ensuite une architecture logicielle pour le TDI basée sur ce paradigme de programmation, s'appuyant sur une bibliothèque générique de TDI. Les fondations de ce cadre définissent des concepts fondamentaux du TDI, qui permettent l'écriture d'algorithmes réutilisables sur de nombreux types d'images. Nous présentons enfin une stratégie pour construire des outils haut niveau au dessus de cette bibliothèque tels que des ponts vers des langages dynamiques ou des interfaces graphiques. Ce mécanisme est conçu pour préserver la généricité et la performance des outils logiciels sous-jacents, tout en permettant un usage plus simple et plus flexible de ceux-ci / In the context of software engineering for image processing (IP), we consider the notion of reusability of algorithms. In many software tools, an algorithm's implementation often depends on the type of processed data. In a broad definition, discrete digital images may have various forms : classical 2D images, 3D volumes, non-regular graphs, cell complexes, and so on : thus leading to a combinatorial explosion of the theoretical number of implementations. Generic programming (GP) is a framework suited to the development of reusable software tools. We present a programming paradigm based on GP designed for the creation of scientific software such as IP tools. This approach combines the benefits of reusability, expressive power, extensibility, and efficiency. We then propose a software architecture for IP using this programming paradigm based on a generic IP library. The foundations of this framework define essential IP concepts, enabling the development of algorithms compatible with many image types. We finally present a strategy to build high-level tools on top of this library, such as bridges to dynamic languages or graphical user interfaces. This mechanism has been designed to preserve the genericity and efficiency of the underlying software tools, while making them simpler to use and more flexible
|
4 |
Modélisation et étude numérique de quelques écoulements de fluides complexes en micro-fluidiqueDambrine, Julien 07 December 2009 (has links)
Ce document est consacré à l’étude de quelques écoulements de fluides complexes appliquée à la micro-fluidique. Deux études indépendantes sont effectuées : d’une part l’étude des mélanges de fluides Newtoniens dans des micro-canaux fins, et d’autre part l’étude d’écoulements de Micelles géantes (fluides non-Newtoniens). Dans chaque étude on traite tout d’abord des modèles en détail, puis on effectue une étude numérique des modèles en question. Dans la première partie nous traiterons de l’hydrodynamique de mélanges de fluides de différentes viscosités en régime de Stokes. Nous dériverons alors un modèle réduit de type Reynolds à partir du modèle complet de Stokes. Cette réduction de modèle est particulièrement adaptée à des écoulements dans des micro-canaux dont le rapport d’aspect largeur/hauteur est important. Les modèles obtenus au final peuvent être 2D ou bien 2.5D (2D pour la pression 3D pour le mélange) selon que l’on souhaite ou non prendre en compte les variations de viscosité dans la direction ”?ne”. De plus, les conditions aux limites en haut et au fond du canal pour le modèle complet (canal à reliefs, motifs de matériaux glissants) apparaissent dans le modèle réduit comme de simples coefficients de résistance à l’écoulement. Un résultat d’existence de solution est donné pour le modèle 2D. Une méthode numérique est alors donnée pour approcher ces modèles. Cette méthode numérique est basée sur une discrétisation des équations sur une grille cartésienne, ce qui permet une résolution rapide des systèmes linéaires obtenus après discrétisation. Deux études numériques sont alors menées, tout d’abord une étude de l’inter-diffusion de deux fluides dont les viscosités sont différentes dans des expériences dites de ”co-flow”, puis une autre étude sur des écoulements mono-fluides pour des canaux à reliefs et à surfaces glissantes utilisant des modèles 2.5D adaptées. La deuxième partie de ce document est consacrée à l’étude d’écoulements micro-fluidiques de micelles géantes en solution. Ce type particulier de fluide a tendance à former spontanément dans l’écoulement des phases dont les propriétés mécaniques peuvent être très différentes. (...) Cette étude a permis en particulier de déterminer le rôle exact de la diffusion dans le modèle. Une deuxième étude concernant des écoulements 3D dans des jonctions micro-fluidiques en T a permis de mieux comprendre les phénomènes étranges observés sur la répartition des débits dans les branches de sortie de ces jonctions. / Abstract
|
5 |
Scheduling and Dynamic Management of Applications over GridsCharrier, Ghislain 03 December 2010 (has links) (PDF)
Les travaux présentés dans cette thèse portent sur l'ordonnancement d'applications au sein d'un environnement de grille de calcul. Nous étudions comment mieux gérer les tâches au sein des intergiciels de grille, ceci dans l'objectif d'améliorer les performances globales de la plateforme. Les solutions que nous proposons se situent dans l'intergiciel, ce qui permet de conserver les architectures sous-jacentes sans les modifier. Dans un premier temps, nous proposons un mécanisme de réallocation permettant de prendre en compte dynamiquement les erreurs d'ordonnancement commises lors de la soumission de calculs. En effet, lors de la soumission sur une machine parallèle, il est souvent nécessaire de fournir une estimation du temps d'exécution afin que celle-ci puisse effectuer un ordonnancement. Cependant, les estimations ne sont pas précises et les décisions d'ordonnancement sont sans cesse remises en question. Le mécanisme de réallocation proposé permet de prendre en compte ces changements en déplaçant des calculs d'une machine parallèle à une autre. Le second point auquel nous nous intéressons dans cette thèse est l'ordonnancement d'une application de climatologie sur la grille. Afin de fournir les meilleures performances possibles nous avons modélisé l'application puis proposé des heuristiques spécifiques. Pour exécuter l'application sur une grille de calcul, l'intergiciel utilise ces connaissances sur l'application pour fournir le meilleur ordonnancement possible.
|
6 |
Contributions au partitionnement de graphes parallèle multi-niveauxPellegrini, François 03 December 2009 (has links) (PDF)
Le partitionnement de graphes est une technique employée dans de nombreux domaines scientifiques. Il est utilisé pour résoudre des problèmes d'optimisation, modélisés sous la forme de graphes valués ou non, et pour lesquels la recherche de bonnes solutions équivaut au calcul, éventuellement récursivement, de coupes sommet ou arête les plus petites possible et qui équilibrent les tailles des sous-parties séparées. La plupart des méthodes actuelles de partitionnement de graphes mettent en oeuvre un schéma multi-niveaux, dans lequel le graphe à partitionner est successivement contracté pour former une famille de graphes de plus en plus petits, mais de structure topologique similaire, de sorte qu'une partition initiale calculée sur le plus petit graphe puisse être propagée de proche en proche, par prolongations et raffinements successifs, jusqu'à obtenir un partitionnement du graphe initial. Du fait de l'augmentation croissante de la taille des problèmes à résoudre, ceux-ci ne peuvent plus être traités de façon séquentielle sur un unique ordinateur. Il est donc nécessaire de concevoir des algorithmes parallèles de partitionnement de graphes, aptes à traiter des graphes à plusieurs milliards de sommets distribués sur plusieurs milliers de processeurs. Plusieurs auteurs s'étaient déjà attelés à cette tâche, mais la performance des algorithmes proposés, ou la qualité des solutions produites, se dégradent lorsque le nombre de processeurs augmente. Ce mémoire présente les travaux réalisées au sein du projet PT-Scotch sur la conception d'algorithmes efficaces et robustes pour la parallélisation du schéma multi-niveaux. Il se concentre en particulier sur les phases de contraction et de raffinement, qui sont les plus critiques en termes de performance et de qualité des solutions produites. Il propose un algorithme parallèle probabiliste d'appariement, ainsi qu'un ensemble de méthodes permettant de réduire l'espace des solutions au cours la phase de raffinement et facilitant l'usage de méthodes globales, qui passent mieux à l'échelle mais sont en général bien plus coûteuses que les algorithmes d'optimisation locale habituellement mis en oeuvre dans le cas séquentiel.
|
7 |
Calcul en n-dimensions sur GPUBergeron, Arnaud 04 1900 (has links)
Le calcul scientifique sur processeurs graphiques (GPU) est en plein essor depuis un certain temps, en particulier dans le domaine de l'apprentissage machine.
Cette thèse présente les efforts pour établir une structure de données de table au multidimensionnel de manière efficace sur GPU.
Nous commençons par faire une revue de ce qui est actuellement similaire dans le domaine et des désavantages d'avoir une multitude d'approches.
Nous nous intéresserons particulièrement aux calculs fait à partir du langage Python.
Nous décrirons des techniques intéressantes telles que la réduction d'ordre et le calcul asynchrone automatique.
Pour terminer nous présenterons l'utilisation du module développé dans le cadre de cette thèse. / Scientific computing on GPU (graphical processing units) is on the rise, specifically in machine learning.
This thesis presents the implementation of an efficient multidimensional array on the GPU.
We will begin by a review of what currently implements similar functionality and the disadvantage of a fragmented approach.
We will focus on packages that have a Python interface.
We will explain techniques to optimize execution such as order reduction and automatic asynchronous computations.
Finally, we will present the functionality of the module developed for this thesis. / Le code source de la libraire développée accompagne ce dépôt dans l'état où il était à ce moment. Il est possible de trouver une version plus à jour sur github (http://github.com/abergeron).
|
8 |
Analyzing the memory behavior of parallel scientific applications / Analyse du comportement mémoire d'applications parallèles de calcul scientifiqueBeniamine, David 05 December 2016 (has links)
Depuis plusieurs décennies, afin de réduire la consommation énergétique des processeurs, les constructeurs fabriquent des ordinateurs de plus en plus parallèles.Dans le même temps, l'écart de fréquence entre les processeurs et la mémoire a significativement augmenté.Pour compenser cet écart, les processeurs modernes embarquent une hiérarchie de caches complexe.Développer un programme efficace sur de telles machines est une tâche complexe.Par conséquent, l'analyse de performance est devenue une étape majeure lors du développement d'applications requérant des performances.La plupart des outils d'analyse de performances se concentrent sur le point de vue du processeur.Ces outils voient la mémoire comme une entité monolithique et sont donc incapable de comprendre comment elle est accédée.Cependant, la mémoire est une ressource critique et les schémas d'accès à cette dernière peuvent impacter les performances de manière significative.Quelques outils permettant l'analyse de performances mémoire existent, cependant ils sont basé sur un échantillon age à large grain.Par conséquent, ces outils se concentrent sur une petite partie de l’Exécution et manquent le comportement global de l'application.De plus, l'échantillonnage à large granularité ne permet pas de collecter des schémas d'accès.Dans cette thèse, nous proposons deux outils différences pour analyser le comportement mémoire d'une application.Le premier outil est conçu spécifiquement pour pour les machines NUMA (Not Uniform Memory Accesses) et fournit plusieurs visualisations du schéma global de partage de chaque structure de données entre les flux d’ExécutionLe deuxième outil collecte des traces mémoires a grain fin avec information temporelles.Nous proposons de visualiser ces traces soit à l'aide d'un outil générique de gestion de traces soit en utilisant une approche programmatique basé sur R.De plus nous évaluons ces deux outils en les comparant a des outils existant de trace mémoire en terme de performances, précision et de complétude. / Since a few decades, to reduce energy consumption, processor vendors builds more and more parallel computers.At the same time, the gap between processors and memory frequency increased significantly.To mitigate this gap, processors embed a complex hierarchical caches architectureWriting efficient code for such computers is a complex task.Therefore, performance analysis has became an important step of the development of applications seeking for performances.Most existing performance analysis tools focuses on the point of view of the processor.Theses tools see the main memory as a monolithic entity and thus are not able to understand how it is accessed.However, memory is a common bottleneck in High Performances Computing, and the pattern of memory accesses can impact significantly the performances.There are a few tools to analyze memory performances, however theses tools are based on a coarse grain sampling.Consequently, they focus on a small part of the execution missing the global memory behavior.Furthermore, these coarse grain sampling are not able to collect memory accesses patterns.In this thesis we propose two different tools to analyze the memory behavior of an application.The first tool is designed specifically for Not Uniform Memory Accesses machines and provides some visualizations of the global sharing pattern inside each data structure between the threads.The second one collects fine grain memory traces with temporal information.We can visualize theses traces either with a generic trace management framework or with a programmatic exploration using R.Furthermore we evaluate both of these tools, comparing them with state of the art memory analysis tools in terms of performances, precision and completeness.
|
9 |
Analyse de sensibilité et réduction de dimension. Application à l'océanographie / Sensitivity analysis and model reduction : application to oceanographyJanon, Alexandre 15 November 2012 (has links)
Les modèles mathématiques ont pour but de décrire le comportement d'un système. Bien souvent, cette description est imparfaite, notamment en raison des incertitudes sur les paramètres qui définissent le modèle. Dans le contexte de la modélisation des fluides géophysiques, ces paramètres peuvent être par exemple la géométrie du domaine, l'état initial, le forçage par le vent, ou les coefficients de frottement ou de viscosité. L'objet de l'analyse de sensibilité est de mesurer l'impact de l'incertitude attachée à chaque paramètre d'entrée sur la solution du modèle, et, plus particulièrement, identifier les paramètres (ou groupes de paramètres) og sensibles fg. Parmi les différentes méthodes d'analyse de sensibilité, nous privilégierons la méthode reposant sur le calcul des indices de sensibilité de Sobol. Le calcul numérique de ces indices de Sobol nécessite l'obtention des solutions numériques du modèle pour un grand nombre d'instances des paramètres d'entrée. Cependant, dans de nombreux contextes, dont celui des modèles géophysiques, chaque lancement du modèle peut nécessiter un temps de calcul important, ce qui rend inenvisageable, ou tout au moins peu pratique, d'effectuer le nombre de lancements suffisant pour estimer les indices de Sobol avec la précision désirée. Ceci amène à remplacer le modèle initial par un emph{métamodèle} (aussi appelé emph{surface de réponse} ou emph{modèle de substitution}). Il s'agit d'un modèle approchant le modèle numérique de départ, qui nécessite un temps de calcul par lancement nettement diminué par rapport au modèle original. Cette thèse se centre sur l'utilisation d'un métamodèle dans le cadre du calcul des indices de Sobol, plus particulièrement sur la quantification de l'impact du remplacement du modèle par un métamodèle en terme d'erreur d'estimation des indices de Sobol. Nous nous intéressons également à une méthode de construction d'un métamodèle efficace et rigoureux pouvant être utilisé dans le contexte géophysique. / Mathematical models seldom represent perfectly the reality of studied systems, due to, for instance, uncertainties on the parameters that define the system. In the context of geophysical fluids modelling, these parameters can be, e.g., the domain geometry, the initial state, the wind stress, the friction or viscosity coefficients. Sensitivity analysis aims at measuring the impact of each input parameter uncertainty on the model solution and, more specifically, to identify the ``sensitive'' parameters (or groups of parameters). Amongst the sensitivity analysis methods, we will focus on the Sobol indices method. The numerical computation of these indices require numerical solutions of the model for a large number of parameters' instances. However, many models (such as typical geophysical fluid models) require a large amount of computational time just to perform one run. In these cases, it is impossible (or at least not practical) to perform the number of runs required to estimate Sobol indices with the required precision. This leads to the replacement of the initial model by a emph{metamodel} (also called emph{response surface} or emph{surrogate model}), which is a model that approximates the original model, while having a significantly smaller time per run, compared to the original model. This thesis focuses on the use of metamodel to compute Sobol indices. More specifically, our main topic is the quantification of the metamodeling impact, in terms of Sobol indices estimation error. We also consider a method of metamodeling which leads to an efficient and rigorous metamodel, which can be used in the geophysical context.
|
10 |
Modélisation eulérienne de l'interaction d'un brouillard avec un choc en régime supersonique / Euler-Euler modelling of the interaction between a supersonic dilute flow and a detached shockMarois, Gentien 20 December 2018 (has links)
Les travaux présentés dans cette thèse portent sur l’interaction d'un brouillard avec un choc en régime supersonique. L’approche eulérienne a été utilisée car elle est particulièrement adaptée aux machines fortement parallèles. Un module nommé SDFS (Supersonic Dilute Flow Solver), permettant de modéliser le comportement du brouillard, a été créé et validé au sein d’un code d’aérodynamique du CEA. Les travaux ont porté sur trois aspects de la modélisation numérique. Premièrement, l’étude et la création de nouveaux modèles. Deuxièmement, l’implémentation numérique et la validation sur des cas académiques de référence. Enfin, la confrontation entre les résultats numériques et des données expérimentales issues de la littérature. / In this thesis we focus on the interaction between a supersonic dilute flow and a detached shock. The Eulerian approach has been chosen because it is particularly adapted to parallel computing. A program named SDFS (Supersonic Dilute Flow Solver), was created and validated in a CEA aerodynamic code. Three aspects of the computational simulation have been studied. First the study and creation of new models. Then the numerical implementation and the validation through academic reference cases. Finally, the comparison between numerical results and experimental data.
|
Page generated in 0.0532 seconds