-
Notifications
You must be signed in to change notification settings - Fork 14
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
alg: profile and optimize algorithms #25
Labels
perf
Performance issues and optimization
Comments
mmcloughlin
changed the title
addchain: profile and optimize algorithms
alg: profile and optimize algorithms
May 16, 2020
mmcloughlin
added a commit
that referenced
this issue
Apr 26, 2021
mmcloughlin
added a commit
that referenced
this issue
May 12, 2021
mmcloughlin
added a commit
that referenced
this issue
May 12, 2021
Implement comprehensive profiling options in the search subcommand, using the https://github.com/mmcloughlin/profile module. Profiles are configured with the ADDCHAIN_PROFILE environment variable. Removes the `-cpuprofile` option. Updates #60 Updates #25
mmcloughlin
added a commit
that referenced
this issue
May 12, 2021
mmcloughlin
added a commit
that referenced
this issue
May 13, 2021
mmcloughlin
added a commit
that referenced
this issue
May 13, 2021
mmcloughlin
added a commit
that referenced
this issue
May 13, 2021
mmcloughlin
added a commit
that referenced
this issue
May 13, 2021
) By far the largest number of allocations comes from the creation of bigvector basis vectors. These just contain zeros and ones. This PR changes the Vector type to an interface so that the basis type can be implemented without any allocations at all. Unfortunately, this does complicate the interface, since it requires the user to not write to any integers returned from Idx(). Consider this okay since it's an internal package. Updates #60 Updates #25
mmcloughlin
added a commit
that referenced
this issue
May 13, 2021
Combined effect of changes in #60 (comment):
|
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Addition chain generation is very slow. Since this is one time work, it's not critical. However it would be nice if it was faster, even for experimentation.
There's likely some simple optimization opportunities, since it's not been prioritized at all thus far. Profile the code and fix anything obvious.
The text was updated successfully, but these errors were encountered: