Browsing by Author "D'Ambrosio, Donato"
Now showing 1 - 4 of 4
- Results Per Page
- Sort Options
Item 3d web-based parallel applications for the numerical modeling of natural phenomena(2014-11-28) Parise, Roberto; Leone, Nicola; D'Ambrosio, Donato; Spataro, WilliamIn this thesis, I designed and implemented three new web applications tai- lored for the Cellular Automata (CA) simulation models SCIDDICA-k1, SCIARA-fv3 and ABBAMPAU, making use of the GoogleWeb Toolkit frame- work and WebGL. Moreover, I have contributed to the optimizations of the numerical models mentioned above and I also developed part of a library, called OpenCAL, for developing CA simulation models in C/C++. In this case, my most signi - cant contribution regarded the support given to the parallelization through the OpenCL standard, in order to facilitate with a few lines of codes, the par- allelization for the execution on any device, especially on General Purpose Computation with Graphics Processing Units (GPGPU). The development of the web applications involved the implementation of strategies so that optimizing the server load in the connections' management and enhancing the real time visualization of maps on devices of any kind, even mobile. As regards the OpenCAL library, the tests performed on a test models has shown signi cant performance improvements in terms of speedup, thanks also to the use of some new optimization strategies. In this way, the validity of the use of graphics processing units as alternative to more expensive hardware solutions for the parallelization of CA models has been con rmed.Item Domain specific languages for parallel numerical modeling on structured grids(2019-01-17) De Rango, Alessio; Leone, Nicola; D'Ambrosio, Donato; Spataro, William; Mudalige, GihanHigh performance computing (HPC) is undergoing a period of enormous change. Due to the di culties in increasing clock frequency inde nitely (i.e., the breakdown of Dennard's scaling and power wall), the current direction is towards improving performance through increasing parallelism. However, there is no clear consensus yet on the best architecture for HPC, and di erent solutions are currently employed. As a consequence, applications targeting a given architecture can not be easily adapted to run on alternative solutions, since this would require a great e ort due to the need to deal with platform-speci c details. Since it is not known a priori which HPC architecture will prevail, the Scienti c Community is looking for a solution that could tackle the above mentioned issue. A possible solution consists in the adoption of a high-level abstraction development strategy based on Domain Speci c Languages (DSLs). Among them, OpenCAL (Open Computing Abstraction Layer) and OPS (Oxford Parallel Structured) have been proposed as domain speci c C/C++ data parallel libraries for structured grids. The aim of these libraries is to provide an abstract computing model able to hide any parallelization detail by targeting, at the same time, di erent current (and possibly future) parallel architectures. In this Thesis, I have contributed to the design and development of both the OpenCAL and OPS projects. In particular, my contribution to OpenCAL has regarded the development of the single-GPU and multi-GPU/multi-node components, namely OpenCAL-CL and OpenCAL-CLM, while my contribution to OPS has regarded the introduction of the OpenMP 4.0/4.5 support, as an alternative to OpenCL, CUDA and OpenACC, for exploiting modern many-core computing systems. Both the improved DSLs have been tested on di erent benchmarks, among which a fractal set generator, a graphics lter routine, and three di erent uid- ows applications, with more than satisfying results. In particular, OpenCAL was able to e ciently scale over larger computational domains with respect to its original implementation, thanks to the new multi-GPU/multi-node capabilities, while OPS was able to reach near optimal performance using the high-level OpenMP 4.0/4.5 speci cations on many-core accelerators with respect to the alternative low-level CUDA-based version.Item Parallel and evolutionary applications to cellular automata models for mitigation of lava flow invasions(2013-11-25) Filippone, Giuseppe; Spataro, William; D'Ambrosio, Donato; Marocco, Davide; Leone, NicolaIn the lava ow mitigation context, the determination of areas exposed to volcanic risk is crucial for diminishing consequences in terms of human causalities and damages of material properties. In order to mitigate the destructive e ects of lava ows along volcanic slopes, the building and positioning of arti cial barriers is fundamental for controlling and slowing down the lava ow advance. In this thesis, a decision support system for de ning and optimizing volcanic hazard mitigation interventions is proposed. The Cellular Automata numerical model SCIARA-fv2 for simulating lava ows at Mt Etna (Italy) and Parallel Genetic Algorithms (PGA) for optimizing protective measures construction by morphological evolution have been considered. In particular, the PGA application regarded the optimization of the position, orientation and extension of earth barriers built to protect Rifugio Sapienza, a touristic facility located near the summit of the volcano. A preliminary release of the algorithm, called single barrier approach (SBA), was initially considered. Subsequently, a second GA strategy, called Evolutionary Greedy Strategy (EGS), was implemented by introducing multibarrier protection measures in order to improve the e ciency of the nal solution. Finally, a Coevolutionary Cooperative Strategy (CCS), has been introduced where all barriers are encoded in the genotype and, because all the constituents parts of the solution interact with the GA environment, a mechanism of cooperation between individuals has been favored. Solutions provided by CCS were extremely e cient and, in particular, the extent of the barriers in terms of volume used to deviate the ow thus avoiding that the lava reaches the inhabited area was less than 72% respect to the EGS 3and 284% respect to the SBA. It is also worth to note that the best set of interventions provided by CCS was approximately eighteen times more ef- cient than the one applied to divert the lava ow away from the facilities during the 2001 Mt.Etna eruption. Due to the highly intensive computational processes involved, General- Purpose Computation with Graphics Processing Units (GPGPU) is applied to accelerate both single and multiple simultaneous running of SCIARAfv2 model using CUDA (Compute Uni ed Device Architecture). Using four di erent GPGPU devices, the study also illustrates several implementation strategies to speedup the overall process and discusses some numerical results obtained. Carried out experiments show that signi cant performance improvements are achieved with a parallel speedup of 77. Finally, to support the analysis phase of the results, an OpenGL and Qt extensible system for the interactive visualization of lava ows simulations was also developed. The System showed that it can run the combined rendering and simulations at interactive frame rate. The study has produced extremely positive results and represents, to our knowledge, the rst application of morphological evolution for lava flow mitigation.Item Seamless acceleratin numerical regular grid methods on manycore systems(2018-01-19) Spataro, Davide; Leone, Nicola; Spataro, William; D'Ambrosio, DonatoOver the last two decades, a lot has changed regarding the way modern scientific applications are designed, written and executed, especially in the field of data-analytics, scientific computing and visualization. Dedicated computing machines are nowadays large, powerful agglomerates of hundreds or thousands of multi-core computing nodes interconnected via network each coupled with multiple accelerators. Those kinds of parallel machines are very complex and their efficient programming is hard, bug-prone and time-consuming. In the field of scientific computing, and of modeling and simulation especially, parallel machines are used to obtain approximate numerical solutions to differential equations for which the classical approach often fails to solve them analytically making a numerical computer-based approach absolutely necessary. An approximate numerical solution of a partial differential equation can be obtained by applying a number of methods, as the finite element or finite difference method which yields approximate values of the unknowns at a discrete number of points over the domain. When large domains are considered, big parallel machines are required in order to process the resulting huge amount of mesh nodes. Parallel programming is notoriously complex, often requiring great programming efforts in order to obtain efficient solvers targeting large computing cluster. This is especially true since heterogeneous hardware and GPGPU has become mainstream. The main thrust of this work is the creation of a programming abstraction and a runtime library for seamless implementation of numerical methods on regular grids targeting different computer architecture: from commodity single-core laptops to large clusters of heterogeneous accelerators. A framework, OpenCAL had been developed, which exposes a domain specific language for the definition of a large class of numerical models and their subsequent deployment on the targeted machines. Architecture programming details are abstracted from the programmer that with little or no intervention at all can obtain a serial, multi-core, single-GPU, multi- GPUs and cluster of GPUs OpenCAL application. Results show that the framework is effective in reducing programmer effort in producing efficient parallel numerical solvers.