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

Kinetics comments waste memory and time #109

Closed
rwest opened this issue Feb 27, 2013 · 2 comments
Closed

Kinetics comments waste memory and time #109

rwest opened this issue Feb 27, 2013 · 2 comments
Labels
abandoned abandoned issue/PR as determined by actions bot stale stale issue/PR as determined by actions bot Status: Stale This issue is out-of-date and may no longer be applicable Topic: Performance

Comments

@rwest
Copy link
Member

rwest commented Feb 27, 2013

The "Average of (Average of(" recursion is entertaining, but not usually very helpful. We rarely read them, and after a few minutes of model building my output.html file is a dozen megabytes. The annotated chemkin file is also large, and these are only the core reactions. We are remembering the comments for all the edge reactions too, which will not be good for our memory footprint!. If we want that level of detail, perhaps only generate it once things get into the core. Or we just store the nodes that were matched, and the fact that it was an average of N items. One could always use the matched nodes to determine the full match tree if you needed. Perhaps we save the option somehow for when we need to debug, but I think the current behavior is a poor default.

@jwallen
Copy link
Contributor

jwallen commented Feb 27, 2013

To get an idea of the memory savings, I ran my usual DIPK test job after quickly hacking RMG-Py to delete the kinetics comments instead of storing them indefinitely. Memory usage dropped from 576.7 MB to 510.0 MB. Probably about 200 MB of that memory usage is for the database, which is expected to be larger than in RMG-Java because we are storing all this extra information (e.g. units) with each entry. Some is also probably used for the profiler; I haven't tried it without yet.

For comparison, the equivalent RMG-Java job requires ~160 MB of memory overall, of which ~40 MB is probably just the database. So RMG-Py is still using about 3x the memory of RMG-Java. I feel like it's worth some effort to try to reduce this more since we are often memory-limited in our mechanism generation. For now I will actually try to implement the kinetics comment removal properly.

I think as long as we can see the full kinetics comment on the website, then there's likely no reason to generate them in RMG jobs. We should keep a short string with the source (including exact or estimate and the specific groups matched).

@pierrelb pierrelb added the Status: Stale This issue is out-of-date and may no longer be applicable label Aug 28, 2015
@github-actions
Copy link

This issue is being automatically marked as stale because it has not received any interaction in the last 90 days. Please leave a comment if this is still a relevant issue, otherwise it will automatically be closed in 30 days.

@github-actions github-actions bot added the stale stale issue/PR as determined by actions bot label Jun 22, 2023
@github-actions github-actions bot added the abandoned abandoned issue/PR as determined by actions bot label Jul 22, 2023
@github-actions github-actions bot closed this as not planned Won't fix, can't repro, duplicate, stale Jul 22, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
abandoned abandoned issue/PR as determined by actions bot stale stale issue/PR as determined by actions bot Status: Stale This issue is out-of-date and may no longer be applicable Topic: Performance
Projects
None yet
Development

No branches or pull requests

3 participants