single-cell-genetics / vireo

Demultiplexing pooled scRNA-seq data with or without genotype reference
https://vireoSNP.readthedocs.io
Apache License 2.0
71 stars 25 forks source link

ImportError..... failed to map segment from shared object: Cannot allocate memory #22

Open maojn opened 3 years ago

maojn commented 3 years ago

Hi,

I installed vireo and tested successfully with the examples in the package. While running with my own data, the job error out after an hour: Traceback (most recent call last): File "/usr/local/apps/vireosnp/0.5.1_nonContainer/bin/vireo", line 8, in <module> sys.exit(main()) File "/usr/local/Anaconda/envs_app/vireosnp/0.5.1/lib/python3.7/site-packages/vireoSNP/vireo.py", line 215, in main plot_GT(out_dir, res_vireo['GT_prob'][idx, :, :], donor_names) File "/usr/local/Anaconda/envs_app/vireosnp/0.5.1/lib/python3.7/site-packages/vireoSNP/plot/base_plot.py", line 45, in plot_GT import matplotlib.pyplot as plt File "/usr/local/Anaconda/envs_app/vireosnp/0.5.1/lib/python3.7/site-packages/matplotlib/__init__.py", line 174, in <module> _check_versions() File "/usr/local/Anaconda/envs_app/vireosnp/0.5.1/lib/python3.7/site-packages/matplotlib/__init__.py", line 159, in _check_versions from . import ft2font ImportError: /usr/local/Anaconda/envs_app/vireosnp/0.5.1/lib/python3.7/site-packages/matplotlib/ft2font.cpython-37m-x86_64-linux-gnu.so: failed to map segment from shared object: Cannot allocate memory I have tried earlier 0.3.2 and 0.4.2 versions and both error out with similar errors. But some were complaining about different .so in matplotlib. When I tried 'import matplotlib' in python interactively there is no error. The job was using 190gb of memory while erroring out and 240g was available.

at first I built it in a singularity container. After I run into error some google search indicate it could be caused by lack of system components in a container. so I built it in our linux system. but still got the same error.

Could you provide some help?

huangyh09 commented 3 years ago

Hi, thanks for reporting the issue. Other user also reported similar issue https://github.com/single-cell-genetics/vireo/issues/21#issuecomment-773362289, while I initially thought it was the incomaptibility with matplotlib.

If you can run demo.sh in your environment, it might be the issue with heavy data. Could you tell how many SNPs and donors in your data? A quick test is only using part of your data, e.g., 10% of the SNPs, and see if the plotting issue is still there.

When you said that you can plot interactively, have you tried the vireoSNP.plot.plot_GT()?

On the otherhand, the output results should be OK to use, as the plotting is the last step of the process. Let me know how it works. Thanks.

Yuanhua