1 / 31

Improved Scheduling Strategies for Agent-Client-Server Middleware

Improved Scheduling Strategies for Agent-Client-Server Middleware. Jack Dongarra Emmanuel Jeannot Keith Seymour Asim Yarkhan INRIA-LORIA-ICL U. Tennessee ICL Nancy, France Knoxville, USA CCGSC 09/13/2006. Outline. Introduction

linore
Télécharger la présentation

Improved Scheduling Strategies for Agent-Client-Server Middleware

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Improved Scheduling Strategies for Agent-Client-Server Middleware Jack Dongarra Emmanuel Jeannot Keith Seymour Asim Yarkhan INRIA-LORIA-ICL U. Tennessee ICL Nancy, France Knoxville, USA CCGSC 09/13/2006

  2. Outline • Introduction • Agent-client-server middleware • Scheduling service • Improvement • Preliminary results • Conclusion Improved scheduling strategies for agent-client-server middleware E. Jeannot

  3. Which Architecture Integration Interoperability Applications Middlewares Services-protocols Resources Improved scheduling strategies for agent-client-server middleware E. Jeannot

  4. A grid = resources : Heterogeneous CPU Power Memory Network System Architecture Distributed Optionally : dedicated, dynamic, … Architecture : the resources Improved scheduling strategies for agent-client-server middleware E. Jeannot

  5. Architecture : applications • An application = a task graph : • Come from a program, a workflow, etc. • vertex : a task, • edge : dependency between two tasks, • Communication cost for each edge, • Computation cost on each resource. T1 T2 T3 T5 T6 T4 T7 T9 T8 Improved scheduling strategies for agent-client-server middleware E. Jeannot

  6. Architecture : agent-client-server middleware Request S2 ! A, B, C Answer (C) Client AGENT(s) S3 S4 Op(C, A, B) S1 S2 Improved scheduling strategies for agent-client-server middleware E. Jeannot

  7. Architecture : scheduling service • Allocate one (many) application(s) on the resources • Dynamic context: arrival task of every applications not known in advance. • Many submissions (1 task, a graph). • Time share model: each resource can execute several tasks at a given moment (no resource constraint).  Play a key role for performance Improved scheduling strategies for agent-client-server middleware E. Jeannot

  8. Some issues To schedule tasks: • You must estimate their duration • You must estimate the communication duration • You must take into account the perturbation between each task • You must take into account several objectives Improved scheduling strategies for agent-client-server middleware E. Jeannot

  9. Estimating task duration We tackle deterministic services • Benchmark a service • To be done on every server • Sometime hard to interpolate • GridSolve: Complexity model + volume of data + speed of processor • Problem of accuracy • Different implementations lead to the same estimation • Different categories leads to the same estimation Improved scheduling strategies for agent-client-server middleware E. Jeannot

  10. Proposed solution : automatic modeling Take a model of the duration of the service. Compute the coefficients of this model using previous runs: • Store information of the run • Update model coefficients using least square method. Guess the duration of the next submission using the updated model. Improved scheduling strategies for agent-client-server middleware E. Jeannot

  11. Example: matrix multiplication t = α1m + α2n + α3k + α4mn + α5mk + α6nk + α7mnk If m = 1211, n = 429, k = 1862  running time: 2.474.10−3 s Then you store: • 1211 429 1862 519519 2254882 798798 967344378 in a row of matrix A • 2.47410−3 in a vector x Applying a least square on A and x gives you the values of the αi. Note that : • The more runs you store the more precise the model. • You can save the model and retrieve it later. • The model is different for each implementation of the service and each server. Improved scheduling strategies for agent-client-server middleware E. Jeannot

  12. Predicting communication time NetSolve: • The server computes the network speed between the itself and the agent • Assume that it is the same between itself and the client • True only if the client is close to the agent. • Otherwise you can say nothing… GridSolve: • Nothing is done : communication time is not taken into account. Proposed improvement: • When the client is given several servers where it can execute a request • Probe the server sending a short message • Choose a server based on these timings. Note: • Improves the accuracy of the communication time • Favors closer server • Degrades the response time (for small data sizes no probe is performed). Improved scheduling strategies for agent-client-server middleware E. Jeannot

  13. Predicting resource utilization Mandatory for good scheduling decision. Recall: time share context (each resource can execute several tasks at the same time). Precision and quality of each information. Charge variation. Two options : Sensors (NWS, etc…). Non intrusive predictor based on simulation (HTM). Improved scheduling strategies for agent-client-server middleware E. Jeannot

  14. Information precision and quality At time t, S1 and S2 are both executing 1 task. ? Two servers with the same load at time t t S1 S2 Improved scheduling strategies for agent-client-server middleware E. Jeannot

  15. Perturbation • Adding a task on a server slows down those that are already running. • Also call interference (Weismann). Improved scheduling strategies for agent-client-server middleware E. Jeannot

  16. Perturbation example Let us consider the arrival of 3 independent tasks on one server Improved scheduling strategies for agent-client-server middleware E. Jeannot

  17. Perturbation example Perturbation example Perturbation of T1 on T0 Perturbation of T1 on itself Improved scheduling strategies for agent-client-server middleware E. Jeannot

  18. Perturbation example Perturbation example Improved scheduling strategies for agent-client-server middleware E. Jeannot

  19. Historical Trace Manager : HTM • HTM : a Fast and non-intrusive prediction module. • Record each task allocation. • Simulate execution of each task (based on the perturbation model). Allows predicting: • the end of each task execution on its resource, • the perturbation of each allocated tasks on the others, • etc. First proposed by Y. Caniou et al. Improved scheduling strategies for agent-client-server middleware E. Jeannot

  20. Multicriteria scheduling • Agent, client, server: • 3 entities/actors: • Different objectives • Client: • Application duration, • Response-time, • Real-time constraint, • Cost, • Server/provider: • Throughput • Stability • Agent/ressource broker: • Fairness between clients • Fairness between tasks ? • Each criteria correspond to one several metrics (stretch, sumflow, makespan, etc.). Improved scheduling strategies for agent-client-server middleware E. Jeannot

  21. MP: Minimum Perturbation For each server s Compute perturbations Ps Take server that minimize  Ps S1 Example: S2 Improved scheduling strategies for agent-client-server middleware E. Jeannot

  22. MP: Minimum Perturbation MP: Minimum Perturbation For each server s Compute perturbations Ps Take server that minimize  Ps S1 Example: S2 Improved scheduling strategies for agent-client-server middleware E. Jeannot

  23. MP: Minimum Perturbation MP: Minimum Perturbation For each server s Compute perturbations Ps Take server that minimize  Ps S1 Example: S2 Improved scheduling strategies for agent-client-server middleware E. Jeannot

  24. MP: Minimum Perturbation MP: Minimum Perturbation For each server s Compute perturbations Ps Take server that minimize  Ps S1 Example: S2 Improved scheduling strategies for agent-client-server middleware E. Jeannot

  25. MSF : Minimum Sum Flow For each server s Compute perturbations Ps Take server that minimize  Ps+duration S1 Example: S2 Improved scheduling strategies for agent-client-server middleware E. Jeannot

  26. MSF : Minimum Sum Flow For each server s Compute perturbations Ps Take server that minimize  Ps+duration S1 Example: S2 Improved scheduling strategies for agent-client-server middleware E. Jeannot

  27. Results : precision of automatic modeling (1 server) Improved scheduling strategies for agent-client-server middleware E. Jeannot

  28. Results: advantage of the automatic modeling (2 server) 2 servers: 1 with ref.BLAS 1 with opt. BLAS Complexity model: No diff. between diff. Implementation Automatic model: Make diff. Between diff. implementations Improved scheduling strategies for agent-client-server middleware E. Jeannot

  29. Heuristic Improvement : response time Improvement for other metrics (Caniou et al. 2004) Improved scheduling strategies for agent-client-server middleware E. Jeannot

  30. Conclusion • Scheduling : a key to performance • Contributions: • Implementation in GridSolve : • Performance prediction with automatic modeling • Improved communication time prediction • Multicriteria perturbation based heuristics • Encouraging results. Improved scheduling strategies for agent-client-server middleware E. Jeannot

  31. Questions? Improved scheduling strategies for agent-client-server middleware E. Jeannot

More Related