Research at the Marta Kwiatkowska School of Computer Science www.mesc.bham.ac.uk.

Slides:



Advertisements
Similar presentations
A Workflow Engine with Multi-Level Parallelism Supports Qifeng Huang and Yan Huang School of Computer Science Cardiff University
Advertisements

What is Software Design?. Systems Development Life- Cycle Planning Analysis Design Implementation Design.
High Performance Computing Course Notes Grid Computing.
Sparse Computations: Better, Faster, Cheaper! Padma Raghavan Department of Computer Science and Engineering, The Pennsylvania State University
Simulation Where real stuff starts. ToC 1.What, transience, stationarity 2.How, discrete event, recurrence 3.Accuracy of output 4.Monte Carlo 5.Random.
Problem-Solving Environments: The Next Level in Software Integration David W. Walker Cardiff University.
UK e-Science and the White Rose Grid Paul Townend Distributed Systems and Services Group Informatics Research Institute University of Leeds.
1 An Empirical Study on Large-Scale Content-Based Image Retrieval Group Meeting Presented by Wyman
Monica Garika Chandana Guduru. METHODS TO SOLVE LINEAR SYSTEMS Direct methods Gaussian elimination method LU method for factorization Simplex method of.
Building Knowledge-Driven DSS and Mining Data
Software Issues Derived from Dr. Fawcett’s Slides Phil Pratt-Szeliga Fall 2009.
Medical Informatics Basics
Architectural Design.
Data Mining Techniques
COGNITIVE RADIO FOR NEXT-GENERATION WIRELESS NETWORKS: AN APPROACH TO OPPORTUNISTIC CHANNEL SELECTION IN IEEE BASED WIRELESS MESH Dusit Niyato,
Development in hardware – Why? Option: array of custom processing nodes Step 1: analyze the application and extract the component tasks Step 2: design.
An approach for solving the Helmholtz Equation on heterogeneous platforms An approach for solving the Helmholtz Equation on heterogeneous platforms G.
ROOT: A Data Mining Tool from CERN Arun Tripathi and Ravi Kumar 2008 CAS Ratemaking Seminar on Ratemaking 17 March 2008 Cambridge, Massachusetts.
© Fujitsu Laboratories of Europe 2009 HPC and Chaste: Towards Real-Time Simulation 24 March
Chapter 1 Introduction to Simulation
1 Application of multiprocessor and GRID technology in medical image processing IKTA /2002.
Neural and Evolutionary Computing - Lecture 10 1 Parallel and Distributed Models in Evolutionary Computing  Motivation  Parallelization models  Distributed.
1 ISA&D7‏/8‏/ ISA&D7‏/8‏/2013 Systems Development Life Cycle Phases and Activities in the SDLC Variations of the SDLC models.
Techniques for Analysis and Calibration of Multi- Agent Simulations Manuel Fehler Franziska Klügl Frank Puppe Universität Würzburg Lehrstuhl für Künstliche.
DISTRIBUTED COMPUTING
Computational issues in Carbon nanotube simulation Ashok Srinivasan Department of Computer Science Florida State University.
Future role of DMR in Cyber Infrastructure D. Ceperley NCSA, University of Illinois Urbana-Champaign N.B. All views expressed are my own.
Topology aggregation and Multi-constraint QoS routing Presented by Almas Ansari.
Ahsanul Haque *, Swarup Chandra *, Latifur Khan * and Michael Baron + * Department of Computer Science, University of Texas at Dallas + Department of Mathematical.
Linked-data and the Internet of Things Payam Barnaghi Centre for Communication Systems Research University of Surrey March 2012.
The roots of innovation Future and Emerging Technologies (FET) Future and Emerging Technologies (FET) The roots of innovation Proactive initiative on:
Issues in (Financial) High Performance Computing John Darlington Director Imperial College Internet Centre Fast Financial Algorithms and Computing 4th.
© 2012 xtUML.org Bill Chown – Mentor Graphics Model Driven Engineering.
Pascucci-1 Valerio Pascucci Director, CEDMAV Professor, SCI Institute & School of Computing Laboratory Fellow, PNNL Massive Data Management, Analysis,
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 14 Slide 1 Object-oriented Design.
SEEK Welcome Malcolm Atkinson Director 12 th May 2004.
Computer Science and Engineering Parallelizing Defect Detection and Categorization Using FREERIDE Leonid Glimcher P. 1 ipdps’05 Scaling and Parallelizing.
The Cosmic Cube Charles L. Seitz Presented By: Jason D. Robey 2 APR 03.
Performance evaluation on grid Zsolt Németh MTA SZTAKI Computer and Automation Research Institute.
11 CLUSTERING AND AVAILABILITY Chapter 11. Chapter 11: CLUSTERING AND AVAILABILITY2 OVERVIEW  Describe the clustering capabilities of Microsoft Windows.
Enabling e-Research in Combustion Research Community T.V Pham 1, P.M. Dew 1, L.M.S. Lau 1 and M.J. Pilling 2 1 School of Computing 2 School of Chemistry.
GEM: A Framework for Developing Shared- Memory Parallel GEnomic Applications on Memory Constrained Architectures Mucahid Kutlu Gagan Agrawal Department.
Architecture View Models A model is a complete, simplified description of a system from a particular perspective or viewpoint. There is no single view.
OPERATING SYSTEMS CS 3530 Summer 2014 Systems and Models Chapter 03.
Data Structures and Algorithms in Parallel Computing Lecture 7.
1 Distributed BDD-based Model Checking Orna Grumberg Technion, Israel Joint work with Tamir Heyman, Nili Ifergan, and Assaf Schuster CAV00, FMCAD00, CAV01,
Chapter 1 Basic Concepts of Operating Systems Introduction Software A program is a sequence of instructions that enables the computer to carry.
Università di Perugia Enabling Grids for E-sciencE Status of and requirements for Computational Chemistry NA4 – SA1 Meeting – 6 th April.
3/12/2013Computer Engg, IIT(BHU)1 INTRODUCTION-1.
A Pattern Language for Parallel Programming Beverly Sanders University of Florida.
A Structured Solution Approach for Markov Regenerative Processes Elvio G. Amparore 1, Peter Buchholz 2, Susanna Donatelli 1 1 Dipartimento di Informatica,
Monte Carlo Linear Algebra Techniques and Their Parallelization Ashok Srinivasan Computer Science Florida State University
Grid-enabled Probabilistic Model Checking with PRISM Yi Zhang, David Parker, Marta Kwiatkowska University of Birmingham.
DS-Grid: Large Scale Distributed Simulation on the Grid Georgios Theodoropoulos Midlands e-Science Centre University of Birmingham, UK Stephen John Turner,
Onlinedeeneislam.blogspot.com1 Design and Analysis of Algorithms Slide # 1 Download From
Use of Performance Prediction Techniques for Grid Management Junwei Cao University of Warwick April 2002.
Collaborative Tools for the Grid V.N Alexandrov S. Mehmood Hasan.
Multipole-Based Preconditioners for Sparse Linear Systems. Ananth Grama Purdue University. Supported by the National Science Foundation.
Victorian Curriculum F–10 Online professional learning session Unpacking Digital Technologies Paula Christophersen Digital Technologies, Curriculum Manager.
Resource Optimization for Publisher/Subscriber-based Avionics Systems Institute for Software Integrated Systems Vanderbilt University Nashville, Tennessee.
Multi-cellular paradigm The molecular level can support self- replication (and self- repair). But we also need cells that can be designed to fit the specific.
Mean Field Methods for Computer and Communication Systems Jean-Yves Le Boudec EPFL Network Science Workshop Hong Kong July
Sub-fields of computer science. Sub-fields of computer science.
Introduction to Parallel Computing: MPI, OpenMP and Hybrid Programming
Clouds , Grids and Clusters
MATLAB Distributed, and Other Toolboxes
What contribution can automated reasoning make to e-Science?
Algorithms for Big Data Delivery over the Internet of Things
Supported by the National Science Foundation.
L. Glimcher, R. Jin, G. Agrawal Presented by: Leo Glimcher
Presentation transcript:

Research at the Marta Kwiatkowska School of Computer Science

Overview  The Midlands e-Science Centre –Area of Excellence Modelling and Analysis of Large Complex Systems –Applications focus, rather than Grid middleware  Infrastructure –Computing and collaborative working –Centres  Projects –e-Science and Grid collaborations –Parallelising probabilistic model checking – a glimpse  Summary

Complex systems New field of science - study how parts of a system give rise to the collective behaviours, and how it interacts with its environment. Social science, medicine, weather, engineering, economy, management...

The Midlands e-Science Centre  Virtual Centre –collaborative  University of Birmingham –home Computer Science –Physics and Astronomy –Chemical Sciences –Biosciences –Engineering –Geography, Earth and Env. Sci. –Mathematics and Statistics –Medical School –Information Services  University of Warwick –Centre for Scientific Computing  University of Coventry  University of Wolverhampton

Infrastructure and Facilities  Computing and collaborative working –1000 CPU cluster in planning phase –Dedicated 100 CPU e-Science centre cluster –Various clusters on campus –Access Grid Node rooms (x2 at Birmingham +2)  Centres –VISTA, state-of-the-art HP visualisation centre –CERCIA, research into computational intelligence –CETADL, educational technology and distance learning –Henry Wellcome NMR  Informatics Collaborative Research Network –Collaborations within Birmingham

Visual and Spatial Technology Centre  Set up in partnership with HP  £4M investment  Association with several industrial partners (AVS, CFX, Fakespace, etc)  Scientific visualisation –geodata, medical imaging  Information visualisation –knowledge discovery  Data representation –understanding complex data  Immersive environments Image fusion of a series of MRI scans. Part of the internal structure of a hydrogen atom.

Research at MeSC  Research themes –Simulation of evolving systems of interacting components –Large-scale Grid-enabled distributed simulation –Mathematical solutions of large complex systems –Data mining and large-scale visualisation  Examples of expertise –bioinformatics, genomics, proteomics, etc –healthcare informatics –computational modelling of complex systems: biological processes, engineering structures, etc –security, reliability/correctness assurance –etc

Projects  At Birmingham –Biological modelling Integrative Biology, computational model of human heart, cancer modelling Predictive modelling, using probabilistic model checking with PRISM –Medical informatics cancerGrid, Cancer clinical trials: entry, randomisation and follow-up into hospital care e-TUMOUR (EU FP6 IP), MRI, web-enabled diagnosis, prognosis ePCRN (Primary Care), randomised trials –Physics GridPP, LIGO & LISA (GW), STAR (Nuclear Physics)

Projects continued…  At Birmingham –Engineering Fluidised beds, particulate processes (Engineering) –Simulation DS-Grid, Grid-enabled distributed simulation, applications in logistics, business –Social sciences COSI (Complexity in Social Sciences, EU)  At Warwick –PACE, Performance Analysis and Characterisation Environment –Molecular modelling

 e-Science pilot project, funded by EPSRC, £2.4m –Two components, computational modelling of human heart and modelling of cancer –Oxford, Nottingham, UCL, Leeds, Birmingham, Sheffield  Cancer modelling –3 institutions, 2 RFs & 10 PhDs –Multiscale –Tissue, cellular, subcellular, drug response –Colorectal cancer –Crypt formation –Cell migration in crypt, role of stem cells

 MRC funded e-Science project £2.2m –a consortium of specialists in oncology and software engineering drawn from UK Universities –Cambridge, Oxford, UCL, Birmingham, Belfast  Modular, distributed software solutions for the key problems of clinical cancer informatics –clinical trial patient entry, –randomisation and follow-up; –storage and analysis of complex datasets; –linking trial and epidemiology data with profiling information

Fluidised beds  Modelling and Simulation (DEM) of Particulate Processes –discontinuous, composed of many millions of particles –particles interact in various ways –aim to calculate properties of substance: elasticity, texture, feel –Grid technology needed because of sheer scale of models  Research in Chemical and Civil Engineering –funding grid enable from EPSRC Pharmaceuticals, foods, powders, aerosols, soils,...

 University of Birmingham, Nottingham and Nanyang Technological University, Singapore  One of four “ Sister Projects ” funded by the e-Science Core Programme - first UK-Singapore Grid link A Grid “plug-and-play” distributed collaborative simulation environment DS-Grid: distributed simulation

Grid-enabled PRISM  Probabilistic model checking –What does it involve? –Symbolic MTBDD-based techniques –The PRISM tool  Parallel symbolic CTMC solution –Why Gauss-Seidel? –Wavefront technology –Implementation –Experimental results  Applications –Analysis of Internet protocols –Modelling of biological processes, sponsored by Microsoft

Probabilistic model checking… Probabilistic Model Checker Probabilistic temporal logic specification send  P ¸  (  deliver) or  in a nutshell Probabilistic model The probability State 5: State 6: State 7: 1.0 … State 12: 0 State 13: or

Probabilistic model checking inputs…  Models –discrete time Markov chains (DTMCs) –continuous time Markov chains (CTMCs) –Markov decision processes (MDPs) –(currently indirectly) probabilistic timed automata (PTAs)  (Yes/No) temporal logic specification languages –Probabilistic temporal logic PCTL (for DTMCs/MDPs) –Continuous Stochastic Logic CSL (for CTMCs) –Probabilistic timed computation tree logic PTCTL (for PTAs)  Quantitative specification language variants –Probability values for logics PCTL/CSL/PTCTL (for all models) –Extension with expectation operator (for all) –Extension with costs/rewards (for all)

Probabilistic model checking involves…  Construction of models: –discrete and continuous Markov chains (DTMCs/CTMCs) –Markov decision processes (MDPs), and –probabilistic timed automata (PTAs)  Implementation of probabilistic model checking algorithms –graph-theoretical algorithms, combined with (probabilistic) reachability qualitative probabilistic model checking (for 0/1 probability) –numerical computation – iterative methods quantitative model checking (plot probability values, expectations, rewards, steady-state, etc, for a range of parameters) exhaustive, unlike simulation

The PRISM probabilistic model checker  History –Implemented at the University of Birmingham –First public release September 2001, ~7 years development –Open source, GPL licence, available freely –>2500 downloads, many users worldwide, >80 papers using PRISM, ~50 case studies and 6 flaws, connection to several tools, …  Approach –Based on symbolic, BDD-based techniques –Multi-Terminal BDDs, first algorithm [ICALP’97]  –For software, publications, case studies, taught courses using PRISM, etc

Screenshot of PRISM GUI

Overview of PRISM  Functionality –Implements temporal logic probabilistic model checking –Construction of models: discrete and continuous Markov chains (DTMCs/CTMCs), and Markov decision processes (MDPs) –Probabilistic temporal logics: PCTL and CSL –Extension with costs/rewards, expectation operator  Underlying computation combines graph-theoretical algorithms –Reachability, qualitative model checking, BDD-based with numerical computation – iterative methods –Linear equation system solution - Jacobi, Gauss-Seidel,... –Uniformisation (CTMCs) –Dynamic programming (MDPs) –Explicit and symbolic (MTBDDs, etc.) –Now Grid enabled, see [AHM’05]

PRISM real-world case studies  CTMCs –Dynamic power management [HLDVT’02, FAC 2005] –Dependability of embedded controller [INCOM’04] –RKIP-inhibited ERK pathway (by Calder et al) [CMSB’01] –Eukaryotic cell cycle control (based on Lecca & Priami)  MDPs/DTMCs –Bluetooth device discovery [ISOLA’04] –Crowds anonymity protocol (by Shmatikov) [CSFW’02, JSC 2003] –Randomised consensus [CAV’01,FORTE’02] –Contract signing protocols (by Norman & Shmatikov) [FASEC’02] –Reliability of NAND multiplexing (with Shukla) [VLSI’04,TCAD 2005]  PTAs –IPv4 ZeroConf dynamic configuration [FORMATS’03] –Root contention in IEEE 1394 FireWire [FAC 2003, STTT 2004] –IEEE (WiFi) Wireless LAN MAC protocol [PROBMIV’02]

Motivation  Experience with PRISM indicates –Symbolic representation very compact, 10 8 states for CTMCs can be solved with hybrid data structure on single CPU –Extremely large models feasible depending on regularity –Need efficient analysis techniques for very large models  Our approach –Focus on steady-state solution for CTMCs, can generalise –Consider Gauss-Seidel method Faster convergence than Jacobi, only one vector needed but challenging to parallelise because of dependencies –Use wavefront techniques to parallelise  Advantages of symbolic approach –Facilitates extraction of the dependency information –Compact matrix storage, vector storage main limitation

What we have learnt from practice  Probabilistic model checking –Is capable of finding ‘corner cases’ and ‘unusual trends’ –Good for worst-case scenarios, for all initial states –Benefits from quantitative-style analysis for a range of parameters –Is limited by state space size –Useful for real-world protocol analysis, power management, performance, biological processes, …  Simulation and sampling-based techniques –Limited by accuracy of the results, not state-space explosion –May need to rerun experiments for each possible start state, not always feasible –Statistical methods in conjunction with sampling help –Nested formulas may be difficult

New directions and challenges  Often not practical to analyse the full system beforehand –Adaptive methods Genetic algorithm-based methods [Jarvis et al, 2005] –Online methods Continuous approximations using ODEs [Gilmore et al, 2005] Applicable for sufficiently large numbers of entities Work with PEPA, derivation of ODEs  Scalability challenge –State-space explosion has not gone away… –Parallelisation –Distributed computation –Compositionality –Abstraction –Approximate methods

Why Grid-enable?  Experience with PRISM indicates –Symbolic representation very compact, >10 10 states for CTMCs –Extremely large models feasible depending on regularity –Numerical computation often slow –Sampling-based computation can be even slower  Can parallelise the symbolic approach –Facilitates extraction of the dependency information –Compactness enables storage of the full matrix at each node –Focus on steady-state solution for CTMCs, can generalise –Use wavefront techniques to parallelise  Easy to distribute sampling-based computation –Individual simulation runs are independent

Numerical Solution for CTMCs  Steady-state probability distribution can be obtained by solving linear equation system: –  Q = 0 with constraint  i  i = 1  We consider the more general problem of solving: –Ax = b, –where A is n  n matrix, b vector of length n  Numerical solution techniques –Direct, not feasible for very large models –Iterative stationary (Jacobi, Gauss-Seidel), memory efficient –Projection methods (Krylov, CGS, …), fastest convergence, but require several vectors  Transient probabilities similar –Computed via an iterative method (uniformisation)

Gauss-Seidel  Computes one matrix row at a time  Updates i th element using most up-to-date values  Computation for a single iteration, n  n matrix: 1.for (0 · i · n-1) 2. x i := (b i -  0 · j · n-1, j  i A ij ¢ x j ) / A ii  Can be reformulated in block form, N  N blocks, length M 1.for (0 · p · N-1) 2. v := b (p) 3. for each block A (pq) with q  p 4. v := v - A (pq) x (q) 5. for (0 · i · M-1,i  j) 6. x (p)i := (v i -  0 · j · M A (pp)ij ¢ x (p)j ) / A (pp)ii  Computes one matrix block at a time

Parallelising Gauss-Seidel  Inherently sequential for dense matrices –Uses results from current and previous iterations  Permutation has no effect on correctness of the result –Can be exploited to achieve parallelisation for certain sparse matrix problems, e.g. Koester, Ranka & Fox 1994  The block formulation helps, although –Requires row-wise access to blocks and block entries –Need to respect computational dependencies, i.e. when computing vector block x (p), use values from current iteration for blocks q p  Idea: propose to use wavefront techniques –Extract dependency information and form execution schedule

Symbolic techniques for CTMCs  Explicit matrix representation –Intractable for very large matrices  Symbolic representations –e.g. Multi-Terminal Binary Decision Diagrams (MTBDDs), matrix diagrams and Kronecker representation –Exploit regularity to obtain compact matrix storage –Also faster model construction, reachability, etc –Sometimes also beneficial for vector storage  This paper uses MTBDDs (Clarke et al) and derived structures –Underlying data structure of the PRISM model checker –Enhanced with caching-based techniques that substantially improve numerical efficiency

MTBDD data structures  Recursive, based on Binary Decision Diagrams (BDDs) –Stored in reduced form (DAG), with isomorphic subtrees stored only once –Exploit regularity to obtain compact matrix storage

Matrices as MTBDDs  Representation –Root represents the whole matrix –Leaves store matrix entries, reachable by following paths from the root node

Matrices as MTBDDs  Recursively descending through the tree –Divides the matrix into submatrices –One level, divide into two submatrices

Matrices as MTBDDs  Recursively descending through the tree –Provides a convenient block decomposition –Two levels, divide into four blocks

A two-layer structure from MTBDDs  Can obtain block decomposition, store as two sparse matrices –Enables fast row-wise access to blocks and block entries (Parker’02, Mehmood’05)

Wavefront techniques  An approach to parallel programming, e.g. Joubert et al ‘ 98 –Divide a computation into many tasks –Form a schedule for these tasks  A schedule contains several wavefronts –Each wavefront comprises tasks that are algorithmically independent of each other –i.e. correctness is not affected by the order of execution  The execution is carried out from one wavefront to another –Tasks assigned according to the dependency structure –Each wavefront contains tasks that can be executed in parallel

Exploiting Wavefront with MTBDDs  MTBDDs –Provide a convenient block decomposition of the matrix (computation) into submatrices (tasks) –Facilitate extraction of dependency information between blocks  A wavefront execution schedule formed from –Tasks, each determined by a matrix block –The computation order determined by the Gauss-Seidel algorithm and the dependency graph information  Our approach –First symbolic parallelisation of Gauss-Seidel, though Jacobi and CGS have been parallelised –The earlier non-symbolic parallelisation (Joubert et al) relies on permutation, not feasible in the symbolic context

A two-layer structure from MTBDDs  Can obtain block decomposition, store as two sparse matrices –Enables fast row-wise access to blocks and block entries (Parker’02, Mehmood’05)

Dependency graph from MTBDD  By traversal of top levels of MTBDD, as for top layer

Generating a Wavefront Schedule  By colouring the dependency graph  Can generate a schedule to let the computation perform from one colour to another

A Wavefront Parallel Gauss-Seidel  The computation ordering of Gauss-Seidel method is determined by the colouring scheme –Each processor is responsible for the computation and storage of every vector block associated with tasks assigned to it –The computation progresses from one colour to another –Tasks with the same colour are algorithmically independent of each other and can be executed in parallel –The completion of a task may enable tasks in the next colour to be executed  Note –Can store full matrix at each node, hence reduced communication costs, since only vector blocks need to be exchanged –(With two-layer data structure), faster access to blocks and block entries than conventional MTBDDs –Number of iterations can vary between runs

Implementation  Implemented on a Ethernet and Myrinet-enabled PC cluster –Use MPI (the MPICH implementation) –Prototype extension for PRISM, uses PRISM numerical engines and CUDD package for MTBDDs (Somenzi) –32 nodes available  Evaluated on a range of benchmarks –Kanban, FMS and Polling system  Optimisations for PC-cluster environments –Non-blocking inter-processor communication is used to interleave communication and computation –Load-balancing is implemented to distribute computation load evenly between processors and minimise communication load –Cache mechanism is used to reduce communication further

Experimental results: models  Parameters and statistics of models –Include Kanban 9,10 and FMS 13, previously intractable –All compact, requiring less than 1GB

Experimental results: time  Total execution times (in seconds) with 1 to 32 nodes –Termination condition maximum relative difference –Block numbers selected to minimise storage

Experimental results: FMS speed-up

Experimental results: Kanban speed-up

Experimental results: Polling speed-up

Summary  Our parallelisation of Gauss-Seidel –Allows much larger CTMC models to be solved –Has good overall speedup  Symbolic approach particularly well suited to Wavefront parallelisation of Gauss-Seidel –Easy to extract task dependency information –Reduced memory requirement and communication load  Gauss-Seidel excellent candidate to solve very large linear equation systems –Small memory requirement (only requires one iteration vector, vs 2 for Jacobi and 6 for CGS) –Method generalises to other symbolic techniques and application domains

Ongoing and future work  Ongoing development for PRISM model checker –Grid-enabled wavefront solution, using Globus Toolkit 4 –Grid-enabled probabilistic model checking –Simulator –Sampling-based approximate probabilistic model checking  Future plans –Abstraction –Compositionality –Mobility –Real-valued clocks –More case studies

For more information…  Case studies, statistics, group publications  Download, version 2.0 (approx users)  Linux/Unix, Windows, Macintosh versions  Publications by others and courses that feature PRISM… J. Rutten, M. Kwiatkowska, G. Norman and D. Parker Mathematical Techniques for Analyzing Concurrent and Probabilistic Systems P. Panangaden and F. van Breugel (editors), CRM Monograph Series, vol. 23, AMS March 2004 Mathematical Techniques for Analyzing Concurrent and Probabilistic Systems