Skip to content

Include discussion of performance vs. accuracy tradeoffs and comparison to fastmath in docs #389

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 3 commits into from
Apr 11, 2022

Conversation

danielwe
Copy link
Contributor

This draft PR is based on a recent slack thread about the arithmetic transformations and function substitutions performed by @turbo and how they affect both accuracy and performance, as well as how they compare to the transformations performed by @fastmath. Thanks to @chriselrod and @oscardssmith for the incredibly helpful discussion. It would be great to preserve these insights and make them easy to find for future users. For now, I've copied the discussion verbatim over to a separate page in the docs. Aiming to come back and edit this into prose soon, but maintainers are also welcome to edit freely.

@codecov
Copy link

codecov bot commented Mar 30, 2022

Codecov Report

Merging #389 (72edb2f) into master (23f5d56) will increase coverage by 2.36%.
The diff coverage is n/a.

❗ Current head 72edb2f differs from pull request most recent head 2a37fd7. Consider uploading reports for the commit 2a37fd7 to get more accurate results

@@            Coverage Diff             @@
##           master     #389      +/-   ##
==========================================
+ Coverage   84.76%   87.12%   +2.36%     
==========================================
  Files          38       38              
  Lines        9417     9437      +20     
==========================================
+ Hits         7982     8222     +240     
+ Misses       1435     1215     -220     
Impacted Files Coverage Δ
src/codegen/lower_threads.jl 49.04% <0.00%> (-9.99%) ⬇️
src/simdfunctionals/mapreduce.jl 91.95% <0.00%> (-0.52%) ⬇️
src/simdfunctionals/filter.jl 89.65% <0.00%> (-0.35%) ⬇️
src/precompile.jl 100.00% <0.00%> (ø)
src/predicates.jl 100.00% <0.00%> (ø)
src/constructors.jl 98.23% <0.00%> (ø)
src/getconstindexes.jl 100.00% <0.00%> (ø)
src/parse/add_loads.jl 98.57% <0.00%> (ø)
src/LoopVectorization.jl 75.00% <0.00%> (ø)
src/codegen/split_loops.jl 100.00% <0.00%> (ø)
... and 28 more

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 5d6f138...2a37fd7. Read the comment docs.

@chriselrod
Copy link
Member

Are you planning on getting back to this?
If you don't want to edit the content, you could just make a comment that this was a slack discussion, and that anyone reading it is welcome to make a PR to turn the conversation into a more concise explanation.

@danielwe danielwe force-pushed the fastmathdocs branch 2 times, most recently from 6a07255 to 2037c26 Compare April 7, 2022 04:12
@danielwe
Copy link
Contributor Author

danielwe commented Apr 7, 2022

Yeah, realistically it would probably be a while before I'd get around to editing this. How does it look now?

@danielwe danielwe marked this pull request as ready for review April 7, 2022 04:14
@chriselrod
Copy link
Member

Yeah, I think this is fine, thanks!

@chriselrod chriselrod merged commit 4fcf851 into JuliaSIMD:master Apr 11, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants