Using High-Level Petri Nets for Hierarchical Grid Workflows
ABSTRACT An increasingly popular application programming model for Grids is to deploy often-used functionalities as remote services on high-performance hosts, following the principles of a service-oriented architecture. Complex applications are created by using several services and specifying a workflow between them. We discuss how workflows of Grid applications can be described easily as High-Level Petri Nets (HLPN), in order to orchestrate and execute distributed applications on the Grid automatically. In order to simplify the handling of complex and large-scale workflows, we introduce hierarchical Grid workflows, making use of the Petri Net refinement paradigm that allows to represent sub-workflows by single graph elements. We show how a complex application, the Barnes-Hut algorithm for N-Body simulation can be expressed as a hierarchical HLPN, using our platform-independent, XML-based Grid Workflow Description Language (GWorkflowDL). We discuss how the GWorkflowDL can be adapted to current Grid technologies, in particular to Java/RMI and the recent WSRF framework.
- [show abstract] [hide abstract]
ABSTRACT: We address the challenging problem of algorithm and program design forthe Computational Grid by providing the application user with a set of high-level, parameterizedcomponents called skeletons. We describe a Java-based Grid programmingsystem in which algorithms are composed of skeletons and the computational resourcesfor executing individual skeletons are chosen using performance prediction. The advantageof our approach is that skeletons are reusable for dierent applications and...Parallel Processing Letters. 01/2002; 12:157-174.
Conference Proceeding: An Introduction to the Theoretical Aspects of Coloured Petri Nets.[show abstract] [hide abstract]
ABSTRACT: This paper presents the basic theoretical aspects of Coloured Petri Nets (CP-nets or CPN). CP-nets have been developed, from being a promising theoretical model, to being a full-fledged language for the design, specification, simulation, validation and implementation of large software systems (and other systems in which human beings and/or computers communicate by means of some more or less formal rules). The paper contains the formal definition of CP-nets and their basic concepts (e.g., the different dynamic properties such as liveness and fairness). The paper also contains a short introduction to the analysis methods, in particular occurrence graphs and place invariants. The development of CP-nets has been driven by the desire to develop a modelling language - at the same time theoretically well-founded and versatile enough to be used in practice for systems of the size and complexity that we find in typical industrial projects. To achieve this, we have combined the strength of Petri nets with the strength of programming languages. Petri nets provide the primitives for the description of the synchronisation of concurrent processes, while programming languages provide the primitives for the definition of data types and the manipulation of their data values. The paper does not assume that the reader has any prior knowledge of Petri nets - although such knowledge will, of course, be a help.A Decade of Concurrency, Reflections and Perspectives, REX School/Symposium, Noordwijkerhout, The Netherlands, June 1-4, 1993, Proceedings; 01/1993
- [show abstract] [hide abstract]
ABSTRACT: The problem of simulating the motion of a set of bodies arises in a variety of domains such as astrophysics, molecular dynamics, fluid dynamics, and high energy physics. The all-to-all nature of interaction between various bodies renders this problem extremely computation-intensive. Techniques based on hierarchical approximations have effectively reduced the complexity of this problem. Coupled with parallel processing, these techniques hold the promise of large scale n-body simulations. In this paper, we present a spectrum of parallel formulations that are suited for different particle distributions. We first present a parallel formulation that uses a static partitioning of the domain and assignment of subdomains to processors. We demonstrate that this scheme delivers acceptable load balance, and coupled with two collective communication operations, it yields good performance. We present a second parallel formulation that combines static decomposition of the domain with an assignment of subdomains to processors based on Morton ordering. This alleviates the load imbalance inherent in the first scheme. We generalize these schemes to dynamic domain decomposition coupled with a subtree assignment that tries to optimize locality of processor subdomains. Unlike existing schemes that are based on shipping data to processors needing them, our schemes are based on shipping computation to processors where data reside. We present an experimental evaluation of our schemes on a 256 processor nCUBE2 and a 256 processor CM5. The evaluation is based on an astrophysical simulation of a variety of Gaussian and Plummer distributions of varying irregularity. We study the impact of a variety of parameters such as the impact of multipole degree and the α-criterion on accuracy and parallel performance. We demonstrate that our parallel formulations yield excellent performance and scale up to a large number of processors, making it possible to run realistic simulations with millions of particles. Furthermore, we show that as the accuracy of simulations is increased by increasing multipole degree, our formulations yield improved efficiencies.Parallel Computing. 01/1998;