-
Notifications
You must be signed in to change notification settings - Fork 191
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
Optimize make_match_count_matrix
#2114
Optimize make_match_count_matrix
#2114
Conversation
Yeah! You are a true heroe. |
@h-mayorquin I think we need here to test and define the functions only Right? |
@alejoe91 I wanted to avoid the bare try-except (as that still imports numba even when you are not using it) but for numba the type of solution that preserves the performance is a monster. Check the last commit. I wonder if we should eat the performance importing cost and just have the simple try except. |
There is always a quality metrics test failing somewhere, any idea about this one @alejoe91? It seems unrelated to the change here but I have been wrong about this before... |
I actually had a semi-related question to the point of this PR, so I'm hoping to just index here so if I forget I can come back. I understand the point of keeping minimal dependencies, but there is so much numba in this code why isn't it a dependency?
I've seen that test fail on my PRs before too. I think it is a non-deterministic test that fails on some runs and not others, it probably needs a patch at some point. |
About dependency this is OK to more heavy dependency in sub modules pecific. So if comparison need numba we can use global import for numba I think like do evrywhere else. |
Thanks Ramon! This looks great to me! @samuelgarcia do you have any more comments? |
Let me read this again. |
Just had a discussion with Sam. Some points.
|
HI @h-mayorquin. |
Co-authored-by: Alessio Buccino <[email protected]>
great. lets work on the numba thing. |
OK guys. This was really tedious to test and think about (I did the other Hilbert Space approach out of pure spite) but here it is.
70 times faster in the following benchmark. It would be interesting to know if you think that some other parameters or regime is more interesting:
(
make_match_count_matrix_si
is the current method in main)Here the code: