-
-
Notifications
You must be signed in to change notification settings - Fork 356
[FEATURE] speed improvement in OpenSwathAssayGenerator and OpenSwathDecoyGenerator #5611
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
[FEATURE] speed improvement in OpenSwathAssayGenerator and OpenSwathDecoyGenerator #5611
Conversation
- lower memory footprint of PQP storage
- lower memory footprint of PQP file writing by storing transitions repeatedly while iterating - store every 50k is a good compromise between speed and memory
the additional changesets also improve OpenSwathDecoyGenerator by about 2x and furthermore decrease the memory footprint of storing PQP files substantially
after this changeset:
so, a substantial (2x) speedup and an almost 3x reduction in the memory footprint. |
604a0d7
to
cb3244e
Compare
rebuild jenkins |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
looks good. Maybe the second part of the ifdef is not needed and could be removed
failed test unrelated |
@timosachsenberg is there a good place to have these "helper" functions in OpenMS, eg in CONCEPT ? I tested both versions and the one we use was better in terms of memory consumption, but I should add the commented out reserve again... |
Yes maybe in concept would be good but I agree that it is hard to find good places for these kind of templated free functions. ContainerHelper or similar would work I guess. |
Substantial improvement in speed of the OpenSwathAssayGenerator
using the PanHuman library, before:
after:
Specifically writing of the PQP file is now 5x faster (23 seconds instead of 110 seconds) and selection of transitions is now 250x faster (2 seconds instead of 500 seconds). Overall it is 10x faster using the panhuman library.