62 research outputs found

    GeantV: Results from the prototype of concurrent vector particle transport simulation in HEP

    Full text link
    Full detector simulation was among the largest CPU consumer in all CERN experiment software stacks for the first two runs of the Large Hadron Collider (LHC). In the early 2010's, the projections were that simulation demands would scale linearly with luminosity increase, compensated only partially by an increase of computing resources. The extension of fast simulation approaches to more use cases, covering a larger fraction of the simulation budget, is only part of the solution due to intrinsic precision limitations. The remainder corresponds to speeding-up the simulation software by several factors, which is out of reach using simple optimizations on the current code base. In this context, the GeantV R&D project was launched, aiming to redesign the legacy particle transport codes in order to make them benefit from fine-grained parallelism features such as vectorization, but also from increased code and data locality. This paper presents extensively the results and achievements of this R&D, as well as the conclusions and lessons learnt from the beta prototype.Comment: 34 pages, 26 figures, 24 table

    Analyse des synchronisations dans un programme parallèle ordonnancé par vol de travail. Applications à la génération déterministe de nombres pseudo-aléatoires.

    Get PDF
    We present two contributions to the field of parallel programming.The first contribution is theoretical: we introduce SIPS analysis, a novel approach to estimate the number of synchronizations performed during the execution of a parallel algorithm.Based on the concept of logical clocks, it allows us: on one hand, to deliver new bounds for the number of synchronizations, in expectation; on the other hand, to design more efficient parallel programs by dynamic adaptation of the granularity.The second contribution is pragmatic: we present an efficient parallelization strategy for pseudorandom number generation, independent of the number of concurrent processes participating in a computation.As an alternative to the use of one sequential generator per process, we introduce a generic API called Par-R, which is designed and analyzed using SIPS.Its main characteristic is the use of a sequential generator that can perform a ``jump-ahead'' directly from one number to another on an arbitrary distance within the pseudorandom sequence.Thanks to SIPS, we show that, in expectation, within an execution scheduled by work stealing of a "very parallel" program (whose depth or critical path is subtle when compared to the work or number of operations), these operations are rare.Par-R is compared with the parallel pseudorandom number generator DotMix, written for the Cilk Plus dynamic multithreading platform.The theoretical overhead of Par-R compares favorably to DotMix's overhead, what is confirmed experimentally, while not requiring a fixed generator underneath.Nous présentons deux contributions dans le domaine de la programmation parallèle.La première est théorique : nous introduisons l'analyse SIPS, une approche nouvelle pour dénombrer le nombre d'opérations de synchronisation durant l'exécution d'un algorithme parallèle ordonnancé par vol de travail.Basée sur le concept d'horloges logiques, elle nous permet,: d'une part de donner de nouvelles majorations de coût en moyenne; d'autre part de concevoir des programmes parallèles plus efficaces par adaptation dynamique de la granularité.La seconde contribution est pragmatique: nous présentons une parallélisation générique d'algorithmes pour la génération déterministe de nombres pseudo-aléatoires, indépendamment du nombre de processus concurrents lors de l'exécution.Alternative à l'utilisation d'un générateur pseudo-aléatoire séquentiel par processus, nous introduisons une API générique, appelée Par-R qui est conçue et analysée grâce à SIPS.Sa caractéristique principale est d'exploiter un générateur séquentiel qui peut "sauter" directement d'un nombre à un autre situé à une distance arbitraire dans la séquence pseudo-aléatoire.Grâce à l'analyse SIPS, nous montrons qu'en moyenne, lors d'une exécution par vol de travail d'un programme très parallèle (dont la profondeur ou chemin critique est très petite devant le travail ou nombre d'opérations), ces opérations de saut sont rares.Par-R est comparé au générateur pseudo-aléatoire DotMix, écrit pour Cilk Plus, une extension de C/C++ pour la programmation parallèle par vol de travail.Le surcout théorique de Par-R se compare favorablement au surcoput de DotMix, ce qui apparait aussi expériemntalement.De plus, étant générique, Par-R est indépendant du générateur séquentiel sous-jacent

    Embedded multilevel monte carlo for uncertainty quantification in random domains

    Get PDF
    The multilevel Monte Carlo (MLMC) method has proven to be an effective variance-reduction statistical method for uncertainty quantification (UQ) in partial differential equation (PDE) models. It combines approximations at different levels of accuracy using a hierarchy of meshes whose generation is only possible for simple geometries. On top of that, MLMC and Monte Carlo (MC) for random domains involve the generation of a mesh for every sample. Here we consider the use of embedded methods which make use of simple background meshes of an artificial domain (a bounding-box) for which it is easy to define a mesh hierarchy. We use the recent aggregated finite element method (AgFEM) method, which permits to avoid ill-conditioning due to small cuts, to design an embedded MLMC (EMLMC) framework for (geometrically and topologically) random domains implicitly defined through a random level-set function. Predictions from existing theory are verified in numerical experiments and the use of AgFEM is statistically demonstrated to be crucial for complex and uncertain geometries in terms of robustness and computational cost.Peer ReviewedPostprint (author's final draft

    Embedded multilevel Monte Carlo for uncertainty quantification in random domains

    Get PDF
    The multilevel Monte Carlo (MLMC) method has proven to be an effective variance-reduction statistical method for Uncertainty quantification in PDE models. It combines approximations at different levels of accuracy using a hierarchy of meshes in a similar way as multigrid. The generation of body-fitted mesh hierarchies is only possible for simple geometries. On top of that, MLMC for random domains involves the generation of a mesh for every sample. Instead, here we consider the use of embedded methods which make use of simple background meshes of an artificial domain (a bounding-box) for which it is easy to define a mesh hierarchy, thus eliminating the need of body-fitted unstructured meshes, but can produce ill-conditioned discrete problems. To avoid this complication, we consider the recent aggregated finite element method (AgFEM). In particular, we design an embedded MLMC framework for (geometrically and topologically) random domains implicitly defined through a random level-set function, which makes use of a set of hierarchical background meshes and the AgFEM. Performance predictions from existing theory are verified statistically in three numerical experiments, namely the solution of the Poisson equation on a circular domain of random radius, the solution of the Poisson equation on a topologically identical but more complex domain, and the solution of a heat-transfer problem in a domain that has geometric and topological uncertainties. Finally, the use of AgFE is statistically demonstrated to be crucial for complex and uncertain geometries in terms of robustness and computational cost. Date: November 28, 2019

    Correlated Pseudorandomness from the Hardness of Quasi-Abelian Decoding

    Full text link
    Secure computation often benefits from the use of correlated randomness to achieve fast, non-cryptographic online protocols. A recent paradigm put forth by Boyle et al.\textit{et al.} (CCS 2018, Crypto 2019) showed how pseudorandom correlation generators (PCG) can be used to generate large amounts of useful forms of correlated (pseudo)randomness, using minimal interactions followed solely by local computations, yielding silent secure two-party computation protocols (protocols where the preprocessing phase requires almost no communication). An additional property called programmability allows to extend this to build N-party protocols. However, known constructions for programmable PCG's can only produce OLE's over large fields, and use rather new splittable Ring-LPN assumption. In this work, we overcome both limitations. To this end, we introduce the quasi-abelian syndrome decoding problem (QA-SD), a family of assumptions which generalises the well-established quasi-cyclic syndrome decoding assumption. Building upon QA-SD, we construct new programmable PCG's for OLE's over any field Fq\mathbb{F}_q with q>2q>2. Our analysis also sheds light on the security of the ring-LPN assumption used in Boyle et al.\textit{et al.} (Crypto 2020). Using our new PCG's, we obtain the first efficient N-party silent secure computation protocols for computing general arithmetic circuit over Fq\mathbb{F}_q for any q>2q>2.Comment: This is a long version of a paper accepted at CRYPTO'2
    • …
    corecore