statOmics/tradeSeq

figGAM is not adhering to BPPARAM limits.

Opened this issue · 1 comments

Hello

I am trying to run the fitGAM command on a multi-core linux server.
The machine has 64 cores and I want fitGAM to only use 16 cores.

I've followed the vignette's suggested method for running in parallel but fitGAM() seems to ignore this and uses all available cores.

Here is my code

Dataset <- readRDS("cellStateData.rds")
Dataset <- as.SingleCellExperiment(Dataset, assay = "RNA")

Dataset <- slingshot(Dataset, reducedDim = 'UMAP', clusterLabels = colData(Dataset)$celltype, approx_points = FALSE)

workers <- BiocParallel::MulticoreParam(workers=16)
Dataset1 <- fitGAM(Dataset, verbose=TRUE, parallel=TRUE, BPPARAM=workers)

I'm running this on a 64 core RHEL server.
When it gets to the fitGAM line the command uses all 64 cores.
There are no previous commands that might use multiple cores.

I've tried different renditions of the BPPARAM argument all to no avail.
Any suggestions on how to fix this?

Thanks

Hi, I think this is a problem from BiocParallel and not tradeSeq, I noticed the same behavior on any Linux machine I used, I would suggest using SnowParam() and see if it passes your parameters correctly.