We consider automatic performance tuning of dense symmetric eigenvalue problems using atmathcorelib, which is a library to assist automatic tuning. We deal with two problems, namely, automatic code selection for the s...
详细信息
We consider automatic performance tuning of dense symmetric eigenvalue problems using atmathcorelib, which is a library to assist automatic tuning. We deal with two problems, namely, automatic code selection for the symmetric generalized eigenvalue problem in distributed-memory parallel environments and automatic parameter tuning in tridiagonalization of dense symmetric matrices on multicore processors. As for the first problem, numerical experiments show that atmathcorelib can choose the fastest solver for a given computing environment and problem size quickly even if the fluctuation in the execution time is as high as 40%. As for the second problem, atmathcorelib was able to select nearly optimal combinations of the algorithm and its parameter reliably and efficiently for various computing environments and matrix sizes. The performance of auto-tuning was further enhanced by incorporating a user-provided execution-time model into atmathcorelib.
We consider the problem of online automatic tuning. In this setting, we execute the target program with some tuning parameters N times, where N is given, while optimizing the parameters to minimize some objective func...
详细信息
ISBN:
(纸本)9781509035311
We consider the problem of online automatic tuning. In this setting, we execute the target program with some tuning parameters N times, where N is given, while optimizing the parameters to minimize some objective function such as the total execution time. Thus we have to choose the parameters for each execution by taking into account the trade-off between exploration and exploitation. The atmathcorelib library developed by Suda is a set of software that solves this problem. To model the performance of the target software, atmathcorelib uses a linear statistical model, and its basis functions must be provided by the user. In this paper, we investigate how to choose the basis functions appropriately, using the singular value decomposition of a square matrix as an example. We consider three cases, namely, (I) when the performance characteristics of the target problem are well understood by the user, (II) when the tuning parameter has a complicated structure, as occurs in the case of simultaneous selection of an algorithm and its parameter, and (III) when the performance characteristics of the target problem are not known to the user. The results of using atmathcorelib with different basis functions for each case are given. They help one understand the tuning by atmathcorelib and contribute to the progress of atmathcorelib.
暂无评论