8000 prep for quick MS1 peak accession for pyOpenMS / numpy by timosachsenberg · Pull Request #5606 · OpenMS/OpenMS · GitHub
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

prep for quick MS1 peak accession for pyOpenMS / numpy #5606

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

Merged
merged 10 commits into from
Oct 24, 2021

Conversation

timosachsenberg
Copy link
Contributor

Description

Please include a summary of the change and which issue is fixed.

Checklist:

  • Make sure that you are listed in the AUTHORS file
  • Add relevant changes and new features to the CHANGELOG file
  • I have commented my code, particularly in hard-to-understand areas
  • New and existing unit tests pass locally with my changes
  • Updated or added python bindings for changed or new classes. (Tick if no updates were necessary.)

How can I get additional information on failed tests during CI:

If your PR is failing you can check out

Note:

  • Once you opened a PR try to minimize the number of pushes to it as every push will trigger CI (automated builds and test) and is rather heavy on our infrastructure (e.g., if several pushes per day are performed).

@hroest
Copy link
Contributor
hroest commented Oct 21, 2021

looks good, can you add some tests? how much faster is this for a single spectrum / for multiple spectra?

@jpfeuffer
Copy link
Contributor

Yup so it works now.
Some todos:

  • check if there is an efficient way for the second version
  • check the types. Maybe we want double for mz?
  • do some benchmarking. @hroest it was mainly to have a quick interface for getting 2d excerpts which did not exist at all. But it should be much faster than any iteration through spectra in python. And no copying except for the extraction into the vectors in C++.

@timosachsenberg timosachsenberg merged commit 62dfd22 into develop Oct 24, 2021
@timosachsenberg timosachsenberg deleted the feature/pre_fast_MS1_pyopenms branch October 24, 2021 15:19
@jpfeuffer jpfeuffer mentioned this pull request Oct 25, 2021
@jpfeuffer
Copy link
Contributor

@hroest For loading MS1 of an 800MB mzML:

New:

Starting load!
Time for loading: 17.893315015
Time for creating numpy array: 1.602981775
Time for loading and creating DF: 0.29766625999999974
Time for creating plot objects: 22.539955153000005

Starting load!
Time for loading: 19.250885921000002
Time for creating numpy array: 1.5037699920000023
Loaded 19443486 peaks.
Time for loading and creating DF: 0.4012413779999946
Time for creating plot objects: 22.221209508999998

vs Old:

Starting load!
Time for loading: 14.709842735999999
Time for creating numpy array: 11.238339131000004
Time for loading and creating DF: 3.428208251000001
Time for creating plot objects: 23.026073629000003

Starting load!
Time for loading: 17.346511035000002
Time for creating numpy array: 14.711227082
Time for loading and creating DF: 4.338916176999994
Time for creating plot objects: 32.850890967999995

Starting load!
Time for loading: 17.473355900999998
Time for creating numpy array: 16.420825232
Time for loading and creating DF: 4.849426982000004
Time for creating plot objects: 28.048724312000004

Loaded 19443486 peaks.

@timosachsenberg
Copy link
Contributor Author

a pity that this doesn't translate that much to plotting but still nice

@jpfeuffer
Copy link
Contributor

haha yes. but it is loading into javascript and doing bilinear interpolations and stuff.. so, to be expected.

@jpfeuffer
Copy link
Contributor

I guess static rendering of an image would be much faster.

@timosachsenberg
Copy link
Contributor Author

aka datashader?

@jpfeuffer
Copy link
Contributor
jpfeuffer commented Oct 28, 2021

yes but you hace to use it without a server then.

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

Successfully merging this pull request may close these issues.

3 participants
0