Stochastic Rounding Toolbox

MATLAB toolbox for stochastically rounded elementary arithmetic operations in IEEE 754 floating-point arithmetic.
12 Downloads
Aktualisiert 1 Apr 2020

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.

Zitieren als

Massimiliano Fasi and Mantas Mikaitis (2020). Stochastic Rounding Toolbox (https://www.github.com/mfasi/srtoolbox), GitHub. Retrieved April 1, 2020.

Kompatibilität der MATLAB-Version
Erstellt mit R2019b
Kompatibel mit allen Versionen
Plattform-Kompatibilität
Windows macOS Linux

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Versionen, die den GitHub-Standardzweig verwenden, können nicht heruntergeladen werden

Version Veröffentlicht Versionshinweise
1.0.0

Um Probleme in diesem GitHub Add-On anzuzeigen oder zu melden, besuchen Sie das GitHub Repository.
Um Probleme in diesem GitHub Add-On anzuzeigen oder zu melden, besuchen Sie das GitHub Repository.