-
Notifications
You must be signed in to change notification settings - Fork 18
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
added vectorized pak version #72
Conversation
Codecov Report
@@ Coverage Diff @@
## main #72 +/- ##
==========================================
- Coverage 80.61% 78.79% -1.82%
==========================================
Files 10 10
Lines 1145 1160 +15
==========================================
- Hits 923 914 -9
- Misses 222 246 +24
Continue to review full report at Codecov.
|
Thanks @diegodoimo this is a change that me and @imacocco had in mind for a long time. Apart from the small code improvements suggested I have the following curiosity: for small datasets do we see a near zero improvement or do we actually see worse results using the full Cython implementation? |
Better in any case. It can be easily tested as I left the flag 'optimized' to select the original implementation, when set to false. (I left it as I didn't want to remove a big piece of the code until we are sure the 'optimized' one can be fine) |
I added a ''faster'' version of pak, vectorizing all the for loops and adding a cython version to optimize the likelihood of the full dataset and not just that of a single point. Unfortunately, the performance improvement can be appreciated only for relatively large data sizes:
15% faster for 90k points
50% faster for 250k points