342 research outputs found
MECCA - KPP Fortran to CUDA source-to-source pre-processor - Alpha Version
<p>The MECCA - KPP parser is written in the Python programming language and generates CUDA compatible solvers, by parsing the auto-generated FORTRAN code output by the KPP preprocessor.</p>
<p><br>
The user executes the parser from the messy/util directory to transform the code. The parser modifies the messy/smcl/messy_mecca_kpp.f90 file and places a single call to the CUDA source file that contains the accelerated code (messy/smcl/messy_mecca_kpp_acc.cu) and a wrapper function for issuing the parallel kernels and copying the data to and from the GPU.</p>
Optimization techniques for fine-grained communication in PGAS environments
Partitioned Global Address Space (PGAS) languages promise to deliver improved programmer productivity and good performance in large-scale parallel machines. However, adequate performance for applications that rely on fine-grained communication without compromising their programmability is difficult to achieve. Manual or compiler assistance code optimization is required to avoid fine-grained accesses. The downside of manually applying code transformations is the increased program complexity and hindering of the programmer productivity. On the other hand, compiler optimizations of fine-grained accesses require knowledge of physical data mapping and the use of parallel loop constructs.
This thesis presents optimizations for solving the three main challenges of the fine-grain communication: (i) low network communication efficiency; (ii) large number of runtime calls; and (iii) network hotspot creation for the non-uniform distribution of network communication, To solve this problems, the dissertation presents three approaches. First, it presents an improved inspector-executor transformation to improve the network efficiency through runtime aggregation. Second, it presents incremental optimizations to the inspector-executor loop transformation to automatically remove the runtime calls. Finally, the thesis presents a loop scheduling loop transformation for avoiding network hotspots and the oversubscription of nodes. In contrast to previous work that use static coalescing, prefetching, limited privatization, and caching, the solutions presented in this thesis focus cover all the aspect of fine-grained communication, including reducing the number of calls generated by the compiler and minimizing the overhead of the inspector-executor optimization.
A performance evaluation with various microbenchmarks and benchmarks, aiming at predicting scaling and absolute performance numbers of a Power 775 machine, indicates that applications with regular accesses can achieve up to 180% of the performance of hand-optimized versions, while in applications with irregular accesses the transformations are expected to yield from 1.12X up to 6.3X speedup. The loop scheduling shows performance gains from 3-25% for NAS FT and bucket-sort benchmarks, and up to 3.4X speedup for the microbenchmarks.DOCTORAT EN ARQUITECTURA DE COMPUTADORS (Pla 2007
Prefazione [a: Michail Kuzmin, Le stagioni dell'amore, Bari, Stilo, 2020, 172 pp.]
"Kuranty ljubvi" (Le stagioni dell'amore) è un piccolo, ma poeticamente significativo, contributo alla produzione letteraria del Simbolismo russo nel segno della sintesi delle arti. Michail Kuzmin, uno dei più importanti scrittori di quell'epoca, è l'autore del ciclo poetico-musicale e delle partiture."Kuranty ljubvi" (The seasons of love) is a small but poetically significant contribution to the literary production of Russian Symbolism in the context of the synthesis of the arts. Michail Kuzmin, one of the most important writers of that era, is the author of the poetic-musical cycle and of the scores
Dei delitti e delle pene nella traduzione di Michail M. Scerbatov
After more than two centuries, this work presents the Russian version of “Dei delitti e delle pene” by Cesare Beccaria, translated by Prince Michail M. Šcerbatov. The edition, conducted on the autographed manuscript, is presented with the original Italian text. In the introductory study, the author traces the fundamental stages of the diffusion of Beccaria’s work in Russia, focusing in particular on the figure of Michail M. Isaev, scholar and translator of the masterpiece by Beccaria, who was the first to re-propose the modern organisation of the “Fifth” edition. The author gives an account of the version proposed by Šcerbatov, investigating its textual genesis and evaluating some aspects of the language used by the translator - first of all the lexicon used for the rendering of philosophical-political and legal terms
Accelerated chemical kinetics in the EMAC chemistry-climate model
The global climate model ECHAM/MESSy Atmospheric Chemistry (EMAC) is used to study climate change and air quality scenarios. The EMAC model is constituted by a nonlocal dynamical part with low scalability, and local physical/chemical processes with high scalability. The EMAC chemistry-climate model does not benefit from the support of accelerators which are nowadays installed in many HPC systems. We study strategies to offload the calculation of the atmospheric chemistry to accelerator technologies (GPU and Intel MIC), as in typical model configurations this is the most computational resource-demanding subtask. The proposed solutions extend the Kinetic Pre Processor (KPP) general purpose open-source software tool used in atmospheric chemistry
MECCA - KPP Fortran to CUDA source-to-source pre-processor
<p>This is the first release of the parser. The code was tested and found to be stable with the most commonly used configurations. The distribution includes a self-contained unit test.</p>
<p>This release corresponds to the source code described in Journal of Open Research Software.</p>
GPU-accelerated atmospheric chemical kinetics in the ECHAM/MESSy (EMAC) Earth system model (version 2.52)
Abstract. This paper presents an application of GPU accelerators in Earth system modeling. We focus on atmospheric chemical kinetics, one of the most computationally intensive tasks in climate–chemistry model simulations. We developed a software package that automatically generates CUDA kernels to numerically integrate atmospheric chemical kinetics in the global climate model ECHAM/MESSy Atmospheric Chemistry (EMAC), used to study climate change and air quality scenarios. A source-to-source compiler outputs a CUDA-compatible kernel by parsing the FORTRAN code generated by the Kinetic PreProcessor (KPP) general analysis tool. All Rosenbrock methods that are available in the KPP numerical library are supported.Performance evaluation, using Fermi and Pascal CUDA-enabled GPU accelerators, shows achieved speed-ups of 4. 5 × and 20. 4 × , respectively, of the kernel execution time. A node-to-node real-world production performance comparison shows a 1. 75 × speed-up over the non-accelerated application using the KPP three-stage Rosenbrock solver. We provide a detailed description of the code optimizations used to improve the performance including memory optimizations, control code simplification, and reduction of idle time. The accuracy and correctness of the accelerated implementation are evaluated by comparing to the CPU-only code of the application. The median relative difference is found to be less than 0.000000001 % when comparing the output of the accelerated kernel the CPU-only code.The approach followed, including the computational workload division, and the developed GPU solver code can potentially be used as the basis for hardware acceleration of numerous geoscientific models that rely on KPP for atmospheric chemical kinetics applications.
</jats:p
MEDINA: MECCA Development in Accelerators – KPP Fortran to CUDA source-to-source Pre-processor
The global climate model ECHAM/MESSy Atmospheric Chemistry (EMAC) is a modular global model that simulates climate change and air quality scenarios. The application includes different sub-models for the calculation of chemical species concentrations, their interaction with land and sea, and the human interaction. The paper presents a source-to-source parser that enables support for Graphics Processing Units (GPU) by the Kinetic Pre-Processor (KPP) general purpose open-source software tool. The requirements of the host system are also described. The source code of the source-to-source parser is available under the MIT License
Accelerating Atmospheric Chemical Kinetics for Climate Simulations
The study of atmospheric chemistry-climate interactions is one of today's great computational challenges. Advances in the architecture of Graphics Processing Units (GPUs) in both raw computational power and memory bandwidth sparked the interest for General-Purpose computing on graphics accelerators in scientific applications. However, the introduction of GPUs in the High Performance Computing (HPC) landscape increased the complexity of software development, due to the inherent heterogeneity requirements of programming models and design approaches, creating a gap in uptake and attainable performance in the presently available scientific community codes. This paper provides an overview of the challenges encountered when using GPU accelerators to achieve optimal performance to calculate the kinetics of chemical tracers in climate models, the techniques used to address them and the insights gained from the process. The paper presents the development of a chemical kinetics code-to-code parser to automatically generate chemical kinetics calculations on three different generations of GPU accelerators (M2070, K80, and P100). The accelerated portion of the application achieves a speedup of up to 22×, equivalent to performance gains of +19 percent up to +90 percent compared with the processor-only version, when using a cluster of 8 Nodes with dual Intel E5-2680 v3 processor and a Kepler architecture (K80), allowing faster completion of the simulations. The paper also provides practical insights and relevant considerations for the development and acceleration of complex applications
- …
