Scientific library for high-precision computations and research
Scientific library for high-precision computations and research
FPplus was originally developed for a research project on instructions to accelerate high-precision computations, but it is also useful as a general-purpose library. FPplus features:
-ffast-math
option when compiling with gcc
or clang
-fp-model precise
when compiling with icc
cl_khr_fp64
, cl_amd_fp64
, or cl_APPLE_fp64_basic_ops
extensionFP_FAST_FMA
must be defined by OpenCL compiler)-cl-fast-relaxed-math
option#include <fpplus.h>
Marat Dukhan, Richard Vuduc and Jason Riedy "Wanted: Floating-Point Add Round-off Error instruction". arXiv preprint 1603.00491 (2016)
The library was developed by Marat Dukhan as a research project at Richard Vuduc's HPC Garage lab in the Georgia Institute of Technology, College of Computing, School of Computational Science and Engineering. FPplus is based on algorithms in Handbook of Floating-Point Arithmetics, David Bailey's QD library, the works of Jonathan Shewchuk, Theodorus Dekker, Donald Knuth, and Sylvie Boldo and Jean-Michel Muller. We thank Jason Riedy for his feedback and support.
This material is based upon work supported by the U.S. National Science Foundation (NSF) Award Number 1339745 and the U.S. Dept. of Energy (DOE), Office of Science, Advanced Scientific Computing Research under award DE-FC02-10ER26006/DE-SC0004915. Any opinions, findings and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect those of NSF or DOE.