Comments (16)
Thank you very much for the information. I'll look into that.
from ipo.
Ok, great. I'll keep BPPARAM
to let the user choose. I won't call it BPPARAM_xcmsSet
, to leave the option of using BiocParallel
by IPO
itself.
from ipo.
@rietho I fixed all my problems by applying a similar patch, so I am assuming it will work now. When I have some time I will test your update and let you know if all is sorted in the "official" patch.
from ipo.
Hello, I've also had this issue. Is there a work around for this issue?
from ipo.
As long as you are using the Bioconductor release versions, there should not be an issue.
from ipo.
yes and no - you will see warnings coming from the xcms
methods if they are invoked with the nSlaves
parameter.
You can still use parallel processing in xcms
e.g. by
library(BiocParallel)
register(MulticoreParam(4))
All methods in xcms
will then use these globally defined settings.
from ipo.
In my experience this definitely caused a problem (Linux operating system), as the number of nSlaves is deprecated error is thrown, the optimization seems to continue (not sure though...?!?) for a few more moments, but as soon as a processing finishes everything stops. In order to make IPO work with multicore I had to do a quick fix and modify the source code to remove all references to nSlaves passed to XCMS in the parameter object and function calls.
from ipo.
Passing the nSlaves
parameter to xcms
functions does not throw an error, but just a warning - that's also why the processing continues. To set the parallel processing just do:
library(BiocParallel)
register(MulticoreParam(3))
This sets the parallel processing globally to use 3 cores using the multicore
package. Alternatively one could use SnowParam
or SerialParam
(to completely disable parallel processing).
from ipo.
Yep. But for some reason IPO cannot assemble the results when the warning is returned though - If I wait long enough for the processing to be finished, XCMS does the job normally, but the IPO object is never assembled and the figures for the DoE parameter search are never saved.
from ipo.
It's also not clear for me, why your IPO runs fail to run correctly.
This issue was not on my priority lists until now, but I'll definitely fix the nSlaves
-parameter during the next weeks (sorry for the long wait).
from ipo.
@jotsetung I'm working on updating IPO to call xcms with BPPARAM
instead of nSlaves
. Therefore I'll introduce a new parameter BPPARAM_xcmsSet
to optimizeXcmsSet
(the params
argument is not designed to hold an S4-class object).
Nevertheless I'll keep the nSlaves
parameter as deprecated. On the devel-branch of xcms you are using NULL as default parameter for nSlaves
, but on the current Bioconductor devel you are using 0
as default value. So I'm wondering, if 0
will stay the default for the Bioconductor 3.5 release?
from ipo.
actually, you would not really use the BPPARAM
, the default for this parameter in xcms
is bpparam()
which just returns the globally defined parallel processing. The global settings could be set using the register
method from BiocParallel
:
register(MulticoreParam(4))
I think it does not really matter what value you use for nSlaves
, I think 0
should be OK.
from ipo.
Doesn't BPPARAM
exist to give the user the possibility to use BiocParallel
without using global settings? I also chose bpparam()
as default, so that global settings would still work.
from ipo.
Yes, it allows to change parallel processing settings for individual tasks - although I usually use the same settings across an analysis
from ipo.
see d2ae262
from ipo.
@Gscorreia89 Does this reslove your issues?
from ipo.
Related Issues (20)
- How to optimize the centWave parameter prefilter two values HOT 2
- Error when plotting HOT 5
- Chromatographic peak detection failed for all files HOT 3
- ways to improve IPO performance HOT 5
- IPO optimized parameter showed peak data insertion problem HOT 2
- optimizeXcmsSet expects parameters that are not even used by and related to centWave HOT 2
- stop worker failed, Error in serialize, error writing to connection HOT 1
- Determining the number of xcms runs and DoEs for an optimization run HOT 1
- Error in object@backend$getAllScanHeaderInfo() HOT 1
- xcmsSetStatistic() may produce model with suboptimal results HOT 2
- std::bad_alloc error HOT 2
- Workers / Slaves numbers for IPO on clusters
- IPO parallelizing not working, large scale dataset hundreds to thousands of samples HOT 3
- definition of grouping optimization score leads to poor results in some cases HOT 1
- Issues running IPO on cluster with 15 files HOT 2
- sampleGroup error... I think.
- User manual for IPO
- Build error due to removed mzData report
- checks are failing due to mzData HOT 5
- Too much time for optimization!! HOT 6
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from ipo.