July, 2000.Simulation of distributed computing systems I.C. Legrand1 MONARC Models Of Networked...

33
July, 2000. Simulation of distributed computing systems I.C. Legrand 1 MONARC Models Of Networked Analysis at Regional Centers Iosif C. Legrand (CALTECH) Simulation of distributed computing systems Simulation of distributed computing systems

Transcript of July, 2000.Simulation of distributed computing systems I.C. Legrand1 MONARC Models Of Networked...

Page 1: July, 2000.Simulation of distributed computing systems I.C. Legrand1 MONARC Models Of Networked Analysis at Regional Centers Iosif C. Legrand (CALTECH)

July, 2000. Simulation of distributed computing systems I.C. Legrand 1

MONARC Models Of Networked Analysis at Regional Centers

Iosif C. Legrand (CALTECH)

Simulation of distributed computing systemsSimulation of distributed computing systems

Page 2: July, 2000.Simulation of distributed computing systems I.C. Legrand1 MONARC Models Of Networked Analysis at Regional Centers Iosif C. Legrand (CALTECH)

July, 2000. Simulation of distributed computing systems I.C. Legrand 2

The Design and the Development of a Simulation program for large scale distributed computing systems.

Validation tests

Queuing Theory

Performance measurements based on an Object Oriented data model for specific HEP applications.

A large system simulation: the CMS HLT Farm.

Proposal for a Dynamic, Self Organising scheduling system.

Summary

Contents Contents

Page 3: July, 2000.Simulation of distributed computing systems I.C. Legrand1 MONARC Models Of Networked Analysis at Regional Centers Iosif C. Legrand (CALTECH)

July, 2000. Simulation of distributed computing systems I.C. Legrand 3

The GOALS of the Simulation The GOALS of the Simulation ProgramProgram

To perform realistic simulation and modelling of large scale distributed computing systems, customised for specific HEP applications.

To provide a design framework to evaluate the performance of a range of possible computer systems, as measured by their ability to provide the physicists with the requested data in the required time, and to optimise the cost.

To narrow down a region in this parameter space in which viable models can be chosen by any of the LHC-era experiments.

To offer a dynamic and flexible simulation environment.

Page 4: July, 2000.Simulation of distributed computing systems I.C. Legrand1 MONARC Models Of Networked Analysis at Regional Centers Iosif C. Legrand (CALTECH)

July, 2000. Simulation of distributed computing systems I.C. Legrand 4

The Monarc Simulation ProgramThe Monarc Simulation Program

This Simulation program is not intended to be a detailed simulator for basic components such as operating systems, data base servers or routers. Instead, based on realistic mathematical models and measured parameters on test bed systems for all the basic components, it aims to correctly describe the performance and limitations of large distributed systems with complex interactions.

At the same time it provides a flexible framework for evaluating different strategies for middleware software design, providing dynamic load balancing and optimising resource utilisation as well as turnaround time for high priority tasks.

Page 5: July, 2000.Simulation of distributed computing systems I.C. Legrand1 MONARC Models Of Networked Analysis at Regional Centers Iosif C. Legrand (CALTECH)

July, 2000. Simulation of distributed computing systems I.C. Legrand 5

Design Considerations of the Design Considerations of the Simulation ProgramSimulation Program

The simulation and modelling task for the MONARC project

requires to describe many complex programs running

concurrently in a distributed architecture.

A process oriented approach for discrete event simulation is well suited to describe concurrent running programs.

“Active objects” (having an execution thread, a program counter, stack...) provide an easy way to map the structure of a set of distributed running programs into the simulation environment.

Page 6: July, 2000.Simulation of distributed computing systems I.C. Legrand1 MONARC Models Of Networked Analysis at Regional Centers Iosif C. Legrand (CALTECH)

July, 2000. Simulation of distributed computing systems I.C. Legrand 6

Design Considerations of the Design Considerations of the Simulation Program (2)Simulation Program (2)

This simulation project is based on Java(TM) technology which provides adequate tools for developing a flexible and distributed process oriented simulation. Java has built-in multi-thread support for concurrent processing, which can be used for simulation purposes by providing a dedicated scheduling mechanism.

The distributed objects support (through RMI or CORBA) can be used on distributed simulations, or for an environment in which parts of the system are simulated and interfaced through such a mechanism with other parts which actually are running the real application. The distributed object model can also provide the environment to be used for autonomous mobile agents.

Page 7: July, 2000.Simulation of distributed computing systems I.C. Legrand1 MONARC Models Of Networked Analysis at Regional Centers Iosif C. Legrand (CALTECH)

July, 2000. Simulation of distributed computing systems I.C. Legrand 7

Data Model Data Model

Database server

Disk

Tape Unit

Data Base Index

...

Data Container

Data Container

Array

...

CLIENT

Register

AMS SERVER

D a ta C on ta iner

Da ta C o nta iner

Data Base

D a ta C on ta iner

Da ta C o ntainer

Data Base

...

Database server

It provides:

Realistic mapping for an object data base

Specific HEP data structure Transparent access to any

data Automatic storage

management An efficient way to handle

very large number of objects. Emulation of clustering

factors for different types of access patterns.

Handling related objects in different data bases.

Page 8: July, 2000.Simulation of distributed computing systems I.C. Legrand1 MONARC Models Of Networked Analysis at Regional Centers Iosif C. Legrand (CALTECH)

July, 2000. Simulation of distributed computing systems I.C. Legrand 8

Multitasking Processing ModelMultitasking Processing Model

Concurrent running tasks share resources (CPU, memory, I/O)

“Interrupt” driven scheme: For each new task or when one task is finished, an interrupt is

generated and all “processing times” are recomputed.

It provides:

Handling of concurrent jobs with different priorities.

An efficient mechanism to simulate multitask processing.

An easy way to apply different load balancingschemes.

Page 9: July, 2000.Simulation of distributed computing systems I.C. Legrand1 MONARC Models Of Networked Analysis at Regional Centers Iosif C. Legrand (CALTECH)

July, 2000. Simulation of distributed computing systems I.C. Legrand 9

“Interrupt” driven simulation for each new message an interrupt is created and for all the active transfers the speed and the

estimated time to complete the transfer are recalculated.

An efficient and realistic way to simulate concurrent transfers having different sizes / protocols.

LAN/WAN Simulation ModelLAN/WAN Simulation Model

Page 10: July, 2000.Simulation of distributed computing systems I.C. Legrand1 MONARC Models Of Networked Analysis at Regional Centers Iosif C. Legrand (CALTECH)

July, 2000. Simulation of distributed computing systems I.C. Legrand 10

Arrival Patterns Arrival Patterns

A flexible mechanism to define the Stochastic process of how users perform data processing tasks

Dynamic loading of “Activity” tasks, which are threaded objects and are controlled by the simulation scheduling mechanism

Physics ActivitiesInjecting “Jobs”

Each “Activity” thread generates data processing jobs

for( int k =0; k< jobs_per_group; k++) { Job job = new Job( this, Job.ANALYSIS, "TAG”, 1, events_to_process); farm.addJob(job ); // submit the job sim_hold ( 1000 ); // wait 1000 s }

Regional Centre Farm

Job

Activity

Job

Job

Activity

These dynamic objects are used to model the users behavior

Page 11: July, 2000.Simulation of distributed computing systems I.C. Legrand1 MONARC Models Of Networked Analysis at Regional Centers Iosif C. Legrand (CALTECH)

July, 2000. Simulation of distributed computing systems I.C. Legrand 11

Regional Centre ModelRegional Centre Model

Complex Composite Object

Page 12: July, 2000.Simulation of distributed computing systems I.C. Legrand1 MONARC Models Of Networked Analysis at Regional Centers Iosif C. Legrand (CALTECH)

July, 2000. Simulation of distributed computing systems I.C. Legrand 12

Input Parameters for the Simulation Input Parameters for the Simulation Program Program

Response functions are based on “the previous state” of the component, a set of system related parameters (SysP) and parameters for a specific request (ReqP).

Such a time response function allows to describe correctly Highly Nonlinear Processes or “Chaotic” Systems behavior (typical for caching, swapping…)

It is important to correctly identify and describe the time response functions for all active components in the system. This should be done using realistic measurements.

The simulation frame allows one to introduce any time dependent response function for the interacting components.

Ti F Ti 1– SysP ReqP =

Page 13: July, 2000.Simulation of distributed computing systems I.C. Legrand1 MONARC Models Of Networked Analysis at Regional Centers Iosif C. Legrand (CALTECH)

July, 2000. Simulation of distributed computing systems I.C. Legrand 13

Simulation GUISimulation GUI

One may dynamically add and (re)configure Regional Centers parametersOne may dynamically add and (re)configure Regional Centers parameters

Page 14: July, 2000.Simulation of distributed computing systems I.C. Legrand1 MONARC Models Of Networked Analysis at Regional Centers Iosif C. Legrand (CALTECH)

July, 2000. Simulation of distributed computing systems I.C. Legrand 14

Simulation GUI (2)Simulation GUI (2)

On-line monitoring for major parameters in the simulation. On-line monitoring for major parameters in the simulation. Tools to analyze the data. Tools to analyze the data.

Page 15: July, 2000.Simulation of distributed computing systems I.C. Legrand1 MONARC Models Of Networked Analysis at Regional Centers Iosif C. Legrand (CALTECH)

July, 2000. Simulation of distributed computing systems I.C. Legrand 15

Results repository and the Results repository and the “publishing” procedure“publishing” procedure

Web Server

afs/nfs file system

RMI ServerWrite Objects

Page 16: July, 2000.Simulation of distributed computing systems I.C. Legrand1 MONARC Models Of Networked Analysis at Regional Centers Iosif C. Legrand (CALTECH)

July, 2000. Simulation of distributed computing systems I.C. Legrand 16

Queueing theory (1)Queueing theory (1)

M | M | 1 Model M | M | 1 Model

E[S]

arrivals waiting in service

E[N] Mean number of jobs E[R] Mean response time

Page 17: July, 2000.Simulation of distributed computing systems I.C. Legrand1 MONARC Models Of Networked Analysis at Regional Centers Iosif C. Legrand (CALTECH)

July, 2000. Simulation of distributed computing systems I.C. Legrand 17

Queueing theory (2)Queueing theory (2) M | M | 1 network queue modelM | M | 1 network queue model

arrivals

waiting in service

1 2 r

E N E

i 1=

r

Ni

i

1 i–

-------------

i 1=

r

= = E R E Ri

i 1=

r

E Si 1 i– -------------------

i 1=

r

= =and

Page 18: July, 2000.Simulation of distributed computing systems I.C. Legrand1 MONARC Models Of Networked Analysis at Regional Centers Iosif C. Legrand (CALTECH)

July, 2000. Simulation of distributed computing systems I.C. Legrand 18

Validation Measurements I Validation Measurements I The AMS Data Access Case The AMS Data Access Case

0

20

40

60

80

100

120

140

160

180

0 5 10 15 20 25 30 35

No. of concurrent jobs

Me

an

Tim

e p

er

job

[m

s]

Simulation Measurements

Raw Data DBLAN

4 CPUs Client

Page 19: July, 2000.Simulation of distributed computing systems I.C. Legrand1 MONARC Models Of Networked Analysis at Regional Centers Iosif C. Legrand (CALTECH)

July, 2000. Simulation of distributed computing systems I.C. Legrand 19

Validation Measurements IValidation Measurements I

Local DB access 32 jobs

The Distribution of the jobs processing time

monarc01

0

5

10

15

20

25

30

35

100 105 110 115 120

Simulationmean 109.5

Measurementmean 114.3

Page 20: July, 2000.Simulation of distributed computing systems I.C. Legrand1 MONARC Models Of Networked Analysis at Regional Centers Iosif C. Legrand (CALTECH)

July, 2000. Simulation of distributed computing systems I.C. Legrand 20

0

50

100

150

200

250

300

350

0 5 10 15 20 25 30 35

No. of concurrent jobs

Me

an

Tim

e p

er j

ob

[m

s]

Local DB (atlobj) Local Db (monarc) AMS

Sim Local DB Sim Local DB Sim AMS

Validation Measurements IValidation Measurements IMeasurements & Simulation Measurements & Simulation

SimulationMeasurements

Page 21: July, 2000.Simulation of distributed computing systems I.C. Legrand1 MONARC Models Of Networked Analysis at Regional Centers Iosif C. Legrand (CALTECH)

July, 2000. Simulation of distributed computing systems I.C. Legrand 21

Validation Measurements II Validation Measurements II

0

2000

4000

6000

8000

10000

12000

14000

0 5 10 15 20 25

No. of concurrent jobs

Tim

e

[s]

Measurements Simulation

0

500

1000

1500

2000

2500

3000

3500

4000

0 2 4 6 8

2Mbps WAN Client - Server CPU usage

Data Traffic

12 3 4 5 6

12 3 4 5 6

Page 22: July, 2000.Simulation of distributed computing systems I.C. Legrand1 MONARC Models Of Networked Analysis at Regional Centers Iosif C. Legrand (CALTECH)

July, 2000. Simulation of distributed computing systems I.C. Legrand 22

Simple Example: Resource Utilisation Simple Example: Resource Utilisation vs. Job’s Response Time vs. Job’s Response Time

Mean 0.55 Mean 0.72 Mean 0.93

Physics Analysis ExamplePhysics Analysis Example

180 CPUs 200 CPUs 250 CPUs

Page 23: July, 2000.Simulation of distributed computing systems I.C. Legrand1 MONARC Models Of Networked Analysis at Regional Centers Iosif C. Legrand (CALTECH)

July, 2000. Simulation of distributed computing systems I.C. Legrand 23

The CMS HLT Farm SimulationThe CMS HLT Farm Simulation

PileupDB

PileupDB

PileupDB

PileupDB

PileupDB

HPSS

PileupDB

PileupDB

SignalDB

SignalDB

SignalDB

...

6 Servers for Signal

Output Server

Output Server

Lock Server

Lock Server

SU

N

...

FARM 140 Processing Nodes

17 Servers

9 S

erve

rs

Total 24 Pile Up Servers

2 Objectivity Federations

Page 24: July, 2000.Simulation of distributed computing systems I.C. Legrand1 MONARC Models Of Networked Analysis at Regional Centers Iosif C. Legrand (CALTECH)

July, 2000. Simulation of distributed computing systems I.C. Legrand 24

The HLT Farm Configuration The HLT Farm Configuration

Distribute Pileup over 24 Linux servers

Other data over 6 Linux servers (70GB disk each)

2 Linux stations used for federations (Metadata, catalog etc)

2 Linux stations used for Journal files (used in locking)

shift20 (SUN) Used for lockserving and Output (2 x ~250GB disks)

The strategy is to use many commodity PCs as data Base Servers

Page 25: July, 2000.Simulation of distributed computing systems I.C. Legrand1 MONARC Models Of Networked Analysis at Regional Centers Iosif C. Legrand (CALTECH)

July, 2000. Simulation of distributed computing systems I.C. Legrand 25

Network Traffic & Job efficiency Network Traffic & Job efficiency

Mean measured Value ~48MB/s

Measurement

SimulationJet

<0.52>

Muon<0.90>

Page 26: July, 2000.Simulation of distributed computing systems I.C. Legrand1 MONARC Models Of Networked Analysis at Regional Centers Iosif C. Legrand (CALTECH)

July, 2000. Simulation of distributed computing systems I.C. Legrand 26

Total Time for Jet & Muon Total Time for Jet & Muon Production JobsProduction Jobs

Page 27: July, 2000.Simulation of distributed computing systems I.C. Legrand1 MONARC Models Of Networked Analysis at Regional Centers Iosif C. Legrand (CALTECH)

July, 2000. Simulation of distributed computing systems I.C. Legrand 27

CPU LOADCPU LOAD

Jet Production Job

Muon Production Job

ReadWrite

Page 28: July, 2000.Simulation of distributed computing systems I.C. Legrand1 MONARC Models Of Networked Analysis at Regional Centers Iosif C. Legrand (CALTECH)

July, 2000. Simulation of distributed computing systems I.C. Legrand 28

A Self-Organising Job Scheduling A Self-Organising Job Scheduling SystemSystem

The aim of this proposal is to describe a possible approach for the scheduling task, as a system able to dynamically learn and cluster information in a large dimensional parameter space. This dynamic scheduling system should be seen as an adaptive middle layer software, aware of current available resources and based on the “past experience” to optimise the job performance and resource utilisation.

Page 29: July, 2000.Simulation of distributed computing systems I.C. Legrand1 MONARC Models Of Networked Analysis at Regional Centers Iosif C. Legrand (CALTECH)

July, 2000. Simulation of distributed computing systems I.C. Legrand 29

A self organising modelA self organising model

This approach is based on using the “past experience” from jobs that have been executed to create a dynamic decision making scheme. A competitive learning algorithm can be used to “cluster” correlated information in the multi-dimensional space.

In our case, a feature mapping architecture able to map a high-dimensional input space into a much lower-dimensional structure in such a way that most of similarly correlated patters in the original data remain in the mapped space.

Such a clustering scheme seems possible for this decision making scheme as we expert a strong correlation between the parameters involved. Compared with an “intuitive” model we expect that such an approach will offer a better way to analyse possible options and can evolve and improve itself dynamically.

Page 30: July, 2000.Simulation of distributed computing systems I.C. Legrand1 MONARC Models Of Networked Analysis at Regional Centers Iosif C. Legrand (CALTECH)

July, 2000. Simulation of distributed computing systems I.C. Legrand 30

A simple toy example A simple toy example

We assume that the time to execute a job in the local farm having a certain load () is:

Where t0 is the theoretical time to perform the job and f() describes the effect of the farm load in the job execution time.

If the job is executed on a remote site, an extra factor () is introduced reducing the response time:

tr t0 1 f r + =

tl t0 1 f + =

Page 31: July, 2000.Simulation of distributed computing systems I.C. Legrand1 MONARC Models Of Networked Analysis at Regional Centers Iosif C. Legrand (CALTECH)

July, 2000. Simulation of distributed computing systems I.C. Legrand 31

Clustering of the Self Organising MapClustering of the Self Organising Map

Page 32: July, 2000.Simulation of distributed computing systems I.C. Legrand1 MONARC Models Of Networked Analysis at Regional Centers Iosif C. Legrand (CALTECH)

July, 2000. Simulation of distributed computing systems I.C. Legrand 32

Evaluating the self organising Evaluating the self organising scheduling with the simulation toolscheduling with the simulation tool

DECISION

Intuitive scheduling

scheme

RCsSIMULATION

Activities Simulation

Job

“Self OrganizingMap”

Job

Job

Job Job

JobJob

Job

Warming up

The decision for future jobs is based on identifying the clusters in the total parameter space, which are close to the hyper-plane defined in this space by the {Job} {System} subset.

In this way the decision can be done evaluating the typical performances of this list of close clusters and chose a decision set which meets the expected / available performance / resources and cost.

Page 33: July, 2000.Simulation of distributed computing systems I.C. Legrand1 MONARC Models Of Networked Analysis at Regional Centers Iosif C. Legrand (CALTECH)

July, 2000. Simulation of distributed computing systems I.C. Legrand 33

SummarySummary

A CPU- and code-efficient approach for the simulation of distributed systems has been developed for the MONARC project.

provides an easy way to map the distributed data processing, transport and analysis tasks onto the simulation.

can handle dynamically any model configuration, including very elaborate ones with hundreds of interacting complex objects.

can run on real distributed computer systems, and may interact with real components.

These results are encouraging and motivate us to continue developing this simulation tool.

Modelling and understanding current systems, their performance and limitations, is essential for the design of the future large scale distributed processing systems.

A frame to evaluate different strategies for the middle layer software to optimize resource utilization in such distributed systems is under development.