109,662 research outputs found

    Running parallel applications on a heterogeneous environment with accessible development practices and automatic scalability

    Get PDF
    Grid computing makes it possible to gather large quantities of resources to work on a problem. In order to exploit this potential, a framework that presents the resources to the user programmer in a form that maintains productivity is necessary. The framework must not only provide accessible development, but it must make efficient use of the resources. The Seeds framework is proposed. It uses the current Grid and distributed computing middleware to provide a parallel programming environment to a wider community of programmers. The framework was used to investigate the feasibility of scaling skeleton/pattern parallel programming into Grid computing. The research accomplished two goals: it made parallel programming on the Grid more accessible to domain­specific programmers, and it made parallel programs scale on a heterogeneous resource environ­ ment. Programming is made easier to the programmer by using skeleton and pat­ tern­based programming approaches that effectively isolate the program from the envi­ ronment. To extend the pattern approach, the pattern adder operator is proposed, imple­ mented and tested. The results show the pattern operator can reduce the number of lines of code when compared with an MPJ­Express implementation for a stencil algorithm while having an overhead of at most ten microseconds per iteration. The research in scal­ ability involved adapting existing load­balancing techniques to skeletons and patterns re­ quiring little additional configuration on the part of the programmer. The hierarchical de­ pendency concept is proposed as well, which uses a streamed data flow programming model. The concept introduces data flow computation hibernation and dependencies that can split to accommodate additional processors. The results from implementing skeleton/patterns on hierarchical dependencies show an 18.23% increase in code is neces­ sary to enable automatic scalability. The concept can increase speedup depending on the algorithm and grain size

    Creating scalable traffic simulation on clusters

    Get PDF
    We describe the implementation of a transport simulation in a parallel environment. The implementation is based on a graphical parallel programming environment called P-GRADE. The transport simulator, called MadCity, simulates a specific road network of a city and shows cars moving on the roads. To achieve scalability of the traffic simulation, the use of templates is necessary. This helps to control the number of participating processes required for the simulation without making modifications to the simulator's source code. Performance results are collected from four, eight and sixteen nodes of the Parsifal cluster and compared with the sequential execution results of the simulator. The implementation of the transport simulator is extended further to support the simulation of multiple cities within the same cluster and on the Grid

    A Virtualized SGE-based Computational Cluster for Heterogeneous Environments

    Get PDF
    The computing and modeling environment of IIASA was studied in the context of computation-intensive ad resource-demanding applications/models which are being developed and used by the researchers/scientists of IIASA. High Performance Computing applicatins can be classified into two broad computing fields; sequential distributed and parallel distributed applications and these applications has been developed for heterogeneous operating system architectures such as Linux, Windows and Solaris etc. Majority of IIASA applications/models belong to the latter class of computing and these applications are resource demanding when the extensive and repetitive use of these applications is required according to the need of some research study. Not every sequential application can be easily parallelized; therefore, instead of re-programming sequental applications into parallel ones, the idea of distributing such applications on computing cluster/grid is often an effective approach for accelerating the work. In the light of available computing resources and modest modeling environment of IIASA, the virtualization and Sun Grid Engine (batch job scheduler and manager for cluster/grid) was efficiently exploited and designed, built and tested. This resulted in a computational cluster supporting multiple operating systems and multiple sequential distributed and parallel distributed applications/models along with multiple job execution types such as binaries and JAVA

    GPU Accelerated Multi-agent Path Planning Based on Grid Space Decomposition

    Get PDF
    In this work, we describe a simple and powerful method to implement real-time multi-agent path-finding on Graphics Processor Units (GPUs). The technique aims to find potential paths for many thousands of agents, using the A* algorithm and an input grid map partitioned into blocks. We propose an implementation for the GPU that uses a search space decomposition approach to break down the forward search A* algorithm into parallel independently forward sub-searches. We show that this approach fits well with the programming model of GPUs, enabling planning for many thousands of agents in parallel in real-time applications such as computer games and robotics. The paper describes this implementation using the Compute Unified Device Architecture programming environment, and demonstrates its advantages in GPU performance compared to GPU implementation of Real-Time Adaptive A*

    An object-oriented model for adaptive high-performance computing on the computational GRID

    Get PDF
    The dissertation presents a new parallel programming paradigm for developing high performance (HPC) applications on the Grid. We address the question "How to tailor HPC applications to the Grid?" where the heterogeneity and the large scale of resources are the two main issues. We respond to the question at two different levels: the programming tool level and the parallelization concept level. At the programming tool level, the adaptation of applications to the Grid environment consists of two forms: either the application components should somehow decompose dynamically based on the available resources; or the components should be able to ask the infrastructure to select automatically the suitable resources by providing descriptive information about the resource requirements. These two forms of adaptation lead to the parallel object model on which resource requirements are integrated into shareable distributed objects under the form of object descriptions. We develop a tool called ParoC++ that implements the parallel object model. ParoC++ provides a comprehensive object-oriented infrastructure for developing and integrating HPC applications, for managing the Grid environment and for executing applications on the Grid. At the parallelization concept level, we investigate the parallelization scheme which provides the user a method to express the parallelism to satisfy the user specified time constraints for a class of problems with known (or well-estimated) complexities on the Grid. The parallelization scheme is constructed on the following two principal elements: the decomposition tree which represents the multi-level decomposition and the decomposition dependency graph which defines the partial order of execution within each decomposition. Through the scheme, the parallelism grain will be automatically chosen based on the available resources at run-time. The parallelization scheme framework has been implemented using the ParoC++. This framework provides a high level abstraction which hides all of the complexities of the Grid environment so that users can focus on the "logic" of their problems. The dissertation has been accompanied with a series of benchmarks and two real life applications from image analysis for real-time textile manufacturing and from snow simulation and avalanche warning. The results show the effectiveness of ParoC++ on developing high performance computing applications and in particular for solving the time constraint problems on the Grid

    PER-MARE: Adaptive Deployment of MapReduce over Pervasive Grids

    No full text
    International audienceMapReduce is a parallel programming paradigm successfully used to perform computations on massive amounts of data, being widely deployed on clusters, grid, and cloud infrastructures. Interestingly, while the emergence of cloud in- frastructures has opened new perspectives, several enterprises hesitate to put sensible data on the cloud and prefer to rely on internal resources. In this paper we introduce the PER- MARE initiative, which aims at proposing scalable techniques to support existent MapReduce data-intensive applications in the context of loosely coupled networks such as pervasive and desktop grids. By relying on the MapReduce programming model, PER-MARE proposes to explore the potential advan- tages of using free unused resources available at enterprises as pervasive grids, alone or in a hybrid environment. This paper presents the main lines that orient the PER-MARE approach and some preliminary results

    Dynamic Adaptation of Parallel Codes: Toward Self-Adaptable Components for the Grid

    Get PDF
    International audienceOne of the challenges that come from the emergence of Grid architectures is to invent new programming techniques for these new platforms. As we explain in this chapter, we think that the architecture of the applications should reflect both the parallel and the distributed aspects of Grid architectures. It results in applications built as assemblies of parallel components. Since Grid architectures are known to be highly dynamic, using resources efficiently on such architectures is a challenging problem. Software must be able to react dynamically to the changes of the underlying execution environment. In order to help developers to create software for the Grid, we are investigating a model for the adaptation of parallel components. This chapter focuses on the adaptation mechanisms that are provided as a meta-level for components. We describe how a generic platform can help to develop efficient Grid software. First experimental results show the gain that can be expected from the use of such a platform

    Performance enhancement of a GIS-based facility location problem using desktop grid infrastructure

    Full text link
    This paper presents the integration of desktop grid infrastructure with GIS technologies, by proposing a parallel resolution method in a generic distributed environment. A case study focused on a discrete facility location problem, in the biomass area, exemplifies the high amount of computing resources (CPU, memory, HDD) required to solve the spatial problem. A comprehensive analysis is undertaken in order to analyse the behaviour of the grid-enabled GIS system. This analysis, consisting of a set of the experiments on the case study, concludes that the desktop grid infrastructure is able to use a commercial GIS system to solve the spatial problem achieving high speedup and computational resource utilization. Particularly, the results of the experiments showed an increase in speedup of fourteen times using sixteen computers and a computational efficiency greater than 87 % compared with the sequential procedure.This work has been developed under the support of the program Formacion de Personal Investigador, grants number BFPI/2009/103 and BES-2007-17019, from the Conselleria d'Educacio of the Generalitat Valenciana and the Spanish Ministry of Science and Technology.García García, A.; Perpiñá Castillo, C.; Alfonso Laguna, CD.; Hernández García, V. (2013). Performance enhancement of a GIS-based facility location problem using desktop grid infrastructure. Earth Science Informatics. 6(4):199-207. https://doi.org/10.1007/s12145-013-0119-1S19920764Anderson D (2004) Boinc: a system for public-resource computing and storage. Proceedings of the 5th IEEE/ACM International Workshop on Grid Computing. IEEE Computer Society, Washington DC, pp 4–10Available scripts webpage: http://personales.upv.es/angarg12/Campos I et al (2012) Modelling of a watershed: a distributed parallel application in a grid framework. Comput Informat 27(2):285–296Church RL (2002) Geographical information systems and location science. Comput Oper Res 29:541–562Clarke KC (1986) Advances in geographic information systems, computers. Environ Urban Syst 10:175–184Dowers S, Gittings BM, Mineter MJ (2000) Towards a framework for high-performance geocomputation: handling vector-topology within a distributed service environment. Comput Environ Urban Syst 24:471–486Geograma SL (2009). Teleatlas. http://www.geograma.com . Accessed September 2009GRASS Development Team (2012) GRASS GIS. http://grass.osgeo.org/Hoekstra AG, Sloot PMA (2005) Introducing grid speedup: a scalability metric for parallel applications on the grid, EGC 2005, LNCS 3470, pp. 245–254Hu Y et al. (2004) Feasibility study of geo-spatial analysis using grid computing. Computational Science-ICCS. Springer Berlin Heidelberg, 956–963Huang Z et al (2009) Geobarn: a practical grid geospatial database system. Adv Electr Comput Eng 9:7–11Huang F et al (2011) Explorations of the implementation of a parallel IDW interpolation algorithm in a Linux cluster-based parallel GIS. Comput Geosci 37:426–434Laure E et al (2006) Programming the grid with gLite. CMST 12(1):33–45Li WJ et al (2005) The Design and Implementation of GIS Grid Services. In: Zhuge H, Fox G (eds) Grid and Cooperative Computing. Vol. 3795 of Lecture Notes in Computer Science 10. Springer, Berlin, pp 220–225National Geographic Institute (2010) BCN25: numerical cartographic database. http://www.ign.es/ign/main/index.do . Accessed April 2010Open Geospatial Consortium, Inc (2012) Open GIS Specification Model, http://www.opengeospatial.org/Openshaw S, Turton I (1996) A parallel Kohonen algorithm for the classification of large spatial datasets. Comput Geosci 22:1019–1026Perpiñá C, Alfonso D, Pérez-Navarro A (2007) BIODER project: biomass distributed energy resources assessment and logistic strategies for sitting biomass plants in the Valencia province (Spain), 17th European Biomass Conference and Exhibition Proceedings, Hamburg, Germany, pp. 387–393Perpiñá C et al (2008) Methodology based on Geographic Information Systems for biomass logistics and transport optimization. Renew Energ 34:555–565Shen Z et al (2007) Distributed computing model for processing remotely sensed images based on grid computing. Inf Sci 177:504–518Spanish Ministry of Agriculture, fisheries and food (2009). http://www.magrama.gob.es/es/ . Accessed March 2009Spanish Ministry of Environment (2008). http://www.magrama.gob.es/es/ . Accessed May 2008University of California. List of BOINC projects. http://boinc.berkeley.edu/projects.phpXiao N, Fu W (2003) SDPG: Spatial data processing grid. J Comput Sci Technol 18:523–53

    libEMM: A fictious wave domain 3D CSEM modelling library bridging sequential and parallel GPU implementation

    Full text link
    This paper delivers a software -- libEMM -- for 3D controlled-source electromagnetics (CSEM) modelling in fictitious wave domain, based on the newly developed high-order finite-difference time-domain (FDTD) method on non-uniform grid. The numerical simulation can be carried out over a number of parallel processors using MPI-based high performance computing architecture. The FDTD kernel coded in C has been parallelized with OpenMP for speedup using local shared memory. In addition, the software features a GPU implementation of the same algorithm based on CUDA programming language, which can be cross-validated and compared in terms of efficiency. A perspective of libEMM on the horizon is its application to 3D CSEM inversion in land and marine environment
    corecore