Supporting extended precision on graphics processors

  • Authors:
  • Mian Lu;Bingsheng He;Qiong Luo

  • Affiliations:
  • Hong Kong University of Science and Technology;The Chinese University of Hong Kong;Hong Kong University of Science and Technology

  • Venue:
  • Proceedings of the Sixth International Workshop on Data Management on New Hardware
  • Year:
  • 2010

Quantified Score

Hi-index 0.00

Visualization

Abstract

Scientific computing applications often require support for non-traditional data types, for example, numbers with a precision higher than 64-bit floats. As graphics processors, or GPUs, have emerged as a powerful accelerator for scientific computing, we design and implement a GPU-based extended precision library to enable applications with high precision requirement to run on the GPU. Our library contains arithmetic operators, mathematical functions, and data-parallel primitives, each of which can operate at either multi-term or multi-digit precision. The multi-term precision maintains an accuracy of up to 212 bits of signifcand whereas the multi-digit precision allows an accuracy of an arbitrary number of bits. Additionally, we have integrated the extended precision algorithms to a GPU-based query processing engine to support efficient query processing with extended precision on GPUs. To demonstrate the usage of our library, we have implemented three applications: parallel summation in climate modeling, Newton's method used in nonlinear physics, and high precision numerical integration in experimental mathematics. The GPU-based implementation is up to an order of magnitude faster, and achieves the same accuracy as their optimized, quadcore CPU-based counterparts.