Self-tuning Reactive Distributed Trees for Counting and Balancing Phuong Hoai Ha Marina Papatriantafilou Philippas Tsigas OPODIS ’04, Grenoble, France.

Slides:



Advertisements
Similar presentations
On Dynamic Load Balancing on Graphics Processors Daniel Cederman and Philippas Tsigas Chalmers University of Technology.
Advertisements

Optimistic Methods for Concurrency Control By : H.T. Kung & John T. Robinson Presenters: Munawer Saeed.
Concurrency: Mutual Exclusion and Synchronization Chapter 5.
Resource Management §A resource can be a logical, such as a shared file, or physical, such as a CPU (a node of the distributed system). One of the functions.
Min Song 1, Yanxiao Zhao 1, Jun Wang 1, E. K. Park 2 1 Old Dominion University, USA 2 University of Missouri at Kansas City, USA IEEE ICC 2009 A High Throughput.
TI: An Efficient Indexing Mechanism for Real-Time Search on Tweets Chun Chen 1, Feng Li 2, Beng Chin Ooi 2, and Sai Wu 2 1 Zhejiang University, 2 National.
CS 484. Discrete Optimization Problems A discrete optimization problem can be expressed as (S, f) S is the set of all feasible solutions f is the cost.
1 A Self-Tuning Configurable Cache Ann Gordon-Ross and Frank Vahid* Department of Computer Science and Engineering University of California, Riverside.
Erhan Erdinç Pehlivan Computer Architecture Support for Database Applications.
Rumor Routing in Sensor Networks David Braginsky and Deborah Estrin Presented By Tu Tran 1.
Dr. Kalpakis CMSC 661, Principles of Database Systems Index Structures [13]
Authors: Balajee Vamanan and T. N. Vijaykumar Conf. : ACM CoNEXT 2011 Presenter : JHAO-YAN JIAN Date : 2012/5/9 1 TreeCAM: Decoupling Updates and Lookups.
CISC October Goals for today: Foster’s parallel algorithm design –Partitioning –Task dependency graph Granularity Concurrency Collective communication.
Zhang Fu, Marina Papatriantafilou, Philippas Tsigas Chalmers University of Technology, Sweden 1 ACM SAC 2010 ACM SAC 2011.
Penn ESE Spring DeHon 1 ESE (ESE534): Computer Organization Day 15: March 12, 2007 Interconnect 3: Richness.
Extending Network Lifetime for Precision-Constrained Data Aggregation in Wireless Sensor Networks Xueyan Tang School of Computer Engineering Nanyang Technological.
CS 584. Discrete Optimization Problems A discrete optimization problem can be expressed as (S, f) S is the set of all feasible solutions f is the cost.
E.G.M. PetrakisHashing1 Hashing on the Disk  Keys are stored in “disk pages” (“buckets”)  several records fit within one page  Retrieval:  find address.
© 2006 Pearson Addison-Wesley. All rights reserved13 B-1 Chapter 13 (excerpts) Advanced Implementation of Tables CS102 Sections 51 and 52 Marc Smith and.
P2P Course, Structured systems 1 Introduction (26/10/05)
Distributed Process Management1 Learning Objectives Distributed Scheduling Algorithms Coordinator Elections Orphan Processes.
“Evaluating MapReduce for Multi-core and Multiprocessor Systems” Colby Ranger, Ramanan Raghuraman, Arun Penmetsa, Gary Bradski, Christos Kozyrakis Computer.
PMIT-6102 Advanced Database Systems
 B+ Tree Definition  B+ Tree Properties  B+ Tree Searching  B+ Tree Insertion  B+ Tree Deletion.
Parallel Search Algorithm
By Qian Deng MobiUS: Enable Together-Viewing Video Experience across Two Mobile Devices.
IKI 10100: Data Structures & Algorithms Ruli Manurung (acknowledgments to Denny & Ade Azurat) 1 Fasilkom UI Ruli Manurung (Fasilkom UI)IKI10100: Lecture8.
© 2006 Pearson Addison-Wesley. All rights reserved13 B-1 Chapter 13 (continued) Advanced Implementation of Tables.
1 Exploring Custom Instruction Synthesis for Application-Specific Instruction Set Processors with Multiple Design Objectives Lin, Hai Fei, Yunsi ACM/IEEE.
Evaluating FERMI features for Data Mining Applications Masters Thesis Presentation Sinduja Muralidharan Advised by: Dr. Gagan Agrawal.
Triangular Mesh Decimation
Reactive Spin-locks: A Self-tuning Approach Phuong Hoai Ha Marina Papatriantafilou Philippas Tsigas I-SPAN ’05, Las Vegas, Dec. 7 th – 9 th, 2005.
Adaptive Web Caching CS411 Dynamic Web-Based Systems Flying Pig Fei Teng/Long Zhao/Pallavi Shinde Computer Science Department.
Load-Balancing Routing in Multichannel Hybrid Wireless Networks With Single Network Interface So, J.; Vaidya, N. H.; Vehicular Technology, IEEE Transactions.
Autonomic scheduling of tasks from data parallel patterns to CPU/GPU core mixes Published in: High Performance Computing and Simulation (HPCS), 2013 International.
A Study of Balanced Search Trees: Brainstorming a New Balanced Search Tree Anthony Kim, 2005 Computer Systems Research.
CS 682, AI:Case-Based Reasoning, Prof. Cindy Marling1 Chapter 8: Organizational Structures and Retrieval Algorithms This chapter deals with how to find.
A Methodology for Creating Fast Wait-Free Data Structures Alex Koganand Erez Petrank Computer Science Technion, Israel.
16.7 Completing the Physical- Query-Plan By Aniket Mulye CS257 Prof: Dr. T. Y. Lin.
DynamicMR: A Dynamic Slot Allocation Optimization Framework for MapReduce Clusters Nanyang Technological University Shanjiang Tang, Bu-Sung Lee, Bingsheng.
Design Issues of Prefetching Strategies for Heterogeneous Software DSM Author :Ssu-Hsuan Lu, Chien-Lung Chou, Kuang-Jui Wang, Hsiao-Hsi Wang, and Kuan-Ching.
Xiao Liu 1, Yun Yang 1, Jinjun Chen 1, Qing Wang 2, and Mingshu Li 2 1 Centre for Complex Software Systems and Services Swinburne University of Technology.
Improving the Performance Competitive Ratios of Transactional Memory Contention Managers Gokarna Sharma Costas Busch Louisiana State University, USA WTTM.
CS 584. Discrete Optimization Problems A discrete optimization problem can be expressed as (S, f) S is the set of all feasible solutions f is the cost.
Managing Web Server Performance with AutoTune Agents by Y. Diao, J. L. Hellerstein, S. Parekh, J. P. Bigus Presented by Changha Lee.
BATON A Balanced Tree Structure for Peer-to-Peer Networks H. V. Jagadish, Beng Chin Ooi, Quang Hieu Vu.
Caltech CS184 Winter DeHon 1 CS184a: Computer Architecture (Structure and Organization) Day 13: February 6, 2003 Interconnect 3: Richness.
Embedded System Lab. 오명훈 Addressing Shared Resource Contention in Multicore Processors via Scheduling.
Sporadic model building for efficiency enhancement of the hierarchical BOA Genetic Programming and Evolvable Machines (2008) 9: Martin Pelikan, Kumara.
Counting and Distributed Coordination BASED ON CHAPTER 12 IN «THE ART OF MULTIPROCESSOR PROGRAMMING» LECTURE BY: SAMUEL AMAR.
Database Management Systems 3ed, R. Ramakrishnan and J. Gehrke1 Tree-Structured Indexes Content based on Chapter 10 Database Management Systems, (3 rd.
Database Management Systems 3ed, R. Ramakrishnan and J. Gehrke1 Tree-Structured Indexes Chapter 10.
Control of Dynamic Discrete-Event Systems Lenko Grigorov Master’s Thesis, QU supervisor: Dr. Karen Rudie.
Authors: Jiang Xie, Ian F. Akyildiz
ChaNGa: Design Issues in High Performance Cosmology
Scheduling in Distributed Systems
Tree-Structured Indexes
Parallel Programming By J. H. Wang May 2, 2017.
Extra: B+ Trees CS1: Java Programming Colorado State University
Reactive Synchronization Algorithms for Multiprocessors
Hashing CENG 351.
Parallel Programming in C with MPI and OpenMP
Module IV Memory Organization.
B+-Trees and Static Hashing
Efficient Document Analytics on Compressed Data: Method, Challenges, Algorithms, Insights Feng Zhang †⋄, Jidong Zhai ⋄, Xipeng Shen #, Onur Mutlu ⋆, Wenguang.
B+Trees The slides for this text are organized into chapters. This lecture covers Chapter 9. Chapter 1: Introduction to Database Systems Chapter 2: The.
CS184a: Computer Architecture (Structures and Organization)
Uniprocessor scheduling
Tree-Structured Indexes
Parallel Programming in C with MPI and OpenMP
Presentation transcript:

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

OPODIS '042 Schedule Introduction –Coordinating Objects –Reactive Shared Objects Self-tuning Reactive Trees –Algorithms –Evaluation Conclusions

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

OPODIS '044 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 C4 C6 C5 C7 B1 B2 B3 A:0 B:1 E:4, F:5, C:2 D:3 AB,F, E, D, C, AB,F, E, D, C, C1 F:5, E:4, D:3, C:2, B:1, A:0 ( F(4k), k++) ( F(4k+1), k++) ( F(4k+2), k++) ( F(4k+3), k++) ( F(k), k++)

OPODIS '045 Schedule Introduction –Coordinating Objects –Reactive Shared Objects Self-tuning Reactive Trees –Algorithms –Evaluation Conclusions

OPODIS '046 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 '047 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 C7 C6 B1 C4 C5 B2 B3 A:0 B:1 E:4, C:2, F:5, D:3 AB,F, E, D, C, C2 ( F(2k), k++) ( F(4k+1), k++) ( F(4k+3), k++)

OPODIS '048 Reactive policy

OPODIS '049 Schedule Introduction –Coordinating Objects –Reactive Shared Objects Self-tuning Reactive Trees –Algorithms –Evaluation Conclusions

OPODIS '0410 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 '0411 Reactive policy Problem: balancing the trade-off between two key measures, the contention level and the depth of the tree.          

OPODIS '0412 When to expand/shrink ? Advantages: –Reduce contention & keep traversal short –Favor to expand leaves with high contention. Similar for shrinkage Rules for expansion (cf. threat-based algorithm): –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

OPODIS '0413 Expanding a leaf to a subtree IN pending processor s

OPODIS '0414 Shrinking a subtree to a leaf Elect2Shrink: check whether half the number of leaves in the subtree vote for the leaf Shrink: IN active processors 3/4  shrin k

OPODIS '0415 Results: Full contention benchmark

OPODIS '0416 Results: Index distribution benchmark

OPODIS '0417 Results: Surge load benchmark

OPODIS '0418 Schedule Introduction –Coordinating Objects –Reactive Shared Objects Self-tuning Reactive Trees –Algorithms –Evaluation Conclusions

OPODIS '0419 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 '0420 Thank you!