Efficient multiplication of polynomials on graphics hardware

August 31st, 2009

Abstract:

We present the algorithm to multiply univariate polynomials with integer coefficients efficiently using the Number Theoretic transform (NTT) on Graphics Processing Units (GPU). The same approach can be used to multiply large integers encoded as polynomials. Our algorithm exploits fused multiply-add capabilities of the graphics hardware. NTT multiplications are executed in parallel for a set of distinct primes followed by reconstruction using the Chinese Remainder theorem (CRT) on the GPU. Our benchmarking experiences show the NTT multiplication performance up to 77 GMul/s. We compared our approach with CPU-based implementations of polynomial and large integer multiplication provided by NTL and GMP libraries.

(Pavel Emeliyanenko: “Efficient multiplication of polynomials on graphics hardware”, Proceedings of the 8th International Conference on Advanced Parallel Processing Technologies, 24-25th August, Rapperswil, Switzerland. DOI: 10.1007/978-3-642-03644-6_11)