Stochastic Rounding Toolbox
The Stochastic Rounding Toolbox is a collection of MATLAB functions for emulating stochastic rounding on IEEE-compliant hardware. The functions in the toolbox simulate stochastic rounding of the four elementary arithmetic operations. The following routines are provided:
1. Elementary arithmetic operations
* sradd: addition [Alg. 4.1, 1]
* sradd2: fast addition[Alg. 4.2, 1]
* srmulfma: multiplication using FMA [Alg. 4.3, 1]
* srdiv: division [Alg. 4.5, 1]
2. Robust interface
* srop: argument checking for all of the above.
3. Utility functions
* twosum: augmented summation [Alg. 4.4, 2]
* twoprodfma: augmented product [Alg. 4.8, 2]
The functions in 1. do not check the input arguments, thus are more efficient but less robust. The interface in 2. checks that all input arguments are valid, and is thus slower. All functions are vectorized.
REFERENCES
[1] M. Fasi and M. Mikaitis. Algorithms for stochastically rounded elementary arithmetic operations in IEEE 754 floating-point arithmetic, Technical Report 2020.9, Manchester Institute for Mathematical Sciences, The University of Manchester, UK, Mar 2020.
[2] J.-M. Muller, N. Brunie, F. de Dinechin, C.-P. Jeannerod, M. Joldes, V. Lefèvre, V. Melquiond, N. Revol and S. Torres. Handbook of Floating-Point Arithmetic, Birkhäuser, 2018.
Cite As
Massimiliano Fasi and Mantas Mikaitis (2020). Stochastic Rounding Toolbox (https://www.github.com/mfasi/srtoolbox), GitHub. Retrieved April 1, 2020.
MATLAB Release Compatibility
Platform Compatibility
Windows macOS LinuxTags
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!Discover Live Editor
Create scripts with code, output, and formatted text in a single executable document.
Versions that use the GitHub default branch cannot be downloaded
Version | Published | Release Notes | |
---|---|---|---|
1.0.0 |
|