Skip to content
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

WaveletTree CPU usage #55

Open
heckendorfc opened this issue Jan 17, 2022 · 2 comments
Open

WaveletTree CPU usage #55

heckendorfc opened this issue Jan 17, 2022 · 2 comments
Assignees

Comments

@heckendorfc
Copy link

WaveletTree.rangeQuery regularly uses excessive CPU time (10+ cores used when calling with -threads 1), I believe due to JVM overhead in handling the recursion. Is it possible to rewrite this iteratively?

@mvaudel
Copy link
Contributor

mvaudel commented Jan 18, 2022

Hi and thanks for narrowing down the issue this specifically.
We are currently refactoring another section of the code and will look into this issue as soon as we get some bandwidth. I will get back to you as soon as I have looked into it. In the meantime, PRs are most welcome :-)

@mvaudel mvaudel self-assigned this Jan 18, 2022
@heckendorfc
Copy link
Author

I tried rewriting rangeQueryOneValue as an iterative algorithm as a proof of concept since it was already tail call, but it doesn't seem to make much difference on the CPU usage. Maybe the problem is more involved and we just have to live with it.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants