JuliaMath / JuliaMath/DoubleFloats.jl
`exp` and `log` are much slower than they should be.
- Dominant language
- Julia
- Stars
- 172
- Forks
- 37
- PR merge metrics
- No merged PRs in 30d
Description
both are around 100x slower than float64. `exp` in particular should be able to be done relatively quickly since `exp(hi+lo)=exp(hi)exp(lo)`, and since `hi` can easily be reduced to [1,2), `exp(lo)` only needs 2 terms.
I have fewer ideas for `log`, but there should be something better than the current behavior.
also, it's worth figuring on double64 versions of these functions because the double32 versions can be done really quickly using float64.
Contributor guide
No contributing guide indexed for this repository
Research direction
Start by locating the current exp and log implementations and their tests, then measure them against float64. Investigate the proposed hi+lo reduction for exp and whether double32 and double64 variants are required. Done means faster implementations with accuracy and performance tests covering both functions and supported precisions.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- julia
- Domain
- performance
- Issue type
- Refactor
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 30/100