VLI - A Library for High Precision Integer and Polynomial Arithmetic.

Lecture Notes in Computer Science(2013)

引用 2|浏览9
暂无评分
摘要
We present a high-performance C++ library for high but fixed precision (128 to 512 bit) integer arithmetic and symbolic polynomial computations. While the large integer and polynomial computation parts of the library can be used independently optimized kernels for symbolic polynomials with large integer coefficients are provided. The kernels were manually optimized in assembly language for the x86-64 and power64 architectures. Our main target application is high-temperature series expansions which requires inner products of large vectors of polynomials with large integer coefficients. For this purpose we implemented a tunable hybrid CPU/ GPU inner product function using OpenMP and NVIDIA CUDA with inline PTX assembly. This way we make optimal use of today's and upcoming hybrid supercomputers and attain 49% of the peak performance of the current NVIDIA Kepler GPU. Compared to a pure CPU solution using the GNU Multiple Precision Arithmetic Library (GMP) we gain a speedup of 13x for a pure CPU inner product and 38x using a GPU accelerator.
更多
查看译文
关键词
Large Integer, Polynomial Multiplication, Integer Multiplication, Integer Arithmetic, Memory Layout
AI 理解论文
溯源树
样例
生成溯源树,研究论文发展脉络
Chat Paper
正在生成论文摘要