Distributed Load Balancing for Parallel Agent-based Simulations Biagio Cosenza*, Gennaro Cordasco, Rosario De Chiara, Vittorio Scarano ISISLab, Dipartimento.

Slides:



Advertisements
Similar presentations
Efficient Distributed Load Balancing for Parallel Algorithms Biagio Cosenza Dipartimento di Informatica Università di Salerno, Italy Supervisor Prof. Vittorio.
Advertisements

New Mexico Computer Science for All
LIBRA: Lightweight Data Skew Mitigation in MapReduce
Resource Management §A resource can be a logical, such as a shared file, or physical, such as a CPU (a node of the distributed system). One of the functions.
Dynamic Load Balancing for VORPAL Viktor Przebinda Center for Integrated Plasma Studies.
Flocks, Herds, and Schools: A Distributed Behavioral Model By: Craig Reynolds Presented by: Stephanie Grosvenor.
Course Outline Introduction in algorithms and applications Parallel machines and architectures Overview of parallel machines, trends in top-500 Cluster.
John S Gero Agents – Agent Simulations AGENT-BASED SIMULATIONS.
Strategies for Implementing Dynamic Load Sharing.
07/14/08. 2 Points Introduction. Cluster and Supercomputers. Cluster Types and Advantages. Our Cluster. Cluster Performance. Cluster Computer for Basic.
1 Parallel Simulations of Underground Flow in Porous and Fractured Media H. Mustapha 1,2, A. Beaudoin 1, J. Erhel 1 and J.R. De Dreuzy IRISA – INRIA.
Design and Implementation of a Single System Image Operating System for High Performance Computing on Clusters Christine MORIN PARIS project-team, IRISA/INRIA.
Agent Based Modeling and Simulation
Self-Organizing Agents for Grid Load Balancing Junwei Cao Fifth IEEE/ACM International Workshop on Grid Computing (GRID'04)
Abstract Load balancing in the cloud computing environment has an important impact on the performance. Good load balancing makes cloud computing more.
KUAS.EE Parallel Computing at a Glance. KUAS.EE History Parallel Computing.
Parallel Processing LAB NO 1.
Efficient Parallel Implementation of Molecular Dynamics with Embedded Atom Method on Multi-core Platforms Reporter: Jilin Zhang Authors:Changjun Hu, Yali.
An approach for solving the Helmholtz Equation on heterogeneous platforms An approach for solving the Helmholtz Equation on heterogeneous platforms G.
Biology: flocking, herding & schooling Day 5 COLQ 201 Multiagent modeling Harry Howard Tulane University.
Designing and Evaluating Parallel Programs Anda Iamnitchi Federated Distributed Systems Fall 2006 Textbook (on line): Designing and Building Parallel Programs.
Lappeenranta University of Technology / JP CT30A7001 Concurrent and Parallel Computing Introduction to concurrent and parallel computing.
Cluster-based SNP Calling on Large Scale Genome Sequencing Data Mucahid KutluGagan Agrawal Department of Computer Science and Engineering The Ohio State.
Performance Issues in Parallelizing Data-Intensive applications on a Multi-core Cluster Vignesh Ravi and Gagan Agrawal
Flow Fields Hao Li and Howard Hamilton. Motivation for Flow Fields Multiple AI algorithms in a computer game can produce conflicting results. The AI must.
Kinshuk Govil, Dan Teodosiu*, Yongqiang Huang, and Mendel Rosenblum
1 中華大學資訊工程學系 Ching-Hsien Hsu ( 許慶賢 ) Localization and Scheduling Techniques for Optimizing Communications on Heterogeneous.
Introduction, background, jargon Jakub Yaghob. Literature T.G.Mattson, B.A.Sanders, B.L.Massingill: Patterns for Parallel Programming, Addison- Wesley,
L – Modelling and Simulating Social Systems with MATLAB Lesson 5 – Introduction to agent-based simulations A. Johansson & W. Yu ©
PSY105 Neural Networks 1/5 1. “Patterns emerge”. π.
Performance Model & Tools Summary Hung-Hsun Su UPC Group, HCS lab 2/5/2004.
Flock Inspired Area Coverage Using Wireless Boid-like Sensor Agents Colin Chibaya Rhodes University Computer Science Department Grahamstown,
April 26, CSE8380 Parallel and Distributed Processing Presentation Hong Yue Department of Computer Science & Engineering Southern Methodist University.
Ohio State Univ Effective Automatic Parallelization of Stencil Computations * Sriram Krishnamoorthy 1 Muthu Baskaran 1, Uday Bondhugula 1, Atanas Rountev.
Gennaro Cordasco - How Much Independent Should Individual Contacts be to Form a Small-World? - 19/12/2006 How Much Independent Should Individual Contacts.
Supercomputing ‘99 Parallelization of a Dynamic Unstructured Application using Three Leading Paradigms Leonid Oliker NERSC Lawrence Berkeley National Laboratory.
Parallelization of Classification Algorithms For Medical Imaging on a Cluster Computing System 指導教授 : 梁廷宇 老師 系所 : 碩光通一甲 姓名 : 吳秉謙 學號 :
CLUSTER COMPUTING TECHNOLOGY BY-1.SACHIN YADAV 2.MADHAV SHINDE SECTION-3.
Parallelization of 2D Lid-Driven Cavity Flow
CPSC 872 John D. McGregor Session 30 ULS and Complex Adaptive Systems, cont’d.
Particle Swarm Optimization † Spencer Vogel † This presentation contains cheesy graphics and animations and they will be awesome.
Design Issues of Prefetching Strategies for Heterogeneous Software DSM Author :Ssu-Hsuan Lu, Chien-Lung Chou, Kuang-Jui Wang, Hsiao-Hsi Wang, and Kuan-Ching.
Data Structures and Algorithms in Parallel Computing Lecture 7.
Comparison of Cell and POWER5 Architectures for a Flocking Algorithm A Performance and Usability Study CS267 Final Project Jonathan Ellithorpe Mark Howison.
3/12/2013Computer Engg, IIT(BHU)1 PARALLEL COMPUTERS- 2.
1 Parallel Applications Computer Architecture Ning Hu, Stefan Niculescu & Vahe Poladian November 22, 2002.
Ben Miller.   A distributed algorithm is a type of parallel algorithm  They are designed to run on multiple interconnected processors  Separate parts.
C OMPUTATIONAL R ESEARCH D IVISION 1 Defining Software Requirements for Scientific Computing Phillip Colella Applied Numerical Algorithms Group Lawrence.
Load Rebalancing for Distributed File Systems in Clouds.
Hybrid Parallel Implementation of The DG Method Advanced Computing Department/ CAAM 03/03/2016 N. Chaabane, B. Riviere, H. Calandra, M. Sekachev, S. Hamlaoui.
INTRODUCTION TO HIGH PERFORMANCE COMPUTING AND TERMINOLOGY.
| presented by Vasileios Zois CS at USC 09/20/2013 Introducing Scalability into Smart Grid 1.
Porting the MIT Global Circulation Model on the CellBE Processor
Introduction to Load Balancing:
Ioannis E. Venetis Department of Computer Engineering and Informatics
CRESCO Project: Salvatore Raia
Is System X for Me? Cal Ribbens Computer Science Department
Parallel Programming in C with MPI and OpenMP
Mapping the Data Warehouse to a Multiprocessor Architecture
Guoliang Chen Parallel Computing Guoliang Chen
Course Outline Introduction in algorithms and applications
CSE8380 Parallel and Distributed Processing Presentation
Distributed computing deals with hardware
Hybrid Programming with OpenMP and MPI
Distributed Computing:
FLOSCAN: An Artificial Life Based Data Mining Algorithm
Gengbin Zheng, Esteban Meneses, Abhinav Bhatele and Laxmikant V. Kale
Database System Architectures
Hiroki Sayama NECSI Summer School 2008 Week 2: Complex Systems Modeling and Networks Agent-Based Models Hiroki Sayama
Time Complexity and Parallel Speedup to Compute the Gamma Summarization Matrix Carlos Ordonez, Yiqun Zhang University of Houston, USA 1.
Presentation transcript:

Distributed Load Balancing for Parallel Agent-based Simulations Biagio Cosenza*, Gennaro Cordasco, Rosario De Chiara, Vittorio Scarano ISISLab, Dipartimento di Informatica Università degli Studi di Salerno, Italy

PDP Ayia Napa (Cyprus) - February 9-11, 2010Biagio Cosenza Outline Agent-based Simulations – Reynolds’ model Agents partitioning Load balancing with two processors Generalization to multiple workers Results

PDP Ayia Napa (Cyprus) - February 9-11, 2010Biagio Cosenza Agent-based Simulations Simulate the actions and interactions of autonomous individual agents with a view to assessing their effects on the system as a whole – Investigated since the 1980s – Early works take inspiration from particles [R83] Applications – Biology, economics, sociology … Why parallel? – Huge number of agents – Complex behaviours Birth Social interactions Aging Death Fly around

PDP Ayia Napa (Cyprus) - February 9-11, 2010Biagio Cosenza Alignment Cohesion Separation Reynolds’ Model Alignment Cohesion Separation Alignment: steer towards the average heading of local flock-mates Cohesion: steer to move toward the average position of local flock-mates Separation: steer to avoid crowding local flock- mates

PDP Ayia Napa (Cyprus) - February 9-11, 2010Biagio Cosenza Parallelization of Agent-based Simulation Space Partitioning – Distributed (not centralized) – Even distribution (load balancing) Target architecture is a cluster of workstations

PDP Ayia Napa (Cyprus) - February 9-11, 2010Biagio Cosenza Parallelization of Agent-based Simulation The simulation carried out on 4 workers

PDP Ayia Napa (Cyprus) - February 9-11, 2010Biagio Cosenza Agent-based Distribution sparse distributiondense distribution

PDP Ayia Napa (Cyprus) - February 9-11, 2010Biagio Cosenza Load balancing with two processors

PDP Ayia Napa (Cyprus) - February 9-11, 2010Biagio Cosenza Two Processors Schema Assumptions – the measure of the computational load of each worker is linear in the number of agents – agents are uniformly distributed along the dimension where the splitting occurs

PDP Ayia Napa (Cyprus) - February 9-11, 2010Biagio Cosenza Two-procs Schema Region wide load balancing (Dynamic1) Assumption: agents uniformly distributed slice of space containing a single agent, under the uniformly distributed agents assumption Remarks: s r (s l ) is the number of agents in S r (S l ) number of agents to be moved to balance the load between the left and right processor

PDP Ayia Napa (Cyprus) - February 9-11, 2010Biagio Cosenza The Oscillation Problem Agents are usually more dense on the boundary – The oscillation is an effect of the assumption of uniformity of distribution, that underestimates the amount of agents approaching the boundary When a large flock of agents rapidly moves between the two workers – the boundary is moved too aggressively in the attempt of balancing the flock movement and it oscillates

PDP Ayia Napa (Cyprus) - February 9-11, 2010Biagio Cosenza Two-procs Schema Mitigated region wide load balancing (Dynamic2) Remarks: s r (s l ) is the number of agents in S r (S l ) Introducing a mitigation factor k slice of space containing a single agent, under the uniformly distributed agents assumption number of agents to be moved to balance the load between the left and right processor mitigation factor (we used k=0.5)

PDP Ayia Napa (Cyprus) - February 9-11, 2010Biagio Cosenza Two-procs Schema Restricted assumption load balancing (Dynamic 3) Remarks: ε is the radius of agents’ AOI s r (s l ) is the number of agents in S r (S l ) e r (e l ) is the number of agents in E r (E l ) Relaxed assumption of uniformity of the distribution of the agents to the spaces E l and E r, instead of S l and S r Limit the per-step movement of the boundary to ε

PDP Ayia Napa (Cyprus) - February 9-11, 2010Biagio Cosenza Generalization to Multiple Workers We apply the 2-workers schema to couples of neighbors workers, on alternate steps

PDP Ayia Napa (Cyprus) - February 9-11, 2010Biagio Cosenza Test Settings Hardware – IBM HS21 Cluster available at ENEA CRESCO Project, Portici (Italy) – Each node: 2 Xeon QuadCore Clovertown E5345 at 2.33 GHz, 16 GByte RAM – Infiniband network Software Implementation – OpenSteer, C++, Intel compiler, Message passing (MPI) The set of tests we performed is the result of the Cartesian product: {1,000, 10,000, 100,000} × number of agents {8, 16, 32, 64} × number of processors {static, dynamic1, dynamic2, dynamic3} load balancing strategy

PDP Ayia Napa (Cyprus) - February 9-11, 2010Biagio Cosenza Results Distribution of agents per worker Each color represents a different worker. x-axis indicates the simulation step (1, 000 simulation steps are depicted) while th y-axis represents the distribution of agents (a) (100,000; 8; static) (d) (100, 000; 8; dynamic3) (b) (100, 000; 8; dynamic1) (c) (100, 000; 8; dynamic2) (a) (d) (b) (c)

PDP Ayia Napa (Cyprus) - February 9-11, 2010Biagio Cosenza Results Scalability A comparison between (100,000;*; static) (dotted line) and (100,000;*; dynamic3) (continuous line) number of procs number of steps per second

PDP Ayia Napa (Cyprus) - February 9-11, 2010Biagio Cosenza Agents’ Partitioning Demo Video

PDP Ayia Napa (Cyprus) - February 9-11, 2010Biagio Cosenza Conclusion Agent-based Simulation and Parallel Computing – Well suited – Load balancing is challenging We introduced a new load balancing schema – Lightweight – Distributed – Good scalability – Up to 1,000,000 agents Next steps – 1,000,000,000 – Complex behaviours

PDP Ayia Napa (Cyprus) - February 9-11, 2010Biagio Cosenza Thanks for your attention Questions?