270 likes | 382 Views
Reducing Server Data Traffic Using a Hierarchical Computation Model. Juan Rubio, Lizy Kurian John, IEEE Transactions on Parallel and Distributed System VOL 16, NO . 10, October 2005 Presented by 張肇烜. Outline. Introduction Hierarchical Computing Evaluation Methodology Results
E N D
Reducing Server Data Traffic Using a Hierarchical Computation Model Juan Rubio, Lizy Kurian John, IEEE Transactions on Parallel and Distributed System VOL16, NO. 10, October 2005 Presented by 張肇烜
Outline • Introduction • Hierarchical Computing • Evaluation Methodology • Results • Conclusions
Introduction • Commercial workloads impose heavy demands on memory and storage subsystems in a server and often result in a large amount of traffic in I/O and memory buses. • The goal: • We propose a hierarchical computing (HC) reduce the data movement between the storage subsystem and the processing units.
Introduction (cont.) • In the HC model, computing is distributed across a computer system’s memory/storage hierarchy. • As we show in this paper, several operations may be efficiently performed where the data resides or at an intermediate level of the hierarchy.
Hierarchical Computing • To take advantage of the parallelism present in the queries, the system decomposes the database queries into simpler operations.
Hierarchical Computing (cont.) • Organization
Hierarchical Computing (cont.) • Execution Model • The first step is the decomposition of the query into simpler operations. • Then, the order of execution of the operations is decided. • Once the operations are scheduled, they are ready to be executed. • HC system differs from a conventional system.
Hierarchical Computing (cont.) • Execution of an operation in the hierarchical computing model.
Hierarchical Computing (cont.) • To facilitate communication of the data, the hardware provides basic control flow signals. • All commands are tagged by the originating node with a unique identifier. • The responding node also tags the response based on the tag of the initial command and the ID of the node. • Finally, the model implements a namespace locator in the form of a software-managed table allocation index.
Hierarchical Computing (cont.) • The current programming interface allows an implementation of the most common operations: • Selection: locates records within a single table that match a particular criterion. • Join: merges the results of two or more selections or tables. • Sort query results by some criterion • Insert, remove, and update records from an existing table.
Hierarchical Computing (cont.) • The current programming interface allows an implementation of the most common operations: • Selection: locates records within a single table that match a particular criterion. • Join: merges the results of two or more selections or tables. • Sort query results by some criterion • Insert, remove, and update records from an existing table.
Hierarchical Computing (cont.) • Individual primitive:
Hierarchical Computing (cont.) • Aggregate primitive:
Hierarchical Computing (cont.) • Coherence: • If the routine running in one processor accesses data and the system instructs another processor to regain write access of that data. • Security: • HC system is allowed by having metadata that is kept in the same storage module as the data.
Evaluation Methodology • Symmetric Multiprocessing (SMP) : • a computer architecture that provides fast performance by making multiple CPUs available to complete individual processes simultaneously • Cache-Coherent Non-Uniform Memory Access (CC-NUMA) : • The system runs one operating system and shows only a single memory image to the user eventhough the memory is physically distributed over the processors.
Evaluation Methodology (cont.) • Configuration of the base systems:
Evaluation Methodology (cont.) • 2X4 CC-NUMA:
Evaluation Methodology (cont.) • HC configurations:
Evaluation Methodology (cont.) • Dimensions of the Tables for Our Implem-entation of a TPC-H-Like Workload in DB2:
Evaluation Methodology (cont.) • Description of selected TPC-H-Like queries:
Results • Amount of data transferred over the global interconnect for selected queries.
Results (cont.) • Average number of processors that are waiting for a global interconnect every cycle.
Results (cont.) • Average memory access time.
Results (cont.) • Speedups of hierarchical computing systems over base shared memory multiprocessor system with a similar amount of computation and storage resources.
Results (cont.) • Speedups of large hierarchical computing systems over base multiprocessor systems with a similar amount of computation, storage, and communication resources.
Conclusions • We believe hat hierarchical computing, which exploits parallelism, distributes computations, and reduces data transport requirements, is a desirable model of computation for future server systems.