A Distributed Resource Management Architecture that Supports Advance Reservations and Co-Allocation Presented by Alain Roy, University of Chicago With Ian Foster, Carl Kesselman,Craig Lee, Bob Lindell, and Klara Nahrstedt
IWQoS '992 Goals l Provide end-to-end Quality of Service to applications. This requires: –Discovery and selection of resources –Allocation of resources –Advance reservation of resources Supercomputer Workstation Router
IWQoS '993 Goals l Provide end-to-end Quality of Service to applications. This requires: –Discovery and selection of resources –Allocation of resources –Advance reservation of resources Supercomputer Workstation Router
IWQoS '994 Difficulties/Solutions l Lack of support for advanced reservations –We can use existing advanced reservation mechanisms if available or supply our own l Heterogeneous resources –We provide uniform interfaces l Need to work with complex sets of resources –We use co-reservation and co-allocation agents l Resources in different administrative domains –We use the Globus security infrastructure
IWQoS '995 Solution: GARA Globus Architecture for Reservation and Allocation l Part of the Globus Toolkit ( l Three important contributions: –Advance reservations and computational elements are first-class entities –Uniform treatment of underlying resources –Layered architecture enables generic co- reservation and co-allocation agents
IWQoS '996 Globus, In Brief l A toolkit to help create distributed applications to run in wide-area environments l Globus provides: –Security Mechanisms –Communication Mechanisms –Resource Management –Information Services l Globus is widely used in high-performance computing l More information at l GARA is one research project within Globus
IWQoS '997 GARA Basics—Reservations l There is a generic “reservation”, which has several properties: –Start Time (“now” or future) and Duration –Resource type/Underlying resource identifier –Resource-specific (bandwidth, % CPU…) l All reservations are treated uniformly: –Create/Modify (Given properties) => Returns Reservation Handle –Destroy –Monitor (Callbacks or Polling)
IWQoS '998 GARA Basics—Objects l There is a generic “object” which can represent: –A Network Flow –Processes/Jobs –A File –Something else (Memory…) l All objects are treated uniformly: –Create (Given reservation & details) => Returns Object Handle –Destroy –Monitor (Callbacks or Polling)
IWQoS '999 A picture of what happens (creating a reservation) Resource Gatekeeper (Authenticate and Authorize) Local Resource Manager (LRAM) Create Reservation Handle User Program or Agent
IWQoS '9910 A picture of what happens (creating an object) User Program or Agent Resource Gatekeeper (Authenticate and Authorize) Local Resource Manager (LRAM) Create, given Reservation Handle Object Handle
IWQoS '9911 Co-Reservation/Allocation Agents l When multiple resources are needed, an agent: –Discovers applicable resources via info service –Reserves resources –Allocates objects on the resources l The uniform interface enables these agents to be created easily. –Given this ease, it is convenient to express different strategies such as: >Depth-first vs. best-first >Coping with failures
IWQoS '9912 The big picture Supercomputer Workstation Router Co-Reservation Agent Information Service Gatekeeper Scheduler LRAM Gatekeeper Diffserv LRAM Gatekeeper DSRT LRAM Gatekeeper GRIO LRAM
IWQoS '9913 Implementation—I l We implemented a working prototype. l Object Types: –Multiple processes on an SMP machine –Single process with reserved CPU (DSRT) –Network flows using RSVP –Network flows using Differentiated Services l A simple agent that reserves and allocates processes on two machines with one RSVP network flow between them.
IWQoS '9914 Implementation II—Slot Manager l To track advanced reservations, we use a “slot manager” l We assume exclusive access to resource through the slot manager % of available resource allocated 0% 100% Time
IWQoS '9915 Implementation III—Results l GARA has little overhead –Time to make a reservation: about 1ms (no auth.) –“Native” time to create real-time process: 6.8ms –GARA time to create real-time process: 17.63ms (no auth.) –Extra overhead: 11ms l By far, the greatest cost is for authentication/authorization. –Takes about ms –It is important to authenticate, so it can’t be completely removed –Some of the cost can be alleviated by combining operations
IWQoS '9916 Future Work l Working with more resource types: –Differentiated services –Supercomputer job schedulers –Disk bandwidth (GRIO, from SGI) l Building more sophisticated co-reservation agents l Using RSVP with COPS to enforce advanced reservations l Evaluation of differentiated services with realistic applications
IWQoS '9917 Conclusions l GARA provides a uniform mechanism for reserving and allocating heterogeneous resources l GARA enables construction of generic co- reservation and co-allocation agents l GARA leverages off of the Globus toolkit (e.g. security) l GARA helps achieve end-to-end QoS across heterogeneous resources
IWQoS '9918 Contact Information Alain Roy Globus: