1 / 20

Self-tuning Reactive Distributed Trees for Counting and Balancing

Self-tuning Reactive Distributed Trees for Counting and Balancing. Phuong Hoai Ha Marina Papatriantafilou Philippas Tsigas. OPODIS ’04, Grenoble, France Dec. 15 – 17, 2004. Schedule. Introduction Coordinating Objects Reactive Shared Objects Self-tuning Reactive Trees Algorithms

teague
Download Presentation

Self-tuning Reactive Distributed Trees for Counting and Balancing

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. Self-tuning Reactive Distributed Trees for Counting and Balancing Phuong Hoai Ha Marina Papatriantafilou Philippas Tsigas OPODIS ’04, Grenoble, France Dec. 15 – 17, 2004

  2. Schedule • Introduction • Coordinating Objects • Reactive Shared Objects • Self-tuning Reactive Trees • Algorithms • Evaluation • Conclusions OPODIS '04

  3. check-in         check-in What are coordinating objects? Coordination    • Data structures that evenly distribute processes into small groups, which each accesses different shared objects in a coordinated manner. high collision! high load!    OPODIS '04

  4. F, E, D, C, B, A ( F(k), k++) F:5, E:4, D:3, C:2, B:1, A:0 C5 C7 C4 C1 E:4, ( F(4k), k++) ( F(4k+1), k++) F:5, ( F(4k+2), k++) C:2 ( F(4k+3), k++) D:3 Example: Diffracting trees • A highly distributed data structure: • Small groups of processes locally access shared data in a global coordinated manner. • A disadvantage: • Optimal only for a small range of contention levels B2 A:0 B:1 C6 B1 F, E, D, C, B, A B3 OPODIS '04

  5. Schedule • Introduction • Coordinating Objects • Reactive Shared Objects • Self-tuning Reactive Trees • Algorithms • Evaluation • Conclusions OPODIS '04

  6. Why are reactive objects useful? • Performance of concurrent objects heavily rely on their surrounding environment. • Challenges • In multiprocessor systems, processors’ surrounding environment changes too fast compared with their reactions. • Multiprogramming systems are unpredictable • Interference among processes  traffic on the bus/network, contention on memory modules, load on processors etc. are unpredictable.          OPODIS '04

  7. B2 C7 C5 E:4, C:2, ( F(2k), k++) F:5, ( F(4k+1), k++) C6 C2 C4 ( F(4k+3), k++) D:3 Example: Reactive diffracting trees • Each counter locally react according to its current load. • Disadvantages: • Require experimentally tuned parameters for each system and each application • Inefficient reactive scheme: • Shrink/expand one level in one adjustment step • Costly adjustment A:0 B:1 B1 F, E, D, C, B, A B3 OPODIS '04

  8. Reactive policy OPODIS '04

  9. Schedule • Introduction • Coordinating Objects • Reactive Shared Objects • Self-tuning Reactive Trees • Algorithms • Evaluation • Conclusions OPODIS '04

  10. Self-tuning trees • Advantages: • No need of any experimentally tuned parameters • Efficient reactive scheme: • Ability to shrink and expand many levels at one time • Reasonable costs for adjustments. OPODIS '04

  11. Reactive policy • Problem: balancing the trade-off between two key measures, the contention level and the depth of the tree.            OPODIS '04

  12. Expand a leaf only when the estimated current total load is the highest so far in the present transaction phase, • When expanding, expand just enough to keep the competitive ratio c =  - (-1)/1/(-1), where  = P/2 When to expand/shrink ? Rules for expansion (cf. threat-based algorithm): Advantages: • Reduce contention & keep traversal short • Favor to expand leaves with high contention. • Similar for shrinkage OPODIS '04

  13. 3 5 Expanding a leaf to a subtree IN 12 2 8 2 pending processors 10 6 OPODIS '04

  14. 3 5 Shrinking a subtree to a leaf • Elect2Shrink: check whether half the number of leaves in the subtree vote for the leaf • Shrink: IN 8 12 3/4  shrink 4 6 5 active processors 2 OPODIS '04

  15. Results: Full contention benchmark OPODIS '04

  16. Results: Index distribution benchmark OPODIS '04

  17. Results: Surge load benchmark OPODIS '04

  18. Schedule • Introduction • Coordinating Objects • Reactive Shared Objects • Self-tuning Reactive Trees • Algorithms • Evaluation • Conclusions OPODIS '04

  19. Conclusions • We have presented a new data structure that: • Distributes a set of processors to many smaller groups accessing disjoint critical sections in a global coordinated manner. • Collects information about the contention at the leaves and then efficiently adjusts itself to attain optimal performance without using any experimental parameters. • Methodology: • Ideally, reactive algorithms should be able to observe the changes in the environment and react automatically. • Fixed/tuned parameters cannot support good reactive schemes in dynamic environments such as multiprocessor systems. • Online algorithms and competitive analysis seem to be a promising direction. OPODIS '04

  20. Thank you! OPODIS '04

More Related