For a given linear algebra problem, we consider those solution algorithms that are mathematically equivalent to one another, and that mostly consist of a sequence of calls to kernels from optimized libraries such as BLAS and LAPACK. Although equivalent (at least in exact precision), those algorithms typically exhibit significant differences in terms of performance, and naturally, we are interested in finding the fastest one(s). In practice, we often observe that multiple algorithms yield comparable performance characteristics. Therefore, we aim to identify the subset of algorithms that are reliably faster than the rest. To this end, instead of quantifying the performance of an algorithm in absolute terms, we present a measurement-based approach that assigns a relative score to the algorithms in comparison to one another. The relative performance is encoded by sorting the algorithms based on pair-wise comparisons and ranking them into equivalence classes, where more than one algorithm can obtain the same rank. We show that the relative performance leads to robust identification of the fastest algorithms, that is, reliable identifications even with noisy system conditions
翻译:对于给定的线性代数问题,我们考虑的是那些在数学上彼此等同的解算法,这些解算法大多由BLAS和LAPACK等优化图书馆的内核呼叫序列组成。尽管这些算法相当(至少精确),但这些算法通常在性能方面差异很大,而且自然,我们感兴趣的是找到最快的。在实践中,我们常常发现多种算法产生类似的性能特征。因此,我们的目标是确定可靠比其他算法更快的算法子子子组。为此,我们不是用绝对值量化算法的性能,而是提出一种基于测量的方法,给算法分配相对的分数,相对性能通过对双向比较进行算法排序并将其排到等同类,在类中不止一种算法可以取得相同的等级。我们表明,相对性能导致对最快的算法的精确识别,也就是说,即使有响亮的系统条件,也能够可靠地识别。