Computing Reviews
Today's Issue Hot Topics Search Browse Recommended My Account Log In
Review Help
CPFloat: a C library for simulating low-precision arithmetic
Fasi M., Mikaitis M. ACM Transactions on Mathematical Software49 (2):1-32,2023.Type:Article
Date Reviewed: Jan 12 2024

Mixed-mode floating-point arithmetic (MMFPA) is a requirement of modern numerical computing. The need arises, for instance, when computations entail execution on graphics processing units (GPUs) interleaved with execution on general-purpose (GP) central processing units (CPUs). This paper starts with a comparative survey of CPFloat pitted against a dozen other libraries intended to facilitate such tasks, and proceeds with the unique contributions of CPFloat, inclusive of technical background and minimalistic how-to documentation.

CPFloat is meant for low-precision (as opposed to arbitrary precision) format interchange. It belongs to the family of MMFPA libraries that translate to and from a GP IEEE standard (limited to 32-bit or 64-bit floats for CPFloat), run the arithmetic on native GP hardware, and interface with low-precision GPU representations by simple conversion.

Its contribution is twofold. First, as a plethora of original algorithms needed to support rounding between representations in different precision. Techniques in CPFloat encompass a wide gamut spanning standard modes and novel modes (for example, stochastic rounding). It comprises a formal treatment of subnormal quantities somewhat obscure on first impression (it would have benefited from examples) but relevant. Other discussions of theoretical foundations also suffer from inhomogeneous levels of clarity.

Its second contribution is an efficient implementation strategy and a description of its coding, including validation for correctness. The proven performance is remarkable.

A missing validation is the relative comparison of precision and accuracy of extensive iterative computation. In fact, the accumulation of rounding errors in CPFloat remains unaddressed.

A must-read paper that presents technical background and minimalistic how-to documentation for the homonymous open-source code available from GitHub.

Reviewer:  A. Squassabia Review #: CR147688
Bookmark and Share
  Featured Reviewer  
Mathematical Software (G.4 )
Math (I.7.2 ... )
Would you recommend this review?
Other reviews under "Mathematical Software": Date
Mathematical applications of electronic spreadsheets
Arganbright D., McGraw-Hill, Inc., New York, NY, 1984. Type: Book (9789780070024298)
May 1 1985
The NAG Library: a beginners guide
Phillips J., Oxford University Press, Inc., New York, NY, 1987. Type: Book (9789780198532637)
May 1 1988
Numerical software tools in C
Kempf J., Prentice-Hall, Inc., Upper Saddle River, NJ, 1987. Type: Book (9789780136272748)
Apr 1 1988

E-Mail This Printer-Friendly
Send Your Comments
Contact Us
Reproduction in whole or in part without permission is prohibited.   Copyright 1999-2024 ThinkLoud®
Terms of Use
| Privacy Policy