DocumentCode :
2243812
Title :
Automatically Tuned Dynamic Programming with an Algorithm-by-Blocks
Author :
Li, Jiajia ; Tan, Guangming ; Chen, Mingyu
Author_Institution :
Inst. of Comput. Technol., Chinese Acad. of Sci., Beijing, China
fYear :
2010
fDate :
8-10 Dec. 2010
Firstpage :
452
Lastpage :
459
Abstract :
As the complexity of current computer architecture increases, domain-specific program generators are extensively used to implement performance portable libraries. Dynamic programming is a performance-critical kernel in many applications including engineering operations and bioinformatics. In this paper, we propose an Automatically Tuned Dynamic Programming (ATDP) to optimize performance of dynamic programming algorithm across various architectures. First, an algorithm-by-blocks for dynamic programming is designed to facilitate optimizing with well-known techniques including cache and register tiling. Further, the parameterized algorithm-by-blocks is cooperative with an auto-tuning framework and leverages a hill climbing algorithm to search the possible best program on a given platform. The experiments on two ×86 processors demonstrate that (i) the generated scalar programs improve performance by over 10 times, (ii) the vector programs further speedup the scalar ones by a factor of 4 and 2 for single-precision and double-precision, respectively.
Keywords :
dynamic programming; ATDP; algorithm-by-blocks; automatically tuned dynamic programming; autotuning framework; domain-specific program generator; hill climbing algorithm; performance-critical kernel; Algorithm-by-Blocks; Auto-tuning; Dynamic Programming; High Performance Computing; SIMD;
fLanguage :
English
Publisher :
ieee
Conference_Titel :
Parallel and Distributed Systems (ICPADS), 2010 IEEE 16th International Conference on
Conference_Location :
Shanghai
ISSN :
1521-9097
Print_ISBN :
978-1-4244-9727-0
Electronic_ISBN :
1521-9097
Type :
conf
DOI :
10.1109/ICPADS.2010.117
Filename :
5695635
Link To Document :
بازگشت