CS599: Grid Computing Policy Driven Heterogeneous Resource Co-Allocation with Gangmatching - PowerPoint PPT Presentation

1 / 18
About This Presentation
Title:

CS599: Grid Computing Policy Driven Heterogeneous Resource Co-Allocation with Gangmatching

Description:

... licenses for various software package. Allocate both a machine and a license to ... request a license. Label = storage; Rank = storage.rspeed storage.wspeed; ... – PowerPoint PPT presentation

Number of Views:47
Avg rating:3.0/5.0
Slides: 19
Provided by: leel163
Category:

less

Transcript and Presenter's Notes

Title: CS599: Grid Computing Policy Driven Heterogeneous Resource Co-Allocation with Gangmatching


1
CS599 Grid ComputingPolicy Driven Heterogeneous
Resource Co-Allocation with Gangmatching
  • Li Zhou
  • zhou_at_isi.edu
  • 11/7/2003

2
Guide
  • From Matchmaking to Gangmatching
  • Why?
  • How?
  • The Gangmatching Model
  • ClassAds
  • Usage of Gangmatching (2 Examples)
  • Implementation of Matching Algorithm
  • Protocol

3
Matchmaking
  • Resource allocation or scheduling
  • Distributively administrated customer (requester)
    and resource (provider)
  • Distributed ownership introduce policy
    heterogenity
  • Dynamically define their own data model (use
    application-specific metrics)
  • Use Classified Advertisements (ClassAds)

4
Class Advertisements
  • Semi-structured data model
  • Fold the query language into data model
  • Constraint Attribute
  • Boolean expression (true/false/undefined)
  • The customer / resource pair matches only if the
    expression is evaluated as TRUE
  • Rank Attribute
  • numeric expression (numval/undefined)
  • Choose the matched pair with highest rank value

5
Example
  • //Resources ClassAds
  • type Machine KFlops 1.8E4 Memory 64
    Arch Intel
  • ResearchGroup Friends Untrusted
  • Rank member (other.Owner, ResearchGroup)10
    member(other.Owner, Friends)
  • Constraint !member(other.Owner, Untrusted)
    other.typeJob
  • //Requesters ClassAds
  • typeJob Ownerzhou
  • Rank other.KFlops / 1E4 other.Memory / 32
  • Constraint other.TypeMachine
    other.ArchIntel other.KFlopsgt1E4
    other.Memorygtself.Memory

6
Matchmaking ? Gangmatching
  • Drawbacks of Matchmaking
  • Limited by its purely bilateral formalism
  • Can only match a single customer with a single
    resource
  • Improvement Gangmatching
  • A formalism that extends Matchmaking from
    bilateral model to a multilateral model

7
ClassAds for Gangmatching
  • Ports Attribute
  • Ports ClassAds
  • Define the number and characteristics of matching
    ads required to be satisfied
  • Bilateral matching between the ports of ClassAds
  • Matchmaking Matching on whole ClassAds
  • Label Attribute
  • Define the name of candidate that bound to a
    certain port
  • Matchmaking use fixed name other

8
Continue
  • //Gangmatching ClassAds Definition
  • Ports LabelA //classads-a
  • Rankrankval-A(A)
  • Constraintconsval-A(A)
  • LabelB //classads-b
  • Rankrankval-B(A,B)
  • Constraintconsval-B(A,B)
  • LabelN //classads-n
  • Rankrankval-N(A,B,,N)
  • Constraintconsval-N(A,B,,N)
  • //Matchmaking ClassAds Definition
  • Rank rankval(other)
  • Constraint rankval(other)

9
Usages of Gangmatching
  • Condor
  • User need licenses for various software package
  • Allocate both a machine and a license to a job

Job
A
B
C
D
Machine
License
gcc
z
javac
x
y
10
Corresponding Job ClassAds
  • //Jobs ClassAds
  • type Job Cmd run_sim
  • Ports //request a workstation
  • Label cpu
  • Rank cpu.KFlops/1E4cpu.memory/32
  • Constraint cpu.ArchIntel ,
  • //request a license
  • Label license
  • Host cpu.Name
  • Rank license.priority
  • Constraint license.typeLicence
    license.appCmd

11
Sophisticated Co-Allocation
  • Weather App need large storage to cache
    temporary result
  • Constraints imposed on both CPU Storage
  • CPU Storage should be on the same host

Job
A
B
C
D
CPU
Storage
a1
a2
b1
c1
d1
d2
12
Corresponding Job ClassAds
  • //Jobs ClassAds
  • type Job
  • Ports //request a workstation
  • Label cpu
  • Rank cpu.KFlops/1E4cpu.memory/32
  • Constraint cpu.ArchIntel ,
  • //request a license
  • Label storage
  • Rank storage.rspeedstorage.wspeed
  • Constraint storage.freespacegt1G
    storage.hostcpu.host

13
Implementation
  • Naïve Algorithm
  • Start from root ClassAds
  • Recursive backtracking search
  • Until all ports in the gang are bound (and all
    constraints are satisfied)
  • Optimization
  • Gangmatching problem similar to Join in DB
  • ClassAds indexing scheme (attrib. cons.)
  • Reordering joins
  • (Job Machine) License
  • (Job License) Machine
  • Adaptive algorithms (choose dynamically)

14
Match Algorithm
Job
CPU
A
D
B
C
Construe Rank9.25 (best)
Consfalse
Construe Rank8.14 (2nd best)
Consfalse
Storage
a1
a2
d1
d2
Construe Rank1000
Construe Rank2000
Consfalse
Consfalse
15
Action Involved in Protocol
  • Gangmatching Identical to Matchmakings

Match Algorithm(2)
Gangmatching
Advertisement(1)
Advertisement(1)
Match Notif(3)
Match Notif(3)
Requestor
Providers
Claiming(4)
16
Summary Requirements
  • Need to marshal an arbitrary number of candidates
  • Ability to relate the properties of multiple
    candidates through arbitrary constraints defined
    on candidate individuals and groups
  • Amenable to efficient implementation

17
Summary Characteristics
  • Marshal candidate group
  • Specific kind of candidate and their
    inter-dependencies are defined only by candidates
    itself
  • Matchmaking
  • Single implicit bilateral matches
  • Gangmatching
  • Explicit list of required bilateral matches
  • Allow ClassAds to access information from other
    bilateral match localities

18
References
  • Rajesh Raman, Miron Livny, Marvin Solomon, Policy
    Driven Heterogeneous Resource Co-Allocation with
    Gangmatching, HPDC 2003 June 22-24
  • Rajesh Raman, Miron Livny, Marvin Solomon,
    Matchmaking Distributed Resource Management for
    High Throughput Computing, HPDC 1998
  • Classified Advertisements
  • http//www.cs.wisc.edu/condor/classad/
Write a Comment
User Comments (0)
About PowerShow.com