Spelling suggestions: "subject:"calcul."" "subject:"oalcul.""
761 |
Couplage de modèles, algorithmes multi-échelles et calcul hybride / Model coupling and hybrid computing for multi-scale CFDEtancelin, Jean-Matthieu 04 December 2014 (has links)
Dans cette thèse nous explorons les possibilités offertes par l'implémentation de méthodes hybrides sur des machines de calcul hétérogènes dans le but de réaliser des simulations numériques de problèmes multiéchelles. La méthode hybride consiste à coupler des méthodes de diverses natures pour résoudre les différents aspects physiques et numériques des problèmes considérés. Elle repose sur une méthode particulaire avec remaillage qui combine les avantages des méthodes Lagrangiennes et Eulériennes. Les particules sont déplacées selon le champ de vitesse puis remaillées à chaque itération sur une grille en utilisant des formules de remaillage d'ordre élevés. Cette méthode semi-Lagrangienne bénéficie des avantages du maillage régulier mais n'est pas contrainte par une condition de CFL.Nous construisons une classe de méthodes d'ordre élevé pour lesquelles les preuves de convergence sont obtenues sous la seule contrainte de stabilité telle que les trajectoires des particules ne se croisent pas.Dans un contexte de calcul à haute performances, le développement du code de calcul a été axé sur la portabilité afin de supporter l'évolution rapide des architectures et leur nature hétérogène. Une étude des performances numériques de l'implémentation GPU de la méthode pour la résolution d'équations de transport est réalisée puis étendue au cas multi-GPU. La méthode hybride est appliquée à la simulation du transport d'un scalaire passif dans un écoulement turbulent 3D. Les deux sous-problèmes que sont l'écoulement turbulent et le transport du scalaire sont résolus simultanément sur des architectures multi-CPU et multi-GPU. / In this work, we investigate the implementation of hybrid methods on heterogeneous computers in order to achieve numerical simulations of multi-scale problems. The hybrid numerical method consists of coupling methods of different natures to solve the physical and numerical characteristics of the problem. It is based on a remeshed particle method that combines the advantages of Lagrangian and Eulerian methods. Particles are pushed by local velocities and remeshed at every time-step on a grid using high order interpolation formulas. This forward semi-lagrangian method takes advantage of the regular mesh on which particles are reinitialized but is not limited by CFL conditions.We derive a class of high order methods for which we are able to prove convergence results under the sole stability constraint that particle trajectories do not intersect.In the context of high performance computing, a strong portability constraint is applied to the code development in order to handle the rapid evolution of architectures and their heterogeneous nature. An analysis of the numerical efficiency of the GPU implementation of the method is performed and extended to multi-GPU platforms. The hybrid method is applied to the simulation of the transport of a passive scalar in a 3D turbulent flow. The two sub-problems of the flow and the scalar calculations are solved simultaneously on multi-CPU and multi-GPU architectures.
|
762 |
Workload Traces Analysis and Replay in Large Scale Distributed Systems / Analyse de rejeu de traces de charge dans les grands systèmes de calcul distribuésEmeras, Joseph 01 October 2013 (has links)
L'auteur n'a pas fourni de résumé en français / High Performance Computing is preparing the era of the transition from Petascale to Exascale. Distributed computing systems are already facing new scalability problems due to the increasing number of computing resources to manage. It is now necessary to study in depth these systems and comprehend their behaviors, strengths and weaknesses to better build the next generation.The complexity of managing users applications on the resources conducted to the analysis of the workload the platform has to support, this to provide them an efficient service.The need for workload comprehension has lead to the collection of traces from production systems and to the proposal of a standard workload format. These contributions enabled the study of numerous of these traces. This also lead to the construction of several models, based on the statistical analysis of the different workloads from the collection.Until recently, existing workload traces did not enabled researchers to study the consumption of resources by the jobs in a temporal way. This is now changing with the need for characterization of jobs consumption patterns.In the first part of this thesis we propose a study of existing workload traces. Then we contribute with an observation of cluster workloads with the consideration of the jobs resource consumptions over time. This highlights specific and unattended patterns in the usage of resources from users.Finally, we propose an extension of the former standard workload format that enables to add such temporal consumptions without loosing the benefit of the existing works.Experimental approaches based on workload models have also served the goal of distributed systems evaluation. Existing models describe the average behavior of observed systems.However, although the study of average behaviors is essential for the understanding of distributed systems, the study of critical cases and particular scenarios is also necessary. This study would give a more complete view and understanding of the performance of the resources and jobs management. In the second part of this thesis we propose an experimental method for performance evaluation of distributed systems based on the replay of production workload trace extracts. These extracts, replaced in their original context, enable to experiment the change of configuration of the system in an online workload and observe the different configurations results. Our technical contribution in this experimental approach is twofold. We propose a first tool to construct the environment in which the experimentation will take place, then we propose a second set of tools that automatize the experiment setup and that replay the trace extract within its original context.Finally, these contributions conducted together, enable to gain a better knowledge of HPC platforms. As future works, the approach proposed in this thesis will serve as a basis to further study larger infrastructures.
|
763 |
Análise de sensibilidade através de um modelo implicitamente acoplado para alívio de sobrecargas em redes de transmissãoHoji, Eduardo Shigueo [UNESP] 23 March 2006 (has links) (PDF)
Made available in DSpace on 2014-06-11T19:22:36Z (GMT). No. of bitstreams: 0
Previous issue date: 2006-03-23Bitstream added on 2014-06-13T20:09:52Z : No. of bitstreams: 1
hoji_es_me_ilha.pdf: 1044314 bytes, checksum: 689b008e9a9531695ae561b63e953e91 (MD5) / Coordenação de Aperfeiçoamento de Pessoal de Nível Superior (CAPES) / Fundação de Ensino Pesquisa e Extensão de Ilha Solteira (FEPISA) / A reestruturação dos mercados de energia para fornecer livre acesso ao sistema de transmissão e o conseqüente aumento no número de transações de compra e venda de energia tem causado congestionamento nos sistemas de transmissão. Como conseqüência, as redes têm sofrido sobrecargas nas linhas de maneira mais freqüente. Uma maneira prática de se melhorar a capacidade de transferência de potência ativa em uma linha de transmissão é a redução de seu fluxo reativo. Esse controle pode ser feito através de alterações nos controles das fontes de potência reativa e nos taps de transformadores. A definição de quais ações serão tomadas de modo a minimizar o fluxo reativo e aliviar, ou mesmo eliminar, a sobrecarga em uma determinada linha, pode ser realizada através da análise de sensibilidade. Uma vez que se está interessado na resposta do sistema às variações de injeções de reativos, utilizamos a matriz Lc do método CRIC (Calcul de Reseaux Implicitement Couples) de fluxo de potência. Também foi utilizado o modelo constante do método CRIC. A metodologia desenvolvida consiste da manipulação da matriz Lc com outras sensibilidades de primeira ordem, de modo a se obter as sensibilidades entre fluxo reativo nas linhas e injeção de reativos nas barras e fluxo reativo nas linhas e taps dos transformadores. As sensibilidades obtidas fornecem as barras e transformadores mais indicados para alívio de uma determinada sobrecarga e são úteis principalmente em casos emergenciais, nos quais não seja necessária a instalação de novas fontes de reativos. Os resultados obtidos são comparados com os obtidos através de uma metodologia semelhante, que utiliza a matriz jacobiana do método de Newton. Foram utilizados para os testes o sistema Cigré de 32 barras, e o sistema Sul-Sudeste brasileiro em duas configurações de carga diferentes. / The restructuring of energy markets to supply free access to the transmission system and the consequent increase of the number of power transactions has been causing congestions in the transmission systems. As consequence, the networks have been suffering overloads in the lines in a more frequent way. A practice way of improving the transfer capability of active power in a transmission line is to decrease its reactive power flow. That control can be made through changes in the reactive power sources injections and in the transformer ratios of transformers. The definition of which actions will be taken to minimize the reactive flow and to alleviate, or even to eliminate, the overload in a determined line can be accomplished through the sensibility analysis. Once it is interested in the answer of the system to the variations of reactive power injections, we used the matrix Lc from the CRIC (Calcul of Reseaux Implicitement Couples) power flow method. The constant model of CRIC is also used. The developed methodology consists of the manipulation of the matrix Lc with other first order sensibilities, in order to obtain the sensibilities among reactive flow in the lines and reactive power injections in the buses and reactive flow in the lines and transformer ratios of the transformers. The obtained sensibilities indicate the buses and transformers for relieving a certain overload and they are mainly useful in emergency cases, which it is not necessary the installation of new sources of reagents. The obtained results are compared with the obtained through a similar methodology, that uses the of Newton's method jacobian matrix. The methodologies were tested using the 32-bus Cigré network and the South-southeast Brazilian system in two different load configurations.
|
764 |
Étude des rapports entre stéréotomie et résistance des voûtes clavées / Study of relations between sterotomy and resistance of cut-stone vaultsFantin, Mathias 13 December 2017 (has links)
Cette thèse vise à mieux comprendre l'influence de la coupe des pierres sur la résistance des arcs et des voûtes clavés en général, et des couvrements plans en particulier. L'étude historique et typologique des plates-bandes et des voûtes plates, à travers les exemples construits et les traités d'architecture et de coupe des pierres du XVIe au XVIIIe siècle, forme le préalable à l'étude mécanique de ces constructions. Les plates-bandes à joints en~X, les plates-bandes en fausse-coupe, et les voûtes plates d'Abeille sont étudiées en détail en raison de leur stéréotomie savante. Les règles géométriques utilisées pour l'appareillage des plates-bandes, d'une part par les architectes, et d'autre part par les appareilleurs et tailleurs de pierre, émergent de ce travail. Une extension de la méthode des réseaux de forces est proposée, pour tenir compte de l'appareil des voûtes, pour raffiner les réseaux, et pour intégrer rigoureusement les réseaux à la théorie du calcul à la rupture. Des stratégies de calcul pour la recherche des chargements extrêmes, dont la détermination fonde la faisabilité de la technique, sont proposées. Les études mécaniques conduites considèrent les arcs en plein-cintre et dômes hémisphériques, les plates-bandes et voûtes plates, et les voûtes hélicoïdales. Elles illustrent la précision de l'estimatif proposée pour le coefficient de sécurité géométrique, l'influence de la coupe des pierres pour les couvrements plans, et les possibilités et limites de l'application de la méthode des réseaux de forces à l'étude des constructions clavées / This work aims at a better understanding of the influence of stereotomy on the stability of stone-cut archs and vaults in general, and flat archs and flat vaults in particular. A study of the history and typology of flat archs and flat vaults, through the consideration of existing examples and treaties of architecture or stereotomy from 1500 to 1800, is a preambule to the mechanical study of these constructions. Flat archs with X-joints, flat archs en fausse-coupe, and Abeille's flat vaults are studied in detail because of their specific stereotomy. Geometric rules used to determine joint orientation, by architects on the one hand, and by stone masons on the other hand, emerge from this work. An extension of the force network method is presented, in order to take into account the vaults' stonework, to find new equilibrium solutions by refining networks, and to comply rigourously with the theory of yield calculus. Calculus strategies for the search of limit loads, whose determination is essential for the technique, are given. Mechanical studies are conducted on cylindrical archs and hemispherical domes, flat archs and flat vaults, and helicoidal vaults. They show the precision of the geometric safety factor estimate, the influence of stone cutting on flat archs and vaults, and the possibilities and limits of using the force networks method to study stone-cut vaults
|
765 |
Contribution à la conception à base de composants logiciels d'applications scientifiques parallèles / Contribution to the design of scientific parallel applications based on software componentsPichon, Vincent 05 November 2012 (has links)
La conception d'applications scientifiques à base de couplage de code est une tâche complexe car elle demande de concilier une facilité de programmation et une obtention de haute performance. En outre, les ressources matérielles (supercalculateurs, grappes de calcul, grilles) permettant leur exécution forment un ensemble hétérogène en constante évolution. Les modèles à base de composants logiciels forment une piste prometteuse pour gérer ces deux sources de complexité car ils permettent d’exprimer les interactions entre les différents constituants d’une application tout en offrant des possibilités d'abstraction des ressources. Néanmoins, les modèles existants ne permettent pas d'exprimer de manière satisfaisante les applications constituées de motifs répliqués dynamiques et hiérarchiques. Ainsi, cette thèse vise à améliorer l'existant – et en particulier la plate-forme générique de simulation numérique SALOME – pour une classe d'applications très répandue : les applications à base de décomposition de domaine et la variante utilisant le raffinement de maillage adaptatif. Tout d'abord, nous avons proposé d’étendre le modèle de composition spatial et temporel de SALOME en ajoutant la possibilité de définir dynamiquement la cardinalité des composants. Cela demande en particulier de gérer les communications de groupes ainsi induites. La proposition a été implémentée dans SALOME et validée via une application de décomposition de domaine à base de couplage de plusieurs instances de Code_Aster. Ensuite, nous avons étudié la pertinence d'utiliser un modèle de composant supportant des connecteurs natifs (MPI, mémoire partagée, appel de méthode) pour permettre une composition plus fine des interactions entre composants. Les résultats d'expériences montrent que des performances équivalentes aux versions natives sont obtenues tout en permettant de manipuler facilement l'architecture de l'application. Enfin, nous avons étudié les extensions nécessaires aux modèles à composants (abstraction,hiérarchie, dynamicité) pour la conception d’applications de raffinement de maillage adaptatif. Les modèles de composants spatio-temporels les plus avancés permettent ainsi d'exprimer ce type d'application mais les performances sont limitées par leur mise en œuvre centralisée ainsi que par le manque de moyens efficaces pour modifier à la volée des assemblages de composants. / Designing scientific applications based on code coupling is a complex task. It requires both an easy programming process and high-performance. In addition, execution resources (supercomputers, computer clusters, grids) are heterogeneous and constantly evolving. Software components models offer a promising perspective to manage this double complexity because they can express interactions between the different parts of an application while providing abstraction of resources. However, existing models cannot accurately express the applications made of dynamic and hierarchical patterns. The aim of this thesis is to improve the existing models, and in particular the generic platform for numerical simulation SALOME, for a class of widespread applications : applications based on domain decomposition, and its dynamic variant using adaptive mesh refinement. Firstly, we proposed to extend the spatial and temporal composition model provided by SALOME, by adding the ability to dynamically set component cardinality. This requires in particular to manage group communications induced. The proposal has been implemented into SALOME and validated via a domain decomposition application based on coupling several instances of Code_Aster.Then, we have studied the relevance of using a component model supporting native connectors (MPI, shared memory, method invocation), in order to allow finer composition interactions between components.The experiment results show that performances obtained are equivalent to those of the native versions, while allowing to easily manipulate the application architecture. Finally, we studied the necessary component models extensions (abstraction, hierarchy, dynamicity) for designing adaptative mesh refinement applications. The most advanced spatio-temporal component models can express this type of application but performances are limited by their centralized implementation and by the lack of efficient ways of modifying component assembling at execution time.
|
766 |
Cooperative Resource Management for Parallel and Distributed Systems / Gestion collaborative des ressources pour les systèmes parallèles et distribuéesKlein-Halmaghi, Cristian 29 November 2012 (has links)
Les ressources de calcul à haute performance (High-Performance Computing—HPC), telles que les supercalculateurs, les grappes, les grilles de calcul ou les Clouds HPC, sont gérées par des gestionnaires de ressources (Resource Management System—RMS) qui multiplexent les ressources entre plusieurs utilisateurs et décident comment allouer les nœuds de calcul aux applications des utilisateurs. Avec la multiplication de machines péta-flopiques et l’arrivée des machines exa-flopiques attendue en 2020, l’optimisation de l’allocation des ressources aux applications est essentielle pour assurer que leur exécution soit efficace. Cependant, les RMSs existants, tels que les batch schedulers, n’offrent qu’une interface restreinte. Dans la plupart des cas, l’application doit choisir les ressources « aveuglément » lors de la soumission sans pouvoir adapter son choix à l’état des ressources ciblées, ni avant, ni pendant l’exécution.Le but de cette Thèse est d’améliorer la gestion des ressources, afin de permettre aux applications d’allouer des ressources efficacement. Pour y parvenir, nous proposons des architectures logicielles qui favorisent la collaboration entre les applications et le gestionnaire de ressources, permettant ainsi aux applications de négocier les ressources qu’elles veulent utiliser. À cette fin, nous analysons d’abord les types d’applications et leurs besoins en ressources, et nous les divisons en plusieurs catégories : rigide, modelable, malléable et évolutive. Pour chaque cas, nous soulignons les opportunités d’amélioration de la gestion de ressources. Une première contribution traite les applications modelables, qui négocient les ressources seulement avant leur démarrage. Nous proposons CooRMv1, une architecture RMS centralisée, qui délègue la sélection des ressources aux lanceurs d’application. Des simulations montrent qu’un tel système se comporte bien en termes d’extensibilité et d’équité. Les résultats ont été validés avec un prototype déployé sur la plate-forme Grid’5000. Une deuxième contribution se focalise sur la négociation des allocations pour des ressources géographiquement distribuées qui appartiennent à plusieurs institutions. Nous étendons CooRMv1 pour proposer distCooRM, une architecture RMS distribuée, qui permet aux applications modelables de co-allouer efficacement des ressources gérées par plusieurs agents indépendants. Les résultats de simulation montrent que distCooRM se comporte bien et passe à l’échelle pour un nombre raisonnable d’applications. Ensuite, nous nous concentrons sur la négociation des ressources à l’exécution pour mieux gérer les applications malléables et évolutives. Nous proposons CooRMv2, une architecture RMS centralisée, qui permet l’ordonnancement efficace des applications évolutives, et surtout celles dont l’évolution n’est pas prévisible. Une application peut faire des « pré-allocations » pour exprimer ses pics de besoins en ressources. Cela lui permet de demander dynamiquement des ressources, dont l’allocation est garantie tant que la pré-allocation n’est pas dépassée. Les ressources pré-allouées mais inutilisées sont à la disposition des autres applications. Des gains importants sont ainsi obtenus, comme les simulations que nous avons effectuées le montrent.Enfin, nous partons de logiciels utilisés en production pour illustrer l’intérêt, mais aussi la difficulté, d’améliorer la collaboration entre deux systèmes existants. Avec GridTLSE comme application et DIET comme RMS, nous avons trouvé un cas d’utilisation mal supporté auparavant. Nous identifions le problème sous-jacent d’ordonnancement des calculs optionnels et nous proposons une architecture pour le résoudre. Des expériences réelles sur la plate-forme Grid’5000 montrent que plusieurs métriques peuvent être améliorées, comme par exemple la satisfaction des utilisateurs, l’équité et le nombre de requêtes traitées. En outre, nous montrons que cette solution présente une bonne extensibilité. / High-Performance Computing (HPC) resources, such as Supercomputers, Clusters, Grids and HPC Clouds, are managed by Resource Management Systems (RMSs) that multiple resources among multiple users and decide how computing nodes are allocated to user applications. As more and more petascale computing resources are built and exascale is to be achieved by 2020, optimizing resource allocation to applications is critical to ensure their efficient execution. However, current RMSs, such as batch schedulers, only offer a limited interface. In most cases, the application has to blindly choose resources at submittal without being able to adapt its choice to the state of the target resources, neither before it started nor during execution. The goal of this Thesis is to improve resource management, so as to allow applications to efficiently allocate resources. We achieve this by proposing software architectures that promote collaboration between the applications and the RMS, thus, allowing applications to negotiate the resources they run on. To this end, we start by analysing the various types of applications and their unique resource requirements, categorizing them into rigid, moldable, malleable and evolving. For each case, we highlight the opportunities they open up for improving resource management.The first contribution deals with moldable applications, for which resources are only negotiated before they start. We propose CooRMv1, a centralized RMS architecture, which delegates resource selection to the application launchers. Simulations show that the solution is both scalable and fair. The results are validated through a prototype implementation deployed on Grid’5000. Second, we focus on negotiating allocations on geographically-distributed resources, managed by multiple institutions. We build upon CooRMv1 and propose distCooRM, a distributed RMS architecture, which allows moldable applications to efficiently co-allocate resources managed by multiple independent agents. Simulation results show that distCooRM is well-behaved and scales well for a reasonable number of applications. Next, attention is shifted to run-time negotiation of resources, so as to improve support for malleable and evolving applications. We propose CooRMv2, a centralized RMS architecture, that enables efficient scheduling of evolving applications, especially non-predictable ones. It allows applications to inform the RMS about their maximum expected resource usage, through pre-allocations. Resources which are pre-allocated but unused can be filled by malleable applications. Simulation results show that considerable gains can be achieved. Last, production-ready software are used as a starting point, to illustrate the interest as well as the difficulty of improving cooperation between existing systems. GridTLSE is used as an application and DIET as an RMS to study a previously unsupported use-case. We identify the underlying problem of scheduling optional computations and propose an architecture to solve it. Real-life experiments done on the Grid’5000 platform show that several metrics are improved, such as user satisfaction, fairness and the number of completed requests. Moreover, it is shown that the solution is scalable.
|
767 |
Active Data - Enabling Smart Data Life Cycle Management for Large Distributed Scientific Data Sets / Active Data − Gestion Intelligente du Cycle de Vie des Grands Jeux de Données Scientifiques DistribuésSimonet, Anthony 08 July 2015 (has links)
Dans tous les domaines, le progrès scientifique repose de plus en plus sur la capacité à exploiter des volumes de données toujours plus gigantesques. Alors que leur volume augmente, la gestion de ces données se complexifie. Un point clé est la gestion du cycle de vie des données, c'est à dire les diverses opérations qu'elles subissent entre leur création et leur disparition : transfert, archivage, réplication, suppression, etc. Ces opérations, autrefois simples, deviennent ingérables lorsque le volume des données augmente de manière importante, au vu de l'hétérogénéité des logiciels utilisés d'une part, et de la complexité des infrastructures mises en œuvre d'autre part.Nous présentons Active Data, un méta-modèle, une implémentation et un modèle de programmation qui permet de représenter formellement et graphiquement le cycle de vie de données présentes dans un assemblage de systèmes et d'infrastructures hétérogènes, en exposant naturellement la réplication, la distribution et les différents identifiants des données. Une fois connecté à des applications existantes, Active Data expose aux utilisateurs ou à des programmes l'état d'avancement des données dans leur cycle de vie, en cours d'exécution, tout en gardant leur trace lorsqu'elles passent d'un système à un autre.Le modèle de programmation Active Data permet d'exécuter du code à chaque étape du cycle de vie des données. Les programmes écrits avec Active Data ont à tout moment accès à l'état complet des données, à la fois dans tous les systèmes et dans toutes les infrastructures sur lesquels elles sont distribuées. Nous présentons des évaluations de performance et des exemples d'utilisation qui attestent de l'expressivité du modèle de programmation et de la qualité de l'implémentation. Enfin, nous décrivons l'implémentation d'un outil de Surveillance des données basé sur Active Data pour l'expérience Advanced Photon Source qui permet aux utilisateurs de suivre la progression de leurs données, d'automatiser la plupart des tâches manuelles, d'obtenir des notifications pertinente parmi une masse gigantesque d'événements, ainsi que de détecter et corriger de nombreuses erreurs sans intervention humaine.Ce travail propose des perspectives intéressantes, en particulier dans les domaines de la provenance des données et de l'open data, tout en facilitant la collaboration entre les scientifiques de communautés différentes. / In all domains, scientific progress relies more and more on our ability to exploit ever growing volumes of data. However, as datavolumes increase, their management becomes more difficult. A key point is to deal with the complexity of data life cycle management,i.e. all the operations that happen to data between their creation and there deletion: transfer, archiving, replication, disposal etc.These formerly straightforward operations become intractable when data volume grows dramatically, because of the heterogeneity ofdata management software on the one hand, and the complexity of the infrastructures involved on the other.In this thesis, we introduce Active Data, a meta-model, an implementation and a programming model that allow to represent formally and graphically the life cycle of data distributed in an assemblage of heterogeneous systems and infrastructures, naturally exposing replication, distribution and different data identifiers. Once connected to existing applications, Active Data exposes the progress of data through their life cycle at runtime to users and programs, while keeping their track as it passes from a system to another.The Active Data programming model allows to execute code at each step of the data life cycle. Programs developed with Active Datahave access at any time to the complete state of data in any system and infrastructure it is distributed to.We present micro-benchmarks and usage scenarios that demonstrate the expressivity of the programming model and the implementationquality. Finally, we describe the implementation of a Data Surveillance framework based on Active Data for theAdvanced Photon Source experiment that allows scientists to monitor the progress of their data, automate most manual tasks,get relevant notifications from huge amount of events, and detect and recover from errors without human intervention.This work provides interesting perspectives in data provenance and open data in particular, while facilitating collaboration betweenscientists from different communities.
|
768 |
On Scalable Reconfigurable Component Models for High-Performance Computing / Modèles à composants reconfigurables et passant à l'échelle pour le calcul haute performanceLanore, Vincent 10 December 2015 (has links)
La programmation à base de composants est un paradigme de programmation qui facilite la réutilisation de code et la séparation des préoccupations. Les modèles à composants dits « reconfigurables » permettent de modifier en cours d'exécution la structure d'une application. Toutefois, ces modèles ne sont pas adaptés au calcul haute performance (HPC) car ils reposent sur des mécanismes ne passant pas à l'échelle.L'objectif de cette thèse est de fournir des modèles, des algorithmes et des outils pour faciliter le développement d'applications HPC reconfigurables à base de composants. La principale contribution de la thèse est le modèle à composants formel DirectMOD qui facilite l'écriture et la réutilisation de code de transformation distribuée. Afin de faciliter l'utilisation de ce premier modèle, nous avons également proposé :• le modèle formel SpecMOD qui permet la spécialisation automatique d'assemblage de composants afin de fournir des fonctionnalités de génie logiciel de haut niveau ; • des mécanismes de reconfiguration performants à grain fin pour les applications AMR, une classe d'application importante en HPC.Une implémentation de DirectMOD, appelée DirectL2C, a été réalisée et a permis d'implémenter une série de benchmarks basés sur l'AMR pour évaluer notre approche. Des expériences sur grappes de calcul et supercalculateur montrent que notre approche passe à l'échelle. De plus, une analyse quantitative du code produit montre que notre approche est compacte et facilite la réutilisation. / Component-based programming is a programming paradigm which eases code reuse and separation of concerns. Some component models, which are said to be "reconfigurable", allow the modification at runtime of an application's structure. However, these models are not suited to High-Performance Computing (HPC) as they rely on non-scalable mechanisms.The goal of this thesis is to provide models, algorithms and tools to ease the development of component-based reconfigurable HPC applications.The main contribution of the thesis is the DirectMOD component model which eases development and reuse of distributed transformations. In order to improve on this core model in other directions, we have also proposed:• the SpecMOD formal component model which allows automatic specialization of hierarchical component assemblies and provides high-level software engineering features;• mechanisms for efficient fine-grain reconfiguration for AMR applications, an important application class in HPC.An implementation of DirectMOD, called DirectL2C, as been developed so as to implement a series of benchmarks to evaluate our approach. Experiments on HPC architectures show our approach scales. Moreover, a quantitative analysis of the benchmark's codes show that our approach is compact and eases reuse.
|
769 |
Co-conception Logiciel/FPGA pour Edge-computing : promotion de la conception orientée objet / software/FPGA co-design for Edge-computing : Promoting object-oriented designLe, Xuan Sang 31 May 2017 (has links)
L’informatique en nuage (cloud computing) est souvent le modèle de calcul le plus référencé pour l’internet des objets (Internet of Things).Ce modèle adopte une architecture où toutes les données de capteur sont stockées et traitées de façon centralisée. Malgré de nombreux avantages, cette architecture souffre d’une faible évolutivité alors même que les données disponibles sur le réseau sont en constante augmentation. Il est à noter que, déjà actuellement, plus de50 % des connexions sur Internet sont inter objets. Cela peut engendrer un problème de fiabilité dans les applications temps réel. Le calcul en périphérie (Edge computing) qui est basé sur une architecture décentralisée, est connue comme une solution pour ce problème émergent en : (1) renforçant l’équipement au bord du réseau et (2) poussant le traitement des données vers le bord.Le calcul en périphérie nécessite des noeuds de capteurs dotés d’une plus grande capacité logicielle et d’une plus grande puissance de traitement, bien que contraints en consommation d’énergie. Les systèmes matériels hybrides constitués de FPGAs et de processeurs offrent un bon compromis pour cette exigence. Les FPGAs sont connus pour permettre des calculs exhibant un parallélisme spatial, aussi que pour leur rapidité, tout en respectant un budget énergétique limité. Coupler un processeur au FPGA pour former un noeud garantit de disposer d’un environnement logiciel flexible pour ce nœud.La conception d’applications pour ce type de systèmes hybrides (réseau/logiciel/matériel) reste toujours une tâche difficile. Elle couvre un vaste domaine d’expertise allant du logiciel de haut niveau au matériel de bas niveau (FPGA). Il en résulte un flux de conception de système complexe, qui implique l’utilisation d’outils issus de différents domaines d’ingénierie. Une solution commune est de proposer un environnement de conception hétérogène qui combine/intègre l’ensemble de ces outils. Cependant, l’hétérogénéité intrinsèque de cette approche peut compromettre la fiabilité du système lors des échanges de données entre les outils.L’objectif de ce travail est de proposer une méthodologie et un environnement de conception homogène pour un tel système. Cela repose sur l’application d’une méthodologie de conception moderne, en particulier la conception orientée objet (OOD), au domaine des systèmes embarqués. Notre choix de OOD est motivé par la productivité avérée de cette méthodologie pour le développement des systèmes logiciels. Dans le cadre de cette thèse, nous visons à utiliser OOD pour développer un environnement de conception homogène pour les systèmes de type Edge Computing. Notre approche aborde trois problèmes de conception: (1) la conception matérielle, où les principes orientés objet et les patrons de conception sont utilisés pour améliorer la réutilisation, l’adaptabilité et l’extensibilité du système matériel. (2) la co-conception matériel/logiciel, pour laquelle nous proposons une utilisation de OOD afin d’abstraire l’intégration et la communication entre matériel et logiciel, ce qui encourage la modularité et la flexibilité du système. (3) la conception d’un intergiciel pour l’Edge Computing. Ainsi il est possible de reposer sur un environnement de développement centralisé des applications distribuées† tandis ce que l’intergiciel facilite l’intégration des nœuds périphériques dans le réseau, et en permet la reconfiguration automatique à distance. Au final, notre solution offre une flexibilité logicielle pour la mise en oeuvre d’algorithmes distribués complexes, et permet la pleine exploitation des performances des FPGAs. Ceux-ci sont placés dans les nœuds, au plus près de l’acquisition des données par les capteurs, pour déployer un premier traitement intensif efficace. / Cloud computing is often the most referenced computational model for Internet of Things. This model adopts a centralized architecture where all sensor data is stored and processed in a sole location. Despite of many advantages, this architecture suffers from a low scalability while the available data on the network is continuously increasing. It is worth noting that, currently, more than 50% internet connections are between things. This can lead to the reliability problem in realtime and latency-sensitive applications. Edge-computing which is based on a decentralized architecture, is known as a solution for this emerging problem by: (1) reinforcing the equipment at the edge (things) of the network and (2) pushing the data processing to the edge.Edge-centric computing requires sensors nodes with more software capability and processing power while, like any embedded systems, being constrained by energy consumption. Hybrid hardware systems consisting of FPGA and processor offer a good trade-off for this requirement. FPGAs are known to enable parallel and fast computation within a low energy budget. The coupled processor provides a flexible software environment for edge-centric nodes.Applications design for such hybrid network/software/hardware (SW/HW) system always remains a challenged task. It covers a large domain of system level design from high level software to low-level hardware (FPGA). This result in a complex system design flow and involves the use of tools from different engineering domains. A common solution is to propose a heterogeneous design environment which combining/integrating these tools together. However the heterogeneous nature of this approach can pose the reliability problem when it comes to data exchanges between tools.Our motivation is to propose a homogeneous design methodology and environment for such system. We study the application of a modern design methodology, in particular object-oriented design (OOD), to the field of embedded systems. Our choice of OOD is motivated by the proven productivity of this methodology for the development of software systems. In the context of this thesis, we aim at using OOD to develop a homogeneous design environment for edge-centric systems. Our approach addresses three design concerns: (1) hardware design where object-oriented principles and design patterns are used to improve the reusability, adaptability, and extensibility of the hardware system. (2) hardware / software co-design, for which we propose to use OOD to abstract the SW/HW integration and the communication that encourages the system modularity and flexibility. (3) middleware design for Edge Computing. We rely on a centralized development environment for distributed applications, while the middleware facilitates the integration of the peripheral nodes in the network, and allows automatic remote reconfiguration. Ultimately, our solution offers software flexibility for the implementation of complex distributed algorithms, complemented by the full exploitation of FPGAs performance. These are placed in the nodes, as close as possible to the acquisition of the data by the sensors† in order to deploy a first effective intensive treatment.
|
770 |
Effet de blocage dans un écoulement turbulent non cisaillé / Blocking effect in a shearless turbulent flow fieldBodart, Julien 21 December 2009 (has links)
Un code de résolution des équations de Navier-Stokes pour un fluide incompressible a été développé en utilisant une approche mixte spectral/différences finies, compatible avec une mise en oeuvre dans un environnement massivement parallèle. On procède, grâce à ce nouvel outil, à des simulations directes de la turbulence dans une configuration où l'agitation est synthétisée à l'aide d'un forçage aléatoire. La production de turbulence est confinée dans une couche centrale du domaine et s'auto-diffuse en direction d'une surface libre ou d'une paroi adhérente. Dans cette configuration on obtient un état statistiquement stationnaire où le cisaillement moyen, généralement à l'origine de la production de la turbulence, est nul. Ces conditions permettent de mieux comprendre l'origine du transfert intercomposantes, caractéristique de la partie lente du terme de corrélation pression-déformation dans les équations-bilan des tensions de Reynolds. L'accent est mis sur l'analyse de ce transfert lorsqu'il s'effectue sous l'influence de l'effet de blocage au voisinage d'une surface. Les résultats obtenus permettront de mieux appréhender la modélisation des termes de corrélation pression-déformation au voisinage d'une paroi dans les modèles de fermeture au second ordre. / A Navier-Stokes solver for incompressible flow has been developed using a mixed spectral/finite-difference approach, while being compatible with a massively parallel environment. We use it to perform direct numerical simulations in a situation where the turbulent agitation is synthesized under the action of a random forcing. The turbulence production is confined in a central layer and self-diffuses towards a free-slip or no-slip surface. With this set-up, we obtain a statistical steady state in which the mean shear, usually associated with the turbulence production, is zero. These conditions allow a better understanding of the intercomponent energy transfer, induced by the slow part of the pressure-strain correlation in the Reynolds tensor budget. We focus on this transfer when it occurs in combination with the blocking effect, in the vicinity of the surface. The results will help to model the pressure-strain correlation in a second- order-closure context.
|
Page generated in 0.0345 seconds