welch-lab / RcppPlanc

GNU General Public License v2.0
3 stars 1 forks source link

Error: SpMat::init(): requested size is too large; suggest to enable ARMA_64BIT_WORD #8

Closed h4rvey-g closed 3 months ago

h4rvey-g commented 3 months ago

I have a large liger object which integrates 7 datasets.

r$> sce_norm
An object of class liger with 3436561 cells
datasets(73): PD43824 (42794 cells), PD43948 (16411 cells), PD44714 (3043 cells), ..., GSM7028040_RCC5t (486242 cells) 
cellMeta(7): dataset, barcode, nUMI, ..., hemo 
varFeatures(8905): HES4, ISG15, TNFRSF4, ..., BBS10

When I'm running runIntegration(), it throws an error

r$> sce_norm <- sce_norm %>%
        runIntegration()
Error: SpMat::init(): requested size is too large; suggest to enable ARMA_64BIT_WORD

Is there any configuration I can make to run this, or should I reduce the data size?

theAeon commented 3 months ago

Try reinstalling from the master branch-this was an oversight on my part (i think).

theAeon commented 3 months ago

Hm. The tests failed when I turned that on. Bear with.

mvfki commented 3 months ago

@h4rvey-g While we are trying to see how we can fix the specific problem here, you can also have a try with runOnlineINMF() which uses a variant algorithm that is more friendly to memory limit and time cost, with the trade-off against factorization accuracy.

h4rvey-g commented 3 months ago

@h4rvey-g While we are trying to see how we can fix the specific problem here, you can also have a try with runOnlineINMF() which uses a variant algorithm that is more friendly to memory limit and time cost, with the trade-off against factorization accuracy.

Unfortunately that returns the same error.

theAeon commented 3 months ago

Try the master branch now, it should work.

h4rvey-g commented 3 months ago

It works like a charm! Thanks!