-
Notifications
You must be signed in to change notification settings - Fork 9
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
ENH: SampleSurfaceMesh and GeometryMath Speed Optimizations #1020
Merged
nyoungbq
merged 17 commits into
BlueQuartzSoftware:develop
from
nyoungbq:enh/geometry_math_optimizations
Aug 9, 2024
Merged
ENH: SampleSurfaceMesh and GeometryMath Speed Optimizations #1020
nyoungbq
merged 17 commits into
BlueQuartzSoftware:develop
from
nyoungbq:enh/geometry_math_optimizations
Aug 9, 2024
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
nyoungbq
force-pushed
the
enh/geometry_math_optimizations
branch
from
July 19, 2024 11:05
8a44899
to
a70e938
Compare
Do you have the code that you used for the timings? |
I slacked it to you because it uses hardcoding to get around additional library linkage |
nyoungbq
force-pushed
the
enh/geometry_math_optimizations
branch
from
July 30, 2024 16:04
e0af8f7
to
e4f09c9
Compare
imikejackson
force-pushed
the
enh/geometry_math_optimizations
branch
from
August 1, 2024 00:54
e4f09c9
to
fd0d738
Compare
nyoungbq
force-pushed
the
enh/geometry_math_optimizations
branch
from
August 1, 2024 19:55
fd0d738
to
befb4da
Compare
imikejackson
force-pushed
the
enh/geometry_math_optimizations
branch
2 times, most recently
from
August 2, 2024 18:44
8030e48
to
0dd51be
Compare
nyoungbq
force-pushed
the
enh/geometry_math_optimizations
branch
from
August 2, 2024 19:35
0dd51be
to
52586d0
Compare
JDuffeyBQ
reviewed
Aug 2, 2024
imikejackson
force-pushed
the
enh/geometry_math_optimizations
branch
from
August 3, 2024 16:43
52586d0
to
6773be1
Compare
nyoungbq
force-pushed
the
enh/geometry_math_optimizations
branch
from
August 6, 2024 16:48
6773be1
to
511ea86
Compare
imikejackson
force-pushed
the
enh/geometry_math_optimizations
branch
from
August 8, 2024 14:20
511ea86
to
a503f66
Compare
nyoungbq
force-pushed
the
enh/geometry_math_optimizations
branch
from
August 8, 2024 20:46
a503f66
to
5873abc
Compare
…twise calculation, reenable randomness
…ayIntersectBox` if statements
… same result in loops. Selected to preserve existing API
…, parameter reordering for clearer distinction in overloads
… between branched and branchless, and branched is more readable
nyoungbq
force-pushed
the
enh/geometry_math_optimizations
branch
from
August 8, 2024 21:17
1bef4a7
to
07e0742
Compare
JDuffeyBQ
approved these changes
Aug 9, 2024
imikejackson
pushed a commit
to imikejackson/simplnx
that referenced
this pull request
Oct 20, 2024
…tzSoftware#1020) * Add caching routine - approx 15% speedup * Clear excessive branching and excess copying * extract costly construction in tight loop * Consolidate if statement calculations, strip expensive modulo with bitwise calculation, reenable randomness * strip extraneous coping, further if cleanup * Initial Ray changes to attempt to preserve pure c++, converted 'DoesRayIntersectBox` if statements * Add a caching version of Ray to prevent repeated calculations for the same result in loops. Selected to preserve existing API * extract if statements in favor of integer math for CPU pipeline speed, parameter reordering for clearer distinction in overloads * clean up remaining ifs and reduce ray misses by appropriately sizing ray * patch bounding box bug in branchless calculations * repair overlooked functionality in Ray (cached version) * Default seed cleans up output and speeds up process * Modified Ray class * walk back branchless changes -- processing time is roughly equivalent between branched and branchless, and branched is more readable * Add type declarations for Clang Compiler
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Fixes #962
Fixes #961
Updated Documentation
Todo:
if
fromDoesRayIntersectBox
if
fromIsPointInTriangle
if
fromRayCrossesTriangle
Ray.hpp
now uses a cached variant in the algorithm to avoid inserting Eigen (after discussion) while preserving API