Ouroboros: A Tool for Building Generic, Hybrid, Divide& Conquer Algorithms
A hybrid divide and conquer algorithm is one that switches from a divide and conquer to an iterative strategy at a specified problem size. Such algorithms can provide significant performance improvements relative to alternatives that use a single strategy. However, the identification of the optimal problem size at which to switch for a particular algorithm and platform can be challenging. We describe an automated approach to this problem that first conducts experiments to explore the performance space on a particular platform and then uses the resulting performance data to construct an optimal hybrid algorithm on that platform. We implement this technique in a tool, ''Ouroboros'', that automatically constructs a high-performance hybrid algorithm from a set of registered algorithms. We present results obtained with this tool for several classical divide and conquer algorithms, including matrix multiply and sorting, and report speedups of up to six times achieved over non-hybrid algorithms.
- Research Organization:
- Lawrence Livermore National Lab. (LLNL), Livermore, CA (United States)
- Sponsoring Organization:
- US Department of Energy (US)
- DOE Contract Number:
- W-7405-ENG-48
- OSTI ID:
- 15005827
- Report Number(s):
- UCRL-JC-152267; TRN: US200402%%148
- Resource Relation:
- Conference: Supercomputing 2003, Phoenix, AZ (US), 11/15/2003--11/21/2003; Other Information: PBD: 1 May 2003
- Country of Publication:
- United States
- Language:
- English
Similar Records
Supporting divide-and-conquer algorithms for image processing
A scalable divide-and-conquer parallel algorithm for finite state automata and its applications