1 |
Multi-writer consistency conditions for shared memory objectsShao, Cheng 15 May 2009 (has links)
Regularity is a shared memory consistency condition that has received considerable attention, notably in connection with quorum-based shared memory. Lamport's
original definition of regularity assumed a single-writer model, however, and is not
well defined when each shared variable may have multiple writers. In this thesis, we
address this need by formally extending the notion of regularity to a multi-writer
model. We have shown that the extension is not trivial. While there exist various
ways to extend the single-writer definition, the resulting definitions will have different
strengths. Specifically, we give several possible definitions of regularity in the presence
of multiple writers. We then present a quorum-based algorithm to implement each of
the proposed definitions and prove them correct. We study the relationships between
these definitions and a number of other well-known consistency conditions, and give
a partial order describing the relative strengths of these consistency conditions. Finally, we provide a practical context for our results by studying the correctness of two
well-known algorithms for mutual exclusion under each of our proposed consistency
conditions.
|
2 |
Multi-writer consistency conditions for shared memory objectsShao, Cheng 10 October 2008 (has links)
Regularity is a shared memory consistency condition that has received considerable attention, notably in connection with quorum-based shared memory. Lamport's
original definition of regularity assumed a single-writer model, however, and is not
well defined when each shared variable may have multiple writers. In this thesis, we
address this need by formally extending the notion of regularity to a multi-writer
model. We have shown that the extension is not trivial. While there exist various
ways to extend the single-writer definition, the resulting definitions will have different
strengths. Specifically, we give several possible definitions of regularity in the presence
of multiple writers. We then present a quorum-based algorithm to implement each of
the proposed definitions and prove them correct. We study the relationships between
these definitions and a number of other well-known consistency conditions, and give
a partial order describing the relative strengths of these consistency conditions. Finally, we provide a practical context for our results by studying the correctness of two
well-known algorithms for mutual exclusion under each of our proposed consistency
conditions.
|
3 |
Modélisation et implémentation de parallélisme implicite pour les simulations scientifiques basées sur des maillages / Model and implementation of implicit parallélism for mesh-based scientific simulationsCoullon, Hélène 29 September 2014 (has links)
Le calcul scientifique parallèle est un domaine en plein essor qui permet à la fois d’augmenter la vitesse des longs traitements, de traiter des problèmes de taille plus importante ou encore des problèmes plus précis. Ce domaine permet donc d’aller plus loin dans les calculs scientifiques, d’obtenir des résultats plus pertinents, car plus précis, ou d’étudier des problèmes plus volumineux qu’auparavant. Dans le monde plus particulier de la simulation numérique scientifique, la résolution d’équations aux dérivées partielles (EDP) est un calcul particulièrement demandeur de ressources parallèles. Si les ressources matérielles permettant le calcul parallèle sont de plus en plus présentes et disponibles pour les scientifiques, à l’inverse leur utilisation et la programmation parallèle se démocratisent difficilement. Pour cette raison, des modèles de programmation parallèle, des outils de développement et même des langages de programmation parallèle ont vu le jour et visent à simplifier l’utilisation de ces machines. Il est toutefois difficile, dans ce domaine dit du “parallélisme implicite”, de trouver le niveau d’abstraction idéal pour les scientifiques, tout en réduisant l’effort de programmation. Ce travail de thèse propose tout d’abord un modèle permettant de mettre en oeuvre des solutions de parallélisme implicite pour les simulations numériques et la résolution d’EDP. Ce modèle est appelé “Structured Implicit Parallelism for scientific SIMulations” (SIPSim), et propose une vision au croisement de plusieurs types d’abstraction, en tentant de conserver les avantages de chaque vision. Une première implémentation de ce modèle, sous la forme d’une librairie C++ appelée SkelGIS, est proposée pour les maillages cartésiens à deux dimensions. Par la suite, SkelGIS, et donc l’implémentation du modèle, est étendue à des simulations numériques sur les réseaux (permettant l’application de simulations représentant plusieurs phénomènes physiques). Les performances de ces deux implémentations sont évaluées et analysées sur des cas d’application réels et complexes et démontrent qu’il est possible d’obtenir de bonnes performances en implémentant le modèle SIPSim. / Parallel scientific computations is an expanding domain of computer science which increases the speed of calculations and offers a way to deal with heavier or more accurate calculations. Thus, the interest of scientific computations increases, with more precised results and bigger physical domains to study. In the particular case of scientific numerical simulations, solving partial differential equations (PDEs) is an especially heavy calculation and a perfect applicant to parallel computations. On one hand, it is more and more easy to get an access to very powerfull parallel machines and clusters, but on the other hand parallel programming is hard to democratize, and most scientists are not able to use these machines. As a result, high level programming models, framework, libraries, languages etc. have been proposed to hide technical details of parallel programming. However, in this “implicit parallelism” field, it is difficult to find the good abstraction level while keeping a low programming effort. This thesis proposes a model to write implicit parallelism solutions for numerical simulations such as mesh-based PDEs computations. This model is called “Structured Implicit Parallelism for scientific SIMulations” (SIPSim), and proposes an approach at the crossroads of existing solutions, taking advantage of each one. A first implementation of this model is proposed, as a C++ library called SkelGIS, for two dimensional Cartesian meshes. A second implementation of the model, and an extension of SkelGIS, proposes an implicit parallelism solution for network-simulations (which deals with simulations with multiple physical phenomenons), and is studied in details. A performance analysis of both these implementations is given on real case simulations, and it demonstrates that the SIPSim model can be implemented efficiently.
|
Page generated in 0.0895 seconds