June 29, 2015 1 Grenchmark: A workload generator for Grid schedulers First Demo at TU Delft A. Iosup, D.H.J. Epema PDS Group, ST/EWI, TU Delft.

Slides:



Advertisements
Similar presentations
7 april SP3.1: High-Performance Distributed Computing The KOALA grid scheduler and the Ibis Java-centric grid middleware Dick Epema Catalin Dumitrescu,
Advertisements

Introduction Background Knowledge Workload Modeling Related Work Conclusion & Future Work Modeling Many-Task Computing Workloads on a Petaflop Blue Gene.
GlobeTraff A traffic workload generator for the performance evaluation of ICN architectures K.V. Katsaros, G. Xylomenos, G.C. Polyzos A.U.E.B. (presented.
June 1, GrenchMark : Towards a Generic Framework for Analyzing, Testing, and Comparing Grids ASCI Conference 2006 A. Iosup, D.H.J. Epema PDS Group,
June 2, GrenchMark : A Framework for Analyzing, Testing, and Comparing Grids CCGrid 2006 A. Iosup, D.H.J. Epema PDS Group, ST/EWI, TU Delft.
June 3, ServMark A Hierarchical Architecture for Testing Grids Santiago, Chile A. Iosup, H. Mohamed, D.H.J. Epema PDS Group, ST/EWI, TU Delft C.
June 3, 2015 Synthetic Grid Workloads with Ibis, K OALA, and GrenchMark CoreGRID Integration Workshop, Pisa A. Iosup, D.H.J. Epema Jason Maassen, Rob van.
ManageEngine TM Applications Manager 8 Monitoring Custom Applications.
Workload Management Workpackage Massimo Sgaravatto INFN Padova.
DAS-3/Grid’5000 meeting: 4th December The KOALA Grid Scheduler over DAS-3 and Grid’5000 Processor and data co-allocation in grids Dick Epema, Alexandru.
1 A Performance Study of Grid Workflow Engines Alexandru Iosup and Dick Epema PDS Group Delft University of Technology The Netherlands Corina Stratan Parallel.
1 Trace-Based Characteristics of Grid Workflows Alexandru Iosup and Dick Epema PDS Group Delft University of Technology The Netherlands Simon Ostermann,
June 25, GrenchMark: A synthetic workload generator for Grids KOALA Workshop A. Iosup, H. Mohamed, D.H.J. Epema PDS Group, ST/EWI, TU Delft.
June 25, GrenchMark: Synthetic workloads for Grids First Demo at TU Delft A. Iosup, D.H.J. Epema PDS Group, ST/EWI, TU Delft.
The new The new MONARC Simulation Framework Iosif Legrand  California Institute of Technology.
June 28, Resource and Test Management in Grids Rapid Prototyping in e-Science VL-e Workshop, Amsterdam, NL Dick Epema, Catalin Dumitrescu, Hashim.
Workload Management Massimo Sgaravatto INFN Padova.
June 6, 2002D.H.J. Epema/PDS/TUD1 Processor Co-Allocation in Multicluster Systems DAS-2 Workshop Amsterdam June 6, 2002 Anca Bucur and Dick Epema Parallel.
University of Dortmund June 30, On Grid Performance Evaluation using Synthetic Workloads JSSPP 2006 Alexandru Iosup, Dick Epema PDS Group, ST/EWI,
July 13, GrenchMark: A workload generator for Grids Demo at TU Delft A. Iosup, D.H.J. Epema PDS Group, ST/EWI, TU Delft.
July 13, “How are Real Grids Used?” The Analysis of Four Grid Traces and Its Implications IEEE Grid 2006 Alexandru Iosup, Catalin Dumitrescu, and.
Euro-Par 2008, Las Palmas, 27 August DGSim : Comparing Grid Resource Management Architectures Through Trace-Based Simulation Alexandru Iosup, Ozan.
DIRAC API DIRAC Project. Overview  DIRAC API  Why APIs are important?  Why advanced users prefer APIs?  How it is done?  What is local mode what.
Hadoop: The Definitive Guide Chap. 8 MapReduce Features
The SAM-Grid Fabric Services Gabriele Garzoglio (for the SAM-Grid team) Computing Division Fermilab.
Introduction to UNIX/Linux Exercises Dan Stanzione.
QCDgrid Technology James Perry, George Beckett, Lorna Smith EPCC, The University Of Edinburgh.
Euro-Par 2007, Rennes, 29th August 1 The Characteristics and Performance of Groups of Jobs in Grids Alexandru Iosup, Mathieu Jan *, Ozan Sonmez and Dick.
A Project about: Molecular Dynamic Simulation (MDS) Prepared By Ahmad Lotfy Abd El-Fattah Grid Computing Group Supervisors Alexandr Uzhinskiy & Nikolay.
(C) 2009 J. M. Garrido1 Object Oriented Simulation with Java.
Rsv-control Marco Mambelli – Site Coordination meeting October 1, 2009.
1 Cloud Computing Research at TU Delft – A. Iosup Alexandru Iosup Parallel and Distributed Systems Group Delft University of Technology The Netherlands.
1 EuroPar 2009 – POGGI: Puzzle-Based Online Games on Grid Infrastructures POGGI: Puzzle-Based Online Games on Grid Infrastructures Alexandru Iosup Parallel.
Workload Management WP Status and next steps Massimo Sgaravatto INFN Padova.
Tech talk 20th June Andrey Grid architecture at PHENIX Job monitoring and related stuff in multi cluster environment.
Bigben Pittsburgh Supercomputing Center J. Ray Scott
Grid Workload Management & Condor Massimo Sgaravatto INFN Padova.
Debugging and Profiling GMAO Models with Allinea’s DDT/MAP Georgios Britzolakis April 30, 2015.
PNPI HEPD seminar 4 th November Andrey Shevel Distributed computing in High Energy Physics with Grid Technologies (Grid tools at PHENIX)
An I/O Simulator for Windows Systems Jalil Boukhobza, Claude Timsit 27/10/2004 Versailles Saint Quentin University laboratory.
Scientific Workflow Scheduling in Computational Grids Report: Wei-Cheng Lee 8th Grid Computing Conference IEEE 2007 – Planning, Reservation,
1 Challenge the future KOALA-C: A Task Allocator for Integrated Multicluster and Multicloud Environments Presenter: Lipu Fei Authors: Lipu Fei, Bogdan.
Marcelo R.N. Mendes. What is FINCoS? A Java-based set of tools for data generation, load submission, and performance measurement of event processing systems;
Stuart Wakefield Imperial College London Evolution of BOSS, a tool for job submission and tracking W. Bacchi, G. Codispoti, C. Grandi, INFN Bologna D.
The El-Rewini/Ali Scheduling of In-Forest Task Graph on Two Processors with Communication Project Presentation By David Y. Feinstein SMU - CSE 8388 Spring.
VO-Ganglia Grid Simulator Catalin Dumitrescu, Mike Wilde, Ian Foster Computer Science Department The University of Chicago.
Real-Time Systems, 2009 Fall Project 2: Energy-Efficient Scheduling For Android Environment Advised by Prof. Tei-Wei Kuo TA: Po-Chun Huang ( 黃柏鈞 )
Getting started DIRAC Project. Outline  DIRAC information system  Documentation sources  DIRAC users and groups  Registration with DIRAC  Getting.
Review of Condor,SGE,LSF,PBS
Going Large-Scale in P2P Experiments Using the JXTA Distributed Framework Mathieu Jan & Sébastien Monnet Projet PARIS Paris, 13 February 2004.
CENG 476 Projects 2014 (10’th November 2014) 1. Projects One problem for each student One problem for each student 2.
OPERATING SYSTEMS CS 3530 Summer 2014 Systems and Models Chapter 03.
NTMS 2012 GlobeTraff: a traffic workload generator for the performance evaluation of future Internet architectures K.V. Katsaros, G. Xylomenos, G.C. Polyzos.
Virtual Data Management for CMS Simulation Production A GriPhyN Prototype.
Scheduling MPI Workflow Applications on Computing Grids Juemin Zhang, Waleed Meleis, and David Kaeli Electrical and Computer Engineering Department, Northeastern.
Korea Workshop May GAE CMS Analysis (Example) Michael Thomas (on behalf of the GAE group)
(C) J. M. Garrido1 Objects in a Simulation Model There are several objects in a simulation model The activate objects are instances of the classes that.
Tool Integration with Data and Computation Grid “Grid Wizard 2”
EGI-InSPIRE RI EGI-InSPIRE EGI-InSPIRE RI How to integrate portals with the EGI monitoring system Dusan Vudragovic.
Hyperion Artifact Life Cycle Management Agenda  Overview  Demo  Tips & Tricks  Takeaways  Queries.
STAR Scheduling status Gabriele Carcassi 9 September 2002.
Grid Workload Management (WP 1) Massimo Sgaravatto INFN Padova.
Marcelo R.N. Mendes. What is FINCoS? A Java-based set of tools for data generation, load submission, and performance measurement of event processing systems;
Selecting Input Probability Distributions. 2 Introduction Part of modeling—what input probability distributions to use as input to simulation for: –Interarrival.
Lessons from LEAD/VGrADS Demo Yang-suk Kee, Carl Kesselman ISI/USC.
OPERATING SYSTEMS CS 3502 Fall 2017
HyperSim: High Performance Simulation Kernel
Simulator of an Asynchronous Distributed System
On Dynamic Resource Availability in Grids
Resource and Test Management in Grids
Presentation transcript:

June 29, Grenchmark: A workload generator for Grid schedulers First Demo at TU Delft A. Iosup, D.H.J. Epema PDS Group, ST/EWI, TU Delft

June 29, Evaluating Grid schedulers performance Grid schedulers performance Qualitative metrics supported application types, advanced fault tolerance, advanced... Quantitative metrics resource consumption, system performance, scheduler functionality Other metrics cost, single number Needs Applications, workloads, more workloads… Benefits Configuration testing and tuning Functionality testing Comparing design alternatives Runtime estimation Systems procurement support

June 29, Grenchmark A systematic approach to testing Grid schedulers A set of metrics for comparing schedulers A set of representative applications Both real and synthetic Single tasks, MPI tasks, Java, IBIS/Satin tasks, batch tasks, filters/streaming tasks, chains of tasks, DAGs, general graphs,...(?) Easy tools to create synthetic workloads [TODAY] Testing, testing, testing… [EVERY DAY]

June 29, Grenchmark process $./wl-gen.py wl-desc.in $./wl-submit.py out/wl-to-submit.wl TODO Sample run: 95 jobs / 411 components 95 files / 32 directories 300KB data Sample run: multi-threaded – submission delay +/- 0.01s 95 JDFs

June 29, Outline Introduction Grenchmark Using Grenchmark Customizing Grenchmark Extending Grenchmark Conclusions [done] [here]

June 29, wl-desc.in $ cat wl-desc.in # File-type: text/wl-spec# WL Unit ID Times this unit Job Type Site structure type Total # of jobs per unit Detailed Site structure Arrival time distribution Other info #IDTimesUnitTypeSiteTypeTotalSiteInfoArrivalTimeDistrOtherInfo 05ssersingle1*:?U(0,1000)- 110sserunordered2-N(500,200)NSites=2,DifferentSites=false ?1sserordered?fs3:2,fs2:1,fs1:1Poisson(500)- ?1ssersemi-ordered5fs3:2,*:1LogNorm(10,5) NSites=3,DifferentSites=true ?1fakesemi-ordered5fs3:2,*:1Weibull(2000,0.5) NSites=3,DifferentSites=true ?5wl:poisson---Poisson(500) RandomWorkload=true,NJobs=10,NComponents=2;8,ComponentSize=4;8 ?2wl:poisson---Poisson(500) RandomWorkload=false,NComponents=4-8,ComponentSize=8;16 ?1wl:poisson---Poisson(500) RandomWorkload=false,NComponents=4;8,ComponentSize=8;16,Submitter=drunner,Applic ation=Poisson-g2-gm ?2wl:poisson---Poisson(500) RandomWorkload=false,NComponents=4;8,ComponentSize=8;16,Submitter=krunner,Applic ation=findpi-gm Describes the workload to be generated; input file for wl-gen.py

June 29, Preliminary notions Job, workload, workload unit Job = Set of components (co-allocation support) [Job = one program execution / the basic scheduling unit / … ] Workload = Set of Jobs Workload Unit = Set of jobs with the same property, generated in the same step (definition useful only for workload generator) Other JDF = Job description file Inter arrival time = time between two consecutive jobs arrive in the system

June 29, Some more notions Job site type / per site description Single – run at one site Unordered – run at several sites, all unspecified Ordered – run at several site, all specified Semi-ordered – run at several site, some specified Other (?) Inter-arrival time distributions Constant, Uniform, Normal, Exponential(λ), Poisson(Mean), HExp2, HPoisson2, Weibull, LogNormal, Gamma (~)

June 29, Describing the workload: Jobs wl-desc.in ID Times UnitType SiteType TotalComps PerSiteDesc [I]ArrivalTimeDistr OtherInfo 0 1 sser single 1 *:? U(0,1000) - Generate Times x Jobs or Times x Sets of Jobs One Job = k Components (here: 1 -- single)

June 29, Demo 1: Generating one job Single site, single instance

June 29, Demo 2: Generating n jobs of the same type 250 jobs in 100s, distribution Uniform(0,1000)

June 29, Demo 3: Generating mixes of jobs 10 single jobs, 2 instances per job (count=2) Q: what happens with the running/output sandbox? 10 unordered jobs, 5 instances at 3 sites (3 components) each Q: what about ensuring DifferentSites=true? I can do it from the submitter, but then ordered… [Jan David’s P2P simulation must include controlled wide-area/single- area mixes] 10 ordered jobs, inter-arrival time (IAT) IAT 5s 10 semi-ordered jobs, 5 instances, 2 ordered sites (1 random location), IAT LogNorm(10,3)

June 29, Describing the workload: Jobs wl-desc.in ID Times UnitType SiteType TotalComps PerSiteDesc [I]ArrivalTimeDistr OtherInfo 0 1 sser single 1 *:? U(0,1000) - Generate Times x Jobs or Times x Sets of Jobs One Job = k Components (here: 1 -- single)

June 29, Describing the workload: Units wl-desc.in ID Times UnitType SiteType TotalComps PerSiteDesc [I]ArrivalTimeDistr OtherInfo 0 1 sser single 1 *:? U(0,1000) - ? 1 wl:poisson unordered - - Poisson(500) \ RandomWorkload=false,NComponents=4;8,ComponentSize=8;16,\ Submitter=drunner,Application=Poisson-g2-gm Generate Times x Jobs or Times x Sets of Jobs wl: prefix – self-aware workload unit generator [Hashim’s jobs]

June 29, Demo 4: Generating one workload unit Hashim’s sample workload: Poisson-g2-gm (Globus MPICH-G2) Components: 4 and 8 Component Sizes: 8 and 16 IAT Poisson(5s) Run with drunner Total: 4 jobs, 24 components

June 29, Demo 5: Generating a full workload Hashim’s full workload, 8 times: Poisson-g2-gm (Globus MPICH-G2) and findpi-gm Components: 4 and 8 Component Sizes: 4/8 and 16 IAT Poisson(5s) Run with drunner (poisson) / krunner (pi) Submit time 1 day Generate: Submit: Total: 3200 jobs, components / 3k files, 4k dirs Timing: 30s generate / 86,400s submit (1 day, eh?) $ wl-gen.py --duration= wl-desc.in $ wl-submit.py --onefile out/wl-desc.in

June 29, Outline Introduction Grenchmark Using Grenchmark Customizing Grenchmark Extending Grenchmark Conclusions [done] [here] [done]

June 29, Customizing the workload generator Command-line parameters wl-gen.py –help … displays a comprehensive help screen wl-gen.py –o outdir … creates the workload in directory outdir wl-gen.py –d … sets the total submission duration to 50s wl-gen.py –j my-jdf … uses my-jdf to write JDFs wl-gen.py –o out-1 wl-desc.in my favourite command [seen]

June 29, Customizing the submission tool Command-line parameters wl-submit.py –help … displays a comprehensive help screen wl-submit.py –t 10 … uses 10 threads to submit wl-submit.py --nosubmit … just prints the submission commands wl-submit.py --onefile … output job submit (runner) stderr and stdout to one file each (concatenated) wl-submit.py out/wl-to-submit.wl my favourite command [seen]

June 29, Outline Introduction Grenchmark Using Grenchmark Customizing Grenchmark Extending Grenchmark Conclusions [done] [here] [done]

June 29, Extending the workload generator (1) Write your own Job Generators 1.Create your-job-generator.py in apps/ 2.Place a Generator attribute, organized as a Key=Value list, one per line, with at least Name=your-job-type defined. Example: Generator=""" Name=your-job-type Author=You R. Name Copyright=copyright © 2005 You R. Name. All rights reserved. ""“ 3.Create a function generateWorkloadUnit, which takes in UnitDir, UnitID, WLUnit, SubmitDurationMS, bGenerateRandom 4.Make generateWorkloadUnit return a dictionary with keys ‘info’ and ‘jobs’, with appropriate data each 5.Use the generator in wl-desc.in by putting your-job-type in the UnitType field

June 29, Extending the workload generator (2) Write your own Unit Generators 1.Create your-job-generator.py in apps/ 2.Place a WLGenerator attribute, organized as a Key=Value list, one per line, with at least Name=your-job-type defined. Example: WLGenerator=""" Name=your-workload-type Author=You R. Name Copyright=copyright © 2005 You R. Name. All rights reserved. ""“ 3.Create a function generateWorkload, which takes in UnitDir, UnitID, WLUnit, SubmitDurationMS, bGenerateRandom 4.Make generateWorkloadUnit return a dictionary with keys ‘info’ and ‘jobs’, with appropriate data each 5.Use the generator in wl-desc.in by putting your-job-type in the UnitType field

June 29, Extending the workload generator (3) Write your own JDF Writers 1.Create your-jdf-writer.py in jdfprint/ 2.Place a JDFGenerator attribute, organized as a Key=Value list, one per line, with at least Name=your-job-type defined. Example: JDFGenerator=""" Name=your-jdf-writer-type Author=You R. Name Copyright=copyright © 2005 You R. Name. All rights reserved. ""“ 3.Create a function generateJDF, which takes in OutFileName, ListOfComponents 4.Make generateJDF write the components to the specified file, with appropriate data each 5.Use the generator by calling wl-gen.py with the –j parameter

June 29, Conclusions and future work Grenchmark easily generates diverse workloads of Grid applications KOALA developers Would you like to use Grenchmark to test KOALA? Everybody Do you have specific Grid applications types that you would like to test? Try Grenchmark!

June 29, Thank you! Questions? Remarks? Observations? All welcome! Grenchmark [10x Paulo] Alexandru IOSUP TU Delft [google: “iosup”]