Searcharxiv⌕ Search

arXiv subjects

Evgeny Latkin

Publications and source records attributed to Evgeny Latkin.

4 recordsLinked to original sources

Twofold exp and log

This article is about twofold arithmetic. Here I introduce algorithms and experimental code for twofold variant of C/C++ standard functions exp() and log(), and expm1() and log1p(). Twofold function $y_0+y_1 \approx f(x_0+x_1)$ is nearly 2x-precise so can assess accuracy of standard one. Performance allows assessing on-fly: twofold texp() over double is ~10x times faster than expq() by GNU quadmath.

cs.MS↗

Twofolds in C and C++

Here I propose C and C++ interfaces and experimental implementation for twofolds arithmetic. I introduce twofolds in my previous article entitled "Twofold fast arithmetic" for tracking floating-point inaccuracy. Testing shows, plain C enables high-performance computing with twofolds. C++ interface enables coding as easily as ordinary floating-point numbers. My goal is convincing you to try twofolds; I think assuring accuracy of math computations is worth its cost. Code and use examples available at my web site, references inside.

cs.MS↗

Twofold fast arithmetic

Can we assure math computations by automatic verifying floating-point accuracy? We define fast arithmetic (based on Dekker [1971]) over twofold approximations $z\approx z_0+z_1$, such that $z_0$ is standard result and $z_1$ assesses inaccuracy $Δz_0=z-z_0$. We propose on-fly tracking $z_1$, detecting if $Δz_0$ appears too high. We believe permanent tracking is worth its cost. C++ test code for Intel AVX available via web.

math.NA↗

Twofold fast summation

Debugging accumulation of floating-point errors is hard; ideally, computer should track it automatically. Here we consider twofold approximation of an exact real with value + error pair of floating-point numbers. Normally, value + error sum is more accurate than value alone, so error can estimate deviation between value and its exact target. Fast summation algorithm, that provides twofold sum of x[1]+...+x[N] or dot product x[1]*y[1]+...+x[N]*y[N], can be same fast as direct summation sometimes if leveraging processor underused potential. This way, we can hit three goals: improve precision, track inaccuracy, and do this with little if any loss in performance.

math.NA↗