1 / 20

Request Scheduling for Multiactive Objects

Master Thesis Defense Ubinet Master University of Nice Sophia Antipolis . Request Scheduling for Multiactive Objects. Student Justine Rochas Supervisor Ludovic Henrio Research lab INRIA-I3S-CNRS-UNS Research team OASIS . July, 2013. Motivation.

dani
Download Presentation

Request Scheduling for Multiactive Objects

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. Master Thesis Defense Ubinet Master University of Nice Sophia Antipolis Request Scheduling for Multiactive Objects Student Justine Rochas Supervisor Ludovic Henrio Research lab INRIA-I3S-CNRS-UNS Research team OASIS July, 2013

  2. Motivation • Facilitate distributed and concurrent programming • Through languages, APIs and middlewares • Ensure good performance • Almost as good as low level mechanisms • Internship – Focus on the concurrent part

  3. Context & Objectives

  4. Context & Objectives Active Objects • Programming model • Asynchronous requests • No concurrency Machine A Machine B Request Active Object Object Response Facilitate distributed programming

  5. Context & Objectives Multiactive Objects • Multi-threaded extension of Active Objects • Objectives • Execute several requests in parallel • In a controlledway • Define compatibilities • Consequence • Increase request throughput Machine Multiactive Object Facilitate parallel programming in the context of Active Objects

  6. Context & Objectives Multiactive Objects – Compatibility Definition • Groups Memberships • Rules

  7. Context & Objectives Multiactive Objects – Scheduling • Objective : maximize parallelism • Explore the entire queue • Schedule as soon as possible Executing requests Request queue . . . Not compatible Compatible • Limit thread creation • Even compatible requests can wait

  8. Context & Objectives Internship Objectives • Add new features to control the scheduling • Request priority • Thread management • Experiment the programming model • Compare performance • Evaluate thread usage • Constraints • Consistent with the programming model • User-friendly • Expressive • Efficient

  9. Current Contributions

  10. Current Contributions Priority - Introduction . . . • Priority : Reorder ready requests Incoming Requests High priority request Request queue . . . Apply compatibilities Compatible request queue . . . Apply priorities Priority queue . . . Scheduling

  11. Current Contributions Integer Based Priorities • Advantages • Easy to introduce – Used in many related works • Fast to choose the next request to execute • Drawbacks • Total order unavoidable • Not user-friendly

  12. Current Contributions Graph Based Priorities G1 • Express dependency between groups • Easier to use • No total order • But uses more complex structures • Graph exploration at each scheduling • Might be inefficient – to be experimented Dependency G2 G3 Dependency G4

  13. Current Contributions Graph Based Priorities – Example G1 G3 G2 G4 Priority queue Incoming request . . . G1 G2 G4 G3

  14. Current Contributions Thread Allocation – Control • Problem Threads are limited + Reordering of requests Starvation of low priority requests • Solution • Limit thread occupancy per group

  15. Current Contributions Thread Allocation – Example Thread pool Priority queue . . . Request to execute Free : 1/4 Usage : 2/2 Usage : 1/2

  16. Current Contributions Incoming Requests Request queue . . . Apply compatibilities Compatible request queue Selection . . . Contributions Apply priorities Priority queue Reordering . . . Apply thread availability Ready queue Selection . . . Scheduling

  17. Future work & conclusion

  18. Future Work & Conclusion Future Work • Formalize execution model (ongoing) • Show that the model is viable • Experiment priority models (future work) • Evaluate overhead of priority specifications • Choose the best specification • Evaluate speedup of high priority requests

  19. Future Work & Conclusion Conclusion • An existing model : Multiactive Objects • Compatibilities parallel execution • Current contributions • Several models for priority specification • Threadmanagement • Future work • Validate the model • Expected results • Provide more control on the scheduling • Increase Multiactive Object efficiency

  20. Request Scheduling for Multiactive Objects Student Justine Rochas Supervisor Ludovic Henrio Research lab INRIA-I3S-CNRS-UNS Research team OASIS

More Related