Closed mafreitas closed 7 years ago
Hi, Thank you very much for this code to speed up the XiC computation using pymzML. The idea to store all rt and the spectrum_Id for all he MS1 scans is great, but it would make sense to do this just one time defore the splitting of the of inputdata in different threads.
How does this behaive with the multithreding ? Do you read and save all the scan just one time before the multithreding part or in each thread ?
In the next days I will update the code of if you prefer you can also pull a request with your modification and I will merge it.
I am not the best with github, but I did try to create a pull request with a working version of the code that I have modified. It reads the code once before splitting. The speedup is significant. If done correctly, the need to use conditionals to check for MS level and RT window could also be eliminated.
I have tested with multiprocessing using 4 threads and works fine.
Michael Freitas mike.freitas@gmail.com
My Free / Busy Calendar can be found here: http://doodle.com/mikefreitas
Please support my ride to end cancer by donating to Pelotonia using the links below. Pelotonia Rider ID: MF0044 http://pelotonia.org/mikefreitas https://www.mypelotonia.org/donate_cart.jsp?MemberID=151635
On Wed, Jun 21, 2017 at 5:21 PM, Maux82 notifications@github.com wrote:
Hi, Thank you very much for this code to speed up the XiC computation using pymzML. The idea to store all rt and the spectrum_Id for all he MS1 scans is great, but it would make sense to do this just one time defore the splitting of the of inputdata in different threads.
How does this behaive with the multithreding ? Do you read and save all the scan just one time before the multithreding part or in each thread ?
In the next days I will update the code of if you prefer you can also pull a request with your modification and I will merge it.
— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/compomics/moFF/issues/13#issuecomment-310208866, or mute the thread https://github.com/notifications/unsubscribe-auth/ADTcJRUzvPUKU3XK1l_5yn0yndf1sulnks5sGYlUgaJpZM4OBgf9 .
I have been testing the code with mzML. A significant speedup can be gained by indexing the mxML spectra first and then performing XIC only over those ranges. I can share the code along with a couple other possible issues if you like.
For example in moff.py
and
also on or around line 315. The incrementor for the variable c is after the continue statement. If it is not an artifact it should be corrected.