Download presentation
Presentation is loading. Please wait.
Published byCade Medick Modified over 9 years ago
1
Request Scheduling for Multiactive Objects StudentJustine Rochas SupervisorLudovic Henrio Research lab INRIA-I3S-CNRS-UNS Research teamOASIS Master Thesis Defense Ubinet Master University of Nice Sophia Antipolis July, 2013 1 / 20
2
Motivation Facilitate distributed and concurrent programming Through languages, APIs and middlewares Ensure good performance Almost as good as low level mechanisms 2 / 20 Internship – Focus on the concurrent part
3
CONTEXT & OBJECTIVES 3 / 20
4
Active Objects Programming model Asynchronous requests No concurrency Machine A Machine B Active Object Request Response Object 4 / 20 Context & Objectives Facilitate distributed programming
5
Multiactive Objects Multi-threaded extension of Active Objects Objectives Execute several requests in parallel In a controlled way Define compatibilities Consequence Increase request throughput Multiactive Object Machine 5 / 20 Context & Objectives Facilitate parallel programming in the context of Active Objects
6
Multiactive Objects – Compatibility Definition Groups Rules Memberships 6 / 20 Context & Objectives
7
Multiactive Objects – Scheduling Context & Objectives 7 / 20 Objective : maximize parallelism → Explore the entire queue → Schedule as soon as possible... Executing requests Not compatibleCompatible Request queue Limit thread creation → Even compatible requests can wait
8
Internship Objectives 1. Add new features to control the scheduling a) Request priority b) Thread management 1. Experiment the programming model a) Compare performance b) Evaluate thread usage Constraints Consistent with the programming model User-friendly Expressive Efficient 8 / 20 Context & Objectives
9
CURRENT CONTRIBUTIONS 9 / 20
10
Priority - Introduction Priority : Reorder ready requests 10 / 20 Current Contributions High priority request... Incoming Requests Scheduling Request queue Compatible request queue Priority queue Apply compatibilities Apply priorities
11
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 Current Contributions 11 / 20
12
Graph Based Priorities 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 Current Contributions 12 / 20 Dependency G1 G3G2 G4
13
Graph Based Priorities – Example Current Contributions 13 / 20 G1 G3 G2 G4... Priority queue G1G2G4 G3 Incoming request
14
Thread Allocation – Control Problem Threads are limited + Reordering of requests Starvation of low priority requests Solution Limit thread occupancy per group 14 / 20 Current Contributions
15
Thread Allocation – Example Current Contributions 15 / 20... Usage : 2/2Usage : 1/2 Request to execute Thread pool Priority queue Free : 1/4
16
Current Contributions 16 / 20... Incoming Requests Scheduling Request queue Compatible request queue Priority queue Apply compatibilities Apply priorities... Apply thread availability Ready queue Selection Reordering Contributions
17
FUTURE WORK & CONCLUSION 17 / 20
18
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 18 / 20 Future Work & Conclusion
19
Conclusion An existing model : Multiactive Objects Compatibilities parallel execution Current contributions Several models for priority specification Thread management Future work Validate the model Expected results Provide more control on the scheduling Increase Multiactive Object efficiency 19 / 20 Future Work & Conclusion
20
Request Scheduling for Multiactive Objects StudentJustine Rochas SupervisorLudovic Henrio Research lab INRIA-I3S-CNRS-UNS Research teamOASIS 20 / 20
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.