core-math merge requestshttps://gitlab.inria.fr/core-math/core-math/-/merge_requests2024-02-19T20:39:28+01:00https://gitlab.inria.fr/core-math/core-math/-/merge_requests/59acos: lookup table size optimization using double angle range reduction2024-02-19T20:39:28+01:00Alexei Sibidanovacos: lookup table size optimization using double angle range reductionhttps://gitlab.inria.fr/core-math/core-math/-/merge_requests/58log1p: optimized version -- speed and object size2024-02-02T19:17:06+01:00Alexei Sibidanovlog1p: optimized version -- speed and object sizehttps://gitlab.inria.fr/core-math/core-math/-/merge_requests/55Further optimized exp function2024-01-06T02:24:13+01:00Alexei SibidanovFurther optimized exp functionexp: simplify range reduction, simplify denormal rounding checks, improve precision around zero thus reducing database entries, reduce database by packing results into a bit structure.exp: simplify range reduction, simplify denormal rounding checks, improve precision around zero thus reducing database entries, reduce database by packing results into a bit structure.https://gitlab.inria.fr/core-math/core-math/-/merge_requests/56Optimized exp102024-01-06T02:23:58+01:00Alexei SibidanovOptimized exp10https://gitlab.inria.fr/core-math/core-math/-/merge_requests/54exp2: performance optimization with the bipartite scheme similar to exp.2024-01-06T02:23:42+01:00Alexei Sibidanovexp2: performance optimization with the bipartite scheme similar to exp.https://gitlab.inria.fr/core-math/core-math/-/merge_requests/53lgammaf: first revision of the function2023-12-01T19:17:59+01:00Alexei Sibidanovlgammaf: first revision of the functionhttps://gitlab.inria.fr/core-math/core-math/-/merge_requests/52tgammaf2023-11-07T04:41:08+01:00Alexei Sibidanovtgammafhttps://gitlab.inria.fr/core-math/core-math/-/merge_requests/50log10p1f: use twice less lookup tables, do not raise inexact exception for...2023-09-19T16:57:51+02:00Alexei Sibidanovlog10p1f: use twice less lookup tables, do not raise inexact exception for...log10p1f: use twice less lookup tables, do not raise inexact exception for exact cases, introduce fast and accurate paths for better performance.log10p1f: use twice less lookup tables, do not raise inexact exception for exact cases, introduce fast and accurate paths for better performance.https://gitlab.inria.fr/core-math/core-math/-/merge_requests/49log10f update -- no inexact exceptions for powers of ten, treat all special...2023-09-15T07:16:54+02:00Alexei Sibidanovlog10f update -- no inexact exceptions for powers of ten, treat all special...log10f update -- no inexact exceptions for powers of ten, treat all special cases in a separate function, decrease lookup tables size in two times, slight performance improvement.log10f update -- no inexact exceptions for powers of ten, treat all special cases in a separate function, decrease lookup tables size in two times, slight performance improvement.https://gitlab.inria.fr/core-math/core-math/-/merge_requests/45sinhf: test result and set errno in case of overflow, use the roundeven...2023-08-16T20:20:13+02:00Alexei Sibidanovsinhf: test result and set errno in case of overflow, use the roundeven...sinhf: test result and set errno in case of overflow, use the roundeven function instead of floor to split polynomial evaluation into even and odd parts as well as introduce fast and accurate paths for better throughput and latencysinhf: test result and set errno in case of overflow, use the roundeven function instead of floor to split polynomial evaluation into even and odd parts as well as introduce fast and accurate paths for better throughput and latencyhttps://gitlab.inria.fr/core-math/core-math/-/merge_requests/46coshf: test result and set errno in case of overflow, use the roundeven...2023-08-16T20:20:00+02:00Alexei Sibidanovcoshf: test result and set errno in case of overflow, use the roundeven...coshf: test result and set errno in case of overflow, use the roundeven function instead of floor to split polynomial evaluation into even and odd parts as well as introduce fast and accurate paths for better throughput and latencycoshf: test result and set errno in case of overflow, use the roundeven function instead of floor to split polynomial evaluation into even and odd parts as well as introduce fast and accurate paths for better throughput and latencyhttps://gitlab.inria.fr/core-math/core-math/-/merge_requests/47float reciprocal square root update2023-08-16T20:19:43+02:00Alexei Sibidanovfloat reciprocal square root updatehttps://gitlab.inria.fr/core-math/core-math/-/merge_requests/44reworked sin and cos for better performance, finite-math-only option removed...2023-08-10T18:45:47+02:00Alexei Sibidanovreworked sin and cos for better performance, finite-math-only option removed...reworked sin and cos for better performance, finite-math-only option removed to possible solve problems with the rounding to infinityreworked sin and cos for better performance, finite-math-only option removed to possible solve problems with the rounding to infinityhttps://gitlab.inria.fr/core-math/core-math/-/merge_requests/43expm1f is reviewed and updated2023-08-03T19:52:48+02:00Alexei Sibidanovexpm1f is reviewed and updatedexpm1f is reviewed and updated, set errno when needed, improved the latency with the fast path, slightly increased range around 0.expm1f is reviewed and updated, set errno when needed, improved the latency with the fast path, slightly increased range around 0.https://gitlab.inria.fr/core-math/core-math/-/merge_requests/42Improve performance of atanhf using the difference of logarithms formula as...2023-07-24T18:35:41+02:00Alexei SibidanovImprove performance of atanhf using the difference of logarithms formula as...Improve performance of atanhf using the difference of logarithms formula as well as fast and accurate paths.Improve performance of atanhf using the difference of logarithms formula as well as fast and accurate paths.https://gitlab.inria.fr/core-math/core-math/-/merge_requests/40Update of exp10f2023-07-10T20:21:31+02:00Alexei SibidanovUpdate of exp10ffor performance split the function into fast and accurate paths, a more memory wise treatment of exact cases, the function now has to fully conform to the ISO C standard.for performance split the function into fast and accurate paths, a more memory wise treatment of exact cases, the function now has to fully conform to the ISO C standard.https://gitlab.inria.fr/core-math/core-math/-/merge_requests/41reduce lookup tables in two times, introduce fast and accurate paths for bett...2023-07-10T20:21:16+02:00Alexei Sibidanovreduce lookup tables in two times, introduce fast and accurate paths for better performancehttps://gitlab.inria.fr/core-math/core-math/-/merge_requests/39expf: set errno for overflow and underflow results, more crude range reductio...2023-07-07T18:15:11+02:00Alexei Sibidanovexpf: set errno for overflow and underflow results, more crude range reduction...expf: set errno for overflow and underflow results, more crude range reduction and smaller degree polynomial for performance which causes 4x larger lookup table.expf: set errno for overflow and underflow results, more crude range reduction and smaller degree polynomial for performance which causes 4x larger lookup table.https://gitlab.inria.fr/core-math/core-math/-/merge_requests/38exp2f update2023-07-05T03:13:04+02:00Alexei Sibidanovexp2f updateset errno for overflow and underflow results, more crude range reduction for performance as well as smaller degree polynomial which causes 4x larger lookup table.set errno for overflow and underflow results, more crude range reduction for performance as well as smaller degree polynomial which causes 4x larger lookup table.https://gitlab.inria.fr/core-math/core-math/-/merge_requests/37add fast path and small aesthetic changes. Add a compilation option to avoid...2023-06-22T18:13:40+02:00Alexei Sibidanovadd fast path and small aesthetic changes. Add a compilation option to avoid...add fast path and small aesthetic changes. Add a compilation option to avoid the square root argument check.add fast path and small aesthetic changes. Add a compilation option to avoid the square root argument check.