gagneurlab/OUTRIDER

Always hangs during autoencoding

Opened this issue · 5 comments

Hi, the package looks very promising but every time I try to run it on my own data it just hangs at the autoencoder step...it doesn't matter if I run it by specifying q manually or if I use the OUTRIDER(ods).

What really bothers me is that it seems oddly inconsistent though. I am sometimes (not always!) able to get the small sample dataset to run, and have successfully used the autoencoder correction on smaller datasets.

Do you know of anyone else having this type of issue?

No, pretty sure its just not doing anything, since I get no result even when running a few iterations at a specified value for "q". I let it go on overnight to be sure but it looked like there was no CPU activity.

Thanks for taking a look; ill continue to troubleshoot on my end...rsession below (although I think everything looks ok there)

~alden

sessionInfo()
R version 3.6.1 (2019-07-05)
Platform: x86_64-pc-linux-gnu (64-bit)
Running under: Ubuntu 18.04.3 LTS

Matrix products: default
BLAS: /usr/lib/x86_64-linux-gnu/blas/libblas.so.3.7.1
LAPACK: /usr/lib/x86_64-linux-gnu/lapack/liblapack.so.3.7.1

locale:
[1] LC_CTYPE=en_US.UTF-8 LC_NUMERIC=C LC_TIME=en_US.UTF-8
[4] LC_COLLATE=en_US.UTF-8 LC_MONETARY=en_US.UTF-8 LC_MESSAGES=en_US.UTF-8
[7] LC_PAPER=en_US.UTF-8 LC_NAME=C LC_ADDRESS=C
[10] LC_TELEPHONE=C LC_MEASUREMENT=en_US.UTF-8 LC_IDENTIFICATION=C

attached base packages:
[1] stats4 parallel stats graphics grDevices utils datasets methods base

other attached packages:
[1] OUTRIDER_1.3.4 data.table_1.12.6 SummarizedExperiment_1.14.1
[4] DelayedArray_0.10.0 matrixStats_0.55.0 GenomicFeatures_1.36.4
[7] AnnotationDbi_1.46.1 Biobase_2.44.0 GenomicRanges_1.36.1
[10] GenomeInfoDb_1.20.0 IRanges_2.18.3 S4Vectors_0.22.1
[13] BiocGenerics_0.30.0 BiocParallel_1.18.1

@furbelows thanks for reporting the problem. To make sure its not a problem with the parallelization, could you please run your code with

ods <- OUTRIDER(ods, q=45, BPPARAM=SerialParam(), verbose=TRUE)

If this returns results, it could be a problem with Multicore.

Best, Christian

Hey christian,

Yeah, I actually had the same thought and tried the same thing earlier. It seems to work fine. Ill try to figure out whats up with multicore...

Thanks for your help.

best,

alden

No problem @furbelows But this does not really solve the problem. Maybe @mtmorgen knows how to tackle the problem or at least where to start to investigate it.

Short intro for @mtmorgen:
On Centos7.7 OUTRIDER works perfectly with multicore or snow through BiocParallel. And it also works with SerialParam, but on Ubuntu (3 independent users and laptops and one WSL [windows subsystem for Linux]) when using a parallized backend it first starts all threads and computes the first round but then it seams that it does not collect the results from each thread/fork and is stuck with no CPU utilization. Could it interfere with the multithreaded BLAS and LAPACK package provided by Ubuntu?

Let me know if I should race an issue on BiocParallel or not for this problem.

This is how to reproduce it on my laptop:

library(OUTRIDER)
download.file("https://github.com/gagneurlab/OUTRIDER/files/3898551/all_fib_cts.gz", "cts.gz")
ods <- OutriderDataSet(countData=read.table("cts.gz"))
ods <-  filterExpression(ods, minCounts=TRUE)

register(MulticoreParam(2, 20, progressbar=TRUE))
ods <- OUTRIDER(ods, verbose=TRUE)
~R> sessionInfo()
R version 3.6.1 (2019-07-05)
Platform: x86_64-pc-linux-gnu (64-bit)
Running under: Ubuntu 18.04.3 LTS

Matrix products: default
BLAS:   /usr/lib/x86_64-linux-gnu/blas/libblas.so.3.7.1
LAPACK: /usr/lib/x86_64-linux-gnu/lapack/liblapack.so.3.7.1

locale:
 [1] LC_CTYPE=C.UTF-8       LC_NUMERIC=C           LC_TIME=C.UTF-8
 [4] LC_COLLATE=C.UTF-8     LC_MONETARY=C.UTF-8    LC_MESSAGES=C.UTF-8
 [7] LC_PAPER=C.UTF-8       LC_NAME=C              LC_ADDRESS=C
[10] LC_TELEPHONE=C         LC_MEASUREMENT=C.UTF-8 LC_IDENTIFICATION=C

attached base packages:
[1] stats4    parallel  stats     graphics  grDevices utils     datasets
[8] methods   base

other attached packages:
 [1] OUTRIDER_1.2.4              data.table_1.12.6
 [3] SummarizedExperiment_1.14.1 DelayedArray_0.10.0
 [5] matrixStats_0.55.0          GenomicFeatures_1.36.4
 [7] AnnotationDbi_1.46.1        Biobase_2.44.0
 [9] GenomicRanges_1.36.1        GenomeInfoDb_1.20.0
[11] IRanges_2.18.3              S4Vectors_0.22.1
[13] BiocGenerics_0.30.0         BiocParallel_1.18.1

loaded via a namespace (and not attached):
  [1] colorspace_1.4-1         htmlTable_1.13.2         XVector_0.24.0
  [4] base64enc_0.1-3          rstudioapi_0.10          bit64_0.9-7
  [7] codetools_0.2-16         splines_3.6.1            PRROC_1.3.1
 [10] geneplotter_1.62.0       knitr_1.26               zeallot_0.1.0
 [13] Formula_1.2-3            jsonlite_1.6             Rsamtools_2.0.3
 [16] annotate_1.62.0          cluster_2.0.9            pheatmap_1.0.12
 [19] compiler_3.6.1           httr_1.4.1               backports_1.1.5
 [22] assertthat_0.2.1         Matrix_1.2-17            lazyeval_0.2.2
 [25] acepack_1.4.1            htmltools_0.4.0          prettyunits_1.0.2
 [28] tools_3.6.1              gtable_0.3.0             glue_1.3.1
 [31] GenomeInfoDbData_1.2.1   dplyr_0.8.3              Rcpp_1.0.3
 [34] vctrs_0.2.0              Biostrings_2.52.0        gdata_2.18.0
 [37] rtracklayer_1.44.4       iterators_1.0.12         xfun_0.11
 [40] stringr_1.4.0            lifecycle_0.1.0          gtools_3.8.1
 [43] XML_3.98-1.20            dendextend_1.13.2        zlibbioc_1.30.0
 [46] MASS_7.3-51.4            scales_1.1.0             TSP_1.1-7
 [49] pcaMethods_1.76.0        hms_0.5.2                RColorBrewer_1.1-2
 [52] BBmisc_1.11              memoise_1.1.0            heatmaply_0.16.0
 [55] gridExtra_2.3            ggplot2_3.2.1            biomaRt_2.40.5
 [58] rpart_4.1-15             latticeExtra_0.6-28      stringi_1.4.3
 [61] RSQLite_2.1.2            genefilter_1.66.0        gclus_1.3.2
 [64] foreach_1.4.7            checkmate_1.9.4          seriation_1.2-8
 [67] caTools_1.17.1.3         rlang_0.4.2              pkgconfig_2.0.3
 [70] bitops_1.0-6             lattice_0.20-38          purrr_0.3.3
 [73] GenomicAlignments_1.20.1 htmlwidgets_1.5.1        bit_1.1-14
 [76] tidyselect_0.2.5         plyr_1.8.4               magrittr_1.5
 [79] DESeq2_1.24.0            R6_2.4.1                 gplots_3.0.1.1
 [82] Hmisc_4.3-0              DBI_1.0.0                pillar_1.4.2
 [85] foreign_0.8-71           survival_2.44-1.1        RCurl_1.95-4.12
 [88] nnet_7.3-12              tibble_2.1.3             crayon_1.3.4
 [91] KernSmooth_2.23-16       plotly_4.9.1             viridis_0.5.1
 [94] progress_1.2.2           locfit_1.5-9.1           grid_3.6.1
 [97] blob_1.2.0               digest_0.6.23            webshot_0.5.2
[100] xtable_1.8-4             tidyr_1.0.0              munsell_0.5.0
[103] registry_0.5-1           viridisLite_0.3.0
~$ cat /proc/cpuinfo | grep name | uniq
model name      : Intel(R) Core(TM) i7-8750H CPU @ 2.20GHz

~$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description:    Ubuntu 18.04.3 LTS
Release:        18.04
Codename:       bionic

~$ uname -a
Linux DESKTOP-MB70GOB 4.4.0-17763-Microsoft #864-Microsoft Thu Nov 07 15:22:00 PST 2019 x86_64 x86_64 x86_64 GNU/Linux