Thank you, chairman for the kind introduction. And hello, everyone.

Slides:



Advertisements
Similar presentations
MINJAE HWANG THAWAN KOOBURAT CS758 CLASS PROJECT FALL 2009 Extending Task-based Programming Model beyond Shared-memory Systems.
Advertisements

Parallel Processing with OpenMP
Abstraction and Modular Reasoning for the Verification of Software Corina Pasareanu NASA Ames Research Center.
IBM’s X10 Presentation by Isaac Dooley CS498LVK Spring 2006.
TOSSIM A simulator for TinyOS Presented at SenSys 2003 Presented by : Bhavana Presented by : Bhavana 16 th March, 2005.
Introduction CS 524 – High-Performance Computing.
Principles of Object-Oriented Software Development The language Java.
Parallel Programming Models and Paradigms
1 Breakout thoughts (compiled with N. Carter): Where will RAMP be in 3-5 Years (What is RAMP, where is it going?) Is it still RAMP if it is mapping onto.
1 Bees: A Secure, Resource-Controlled, Java-Based Execution Environment Tim Stack Eric Eide Jay Lepreau University of Utah April 5, 2003.
Chris Rouse CSS Cooperative Education Faculty Research Internship Winter / Spring 2014.
CSS595 SUMMER 2014 ZACH MA ADVISOR: MUNEHIRO FUKUDA Multi-Agent Transportation Simulation Using MASS MATMASSim.
ADLB Update Recent and Current Adventures with the Asynchronous Dynamic Load Balancing Library Rusty Lusk Mathematics and Computer Science Division Argonne.
Distributed Multi-Agent Management in a parallel-programming simulation and analysis environment: diffusion, guarded migration, merger and termination.
High Performance Computation --- A Practical Introduction Chunlin Tian NAOC Beijing 2011.
Budapest, November st ALADIN maintenance and phasing workshop Short introduction to OpenMP Jure Jerman, Environmental Agency of Slovenia.
Parallel Programming in Java with Shared Memory Directives.
CSS Cooperative Education Faculty Research Internship Spring / Summer 2013 Richard Romanus 08/23/2013 Developing and Extending the MASS Library (Java)
Jpeg Analyzer Ben Applegate CSS497 Advisor: Dr. Munehiro Fukuda.
Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition Chapter 4: Threads CS 170 T Yang, Sept 2012.
ICOM 5995: Performance Instrumentation and Visualization for High Performance Computer Systems Lecture 7 October 16, 2002 Nayda G. Santiago.
1 " Teaching Parallel Design Patterns to Undergraduates in Computer Science” Panel member SIGCSE The 45 th ACM Technical Symposium on Computer Science.
A Metadata Based Approach For Supporting Subsetting Queries Over Parallel HDF5 Datasets Vignesh Santhanagopalan Graduate Student Department Of CSE.
CCGrid 2014 Improving I/O Throughput of Scientific Applications using Transparent Parallel Compression Tekin Bicer, Jian Yin and Gagan Agrawal Ohio State.
MRPGA : An Extension of MapReduce for Parallelizing Genetic Algorithm Reporter :古乃卉.
Institute for Software Science – University of ViennaP.Brezany Parallel and Distributed Systems Peter Brezany Institute for Software Science University.
GPU Architecture and Programming
April 23, 2013Research in Progress Seminar MASS: A Multi-Agent Spatial Simulation Library Munehiro Fukuda, Ph.D. School of Science, Technology, Engineering,
Towards Exascale File I/O Yutaka Ishikawa University of Tokyo, Japan 2009/05/21.
CCGrid 2014 Improving I/O Throughput of Scientific Applications using Transparent Parallel Compression Tekin Bicer, Jian Yin and Gagan Agrawal Ohio State.
CSS 700: MASS CUDA Parallel‐Computing Library for Multi‐Agent Spatial Simulation Fall Quarter 2014 Nathaniel Hart UW Bothell Computing & Software Systems.
QCAdesigner – CUDA HPPS project
8/25/2005IEEE PacRim The Design Concept and Initial Implementation of AgentTeamwork Grid Computing Middleware Munehiro Fukuda Computing & Software.
Distributed mega-scale Agent Management in MASS: diffusion, guarded migration, merger and termination Cherie Wasous CSS_700 Thesis – Winter 2014 (Feb.
Core Java Introduction Byju Veedu Ness Technologies httpdownload.oracle.com/javase/tutorial/getStarted/intro/definition.html.
Silberschatz, Galvin and Gagne ©2013 Operating System Concepts – 9 th Edition Chapter 4: Threads.
IHP Im Technologiepark Frankfurt (Oder) Germany IHP Im Technologiepark Frankfurt (Oder) Germany ©
Distributed mega-scale Agent Management in MASS: diffusion, guarded migration, merger and termination Cherie Wasous CSS_700 Thesis – Winter 2014 (Jan.
Hongbin Li 11/13/2014 A Debugger of Parallel Mutli- Agent Spatial Simulation.
MASS C++ Updates JENNIFER KOWALSKY, What is MASS? Multi-Agent Spatial Simulation A library for parallelizing simulations and data analysis Uses.
PARALLEL MODEL OF EVOLUTIONARY GAME DYNAMICS Amanda Peters MIT /13/2009.
Introduction to threads
SPIDAL Java Optimized February 2017 Software: MIDAS HPC-ABDS
DISTRIBUTED SYSTEMS Principles and Paradigms Second Edition ANDREW S
Productive Performance Tools for Heterogeneous Parallel Computing
MASS Java Documentation, Verification, and Testing
Introduction to Parallel Processing
Distributed Network Traffic Feature Extraction for a Real-time IDS
CSS434 Presentation Guide
Realizing Concurrency using the thread model
March 2, 2016 UWB Shizuoka Univ. Workshop
Stefan Kaestle, Reto Achermann, Timothy Roscoe, Tim Harris ATC’15
Pattern Parallel Programming
Fei Cai Shaogang Wu Longbing Zhang and Zhimin Tang
Performance Evaluation of Adaptive MPI
IEEE BigData 2016 December 5-8, Washington D.C.
Parallel NetCDF + MASS Development
MASS CUDA Performance Analysis and Improvement
Dycore Rewrite Tobias Gysi.
Ashish Malgi, Neelesh Bansod, Byung K. Choi
Integrated Runtime of Charm++ and OpenMP
Realizing Concurrency using the thread model
Department of Intelligent Systems Engineering
Immersed Boundary Method Simulation in Titanium Objectives
Parallel Algorithm Models
Agent-Based Computing CSS599 Winter 2018
Support for Adaptivity in ARMCI Using Migratable Objects
Processes David Ferry, Chris Gill, Brian Kocoloski
L. Glimcher, R. Jin, G. Agrawal Presented by: Leo Glimcher
Presentation transcript:

An Parallel Multi-Agent Spatial Simulation Environment for Cluster Systems Thank you, chairman for the kind introduction. And hello, everyone. Today, I am going to present our on-going project that implement and practicalize an agent-based workbench for on-the-fly sensor-data analysis, more specifically for orchard temperature prediction and crop monitoring. Munehiro Fukuda, Ph.D. Computing & Software Systems University of Washington Bothell December 4 IEEE CSE 2013, Sydney

Research Motivation Agent-based or entity-based simulations: Simulate the emergent collective behavior of social or biological agents. Require a mega number of agents for the reality. Most parallelization Has been limited to shared-memory environments (OpenMP, CUDA, etc.) but not cluster systems. Challenges Machine awareness Ghost space management Agent management (e.g., cloning, migration, and termination) Fine-grained execution MASS: a parallel library for multi-agent spatial simulation for cluster systems December 4 IEEE CSE 2013, Sydney

Outline Related work MASS execution model and library spec. Programmability analysis Spatial simulation Multi-agent simulation Performance evaluation Conclusions December 4 IEEE CSE 2013, Sydney

Related Work Distributed Arrays Multi-Agents Examples: UPC, Co-Array Fortran, and Global Array. Limited scalability versus limited remote memory access Read-only ghost space Examples: PDES-MAS, Nomadic Threads, and Repast HPC Fine granularity versus intelligence Hawk’s versus individual’s viewpoint System-level agent management required Loop parallelization goo enough? for ( int I = 0; I < nAgents; i++ ) { agents[i].updateStatus( ); agents[i].interactNeighbors( ); } What if agents are introduced? Node 1 Node 2 Node 3 December 4 IEEE CSE 2013, Sydney

MASS Library Execution Model Y-axis A Bag of Agents Agents Agents Agents Application Layer (x,y) Places X-axis Thread 0 Thread 1 Thread 2 Thread 3 Thread 0 Thread 1 Thread 2 Thread 3 Thread 0 Thread 1 Thread 2 Thread 3 Process Rank 0 socket Process Rank 1 socket Process Rank 2 MASS Library Layer CPU Core 0 CPU Core 1 CPU Core 2 CPU Core 3 CPU Core 0 CPU Core 1 CPU Core 2 CPU Core 3 CPU Core 0 CPU Core 1 CPU Core 2 CPU Core 3 System Memory System Memory System Memory mnode0.uwb.edu mnode1.uwb.edu LAN mnode2.uwb.edu December 4 IEEE CSE 2013, Sydney

MASS Library Specification Public static void main( String[ ] args ) { MASS.init( args ); Places space = new Places( handle, “MySpace”, params, xSize, ySize); Agents agents = new Agents( handle, “MyAgents”, params, space, population ); space.callAll( MySpace.func1, params ); space.exchangeAll( MySpace.func2, neighbors ); agents.exchangeAll( MyAgents.func3 ); agents.manageAll( ); MASS.finish( ); } func1( ) … func2( ) func3( ) December 4 IEEE CSE 2013, Sydney

MASS Library Implementation Master node main( String[] args ) { MASS.init( ); MASS.finish( ); } JSCH or libssh2 JSCH or libssh2 Slave node 2 Slave node 1 December 4 IEEE CSE 2013, Sydney

Programmability Analysis Spatial Simulation – Wave2D (Implemented) December 4 IEEE CSE 2013, Sydney

Programmability Analysis Spatial Simulation – BrainGrid (Abstract Code) December 4 IEEE CSE 2013, Sydney

Programmability Analysis Multi-Agent Simulation – Random Walk December 4 IEEE CSE 2013, Sydney

Programmability Analysis Multi-Agent Simulation – FluTE (Abstract Code) Infected person communities Contagious The original work from Univ. New Mexico: http://www.cs.unm.edu/~dlchao/flute/ December 4 IEEE CSE 2013, Sydney

Programmability Analysis Agent-Based Data Analysis – Biological Network Motif December 4 IEEE CSE 2013, Sydney

MASS Programmability Spatial Simulation Machine-unaware data distribution and collection No explicit ghost space management No explicit for-loop parallelization Multi-Agent Simulation Automated agent migration Agent collision avoidance Agent propagation and distributed termination December 4 IEEE CSE 2013, Sydney

Performance Evaluation Place and Agent Granularity Places Size Agent Group Size December 4 IEEE CSE 2013, Sydney

Performance Evaluation Spatial Simulation – Wave2D December 4 IEEE CSE 2013, Sydney

Performance Evaluation Multi-Agent Simulation – Random Walk December 4 IEEE CSE 2013, Sydney

MASS Execution Performance The minimum conditions to benefit from MASS (Java version): 500 x 500 places 300,000 agents 100 floating-point operations / exchangeAll( ) or callAll( ), both returning values December 4 IEEE CSE 2013, Sydney

Status and Future Plan More version and tools in development: MASS C++ MASS Cuda Parallel NetCDF reader/writer with MASS Practical applications in our plan: BrainGrid FluTE Biological network motif search Climate change detection December 4 IEEE CSE 2013, Sydney