Open ncyue2 opened 1 year ago
Hi @ncyue2,
Thank you for using gtm-decon.
I looked into your issue running the code through the CLI and jupyter notebook and was able to get the model to run on both. Could you try the following?
make clean
in the /gtm-decon-code/
folder to remove the *.o filesmake
again to recompile. It is possible that some of the *.o files are not being recompiled as required.I tested the jupyter notebook and the code you ran on armadillo version 9.900.2 and 12.6.4. If the above bullet points do not help I would suggest trying one of these versions and seeing if that helps. Feel free to reach out if you have more questions.
Edit: Also just tested it out with Armadillo 10.8.2 (what you used). If all of the above doesn't work then you may want to revisit how you installed armadillo and share the steps you followed here.
Description: Hi, I ran into a segmentation fault (core dumped) when trying to train the GTM-decon using the provided scRNA-seq data (
/data/reference_data.csv
)Changes that is made to the github code:
g++-8
tog++
in./gtm-decon-code/Makefile
;gpp := g++ -std=c++17 -I/usr/local/boost-1.68.0/include -I/usr/local/include -L/usr/local/lib
and complied withmake
Steps to reproduce: the
app
directory is the forked gtm-decon repo../data/
to unzip the "tutorial data.tar.gz" to get the "reference_data.csv", with the codetar -xf tutorial_data.tar.gz
../../standard
, and create a new directory namedoutputs
.outputs
directory and create another new directory namedsplits
.standard
python3 ../app/pre_processing/prepare_single_cell_input_PI_Segerstolpe.py --path_input ../app/data/reference_data.csv --path_save ./outputs/
python3 ../app/pre_processing/train_test_validation_split.py --path_input ./outputs/ --path_save ./outputs/splits/
../app/gtm-decon-code/singleCellInput ./outputs/splits/counts_matrix_pp_train.tab ./outputs/splits/cell_labels_oh_train.csv ./outputs/splits/ 1
../app/gtm-decon-code/singleCellInput_TestData ./outputs/splits/counts_matrix_pp_test.tab ./outputs/splits/testData.txt
../app/gtm-decon-code/singleCellInput_TestData ./outputs/splits/counts_matrix_pp_validation.tab ./outputs/splits/validationData.txt
6. Run the training step: (Segmentation fault occurs)
../app/gtm-decon-code/gtm-decon -f ./outputs/splits/trainData.txt -m ./outputs/splits/meta.txt -trp ./outputs/splits/priorData.txt -k 14 -i 5 --inferenceMethod JCVB0 --maxcores 6 --outputIntermediates
../app/gtm-decon-code/gtm-decon -f ./outputs/splits/trainData.txt -m ./outputs/splits/meta.txt -trp ./outputs/splits/priorData.txt -k 12 -i 5 --inferenceMethod JCVB0 --maxcores 6 --outputIntermediates
Screenshot:
Other information: Operating system: Fedora Linux version: 6.4.12-200.fc38.x86_64
Packages installed:
Name : armadillo
Version : 10.8.2
Release : 3.fc38
Architecture : x86_64
Size : 103 k
Source : armadillo-10.8.2-3.fc38.src.rpm
Repository : @System
From repo : fedora
Name : openblas Version : 0.3.21 Release : 4.fc38 Architecture : x86_64 Size : 82 k Source : openblas-0.3.21-4.fc38.src.rpm Repository : @System From repo : anaconda
Name : openblas-devel Version : 0.3.21 Release : 4.fc38 Architecture : x86_64 Size : 1.6 M Source : openblas-0.3.21-4.fc38.src.rpm Repository : @System From repo : fedora
Name : lapack
Version : 3.11.0
Release : 2.fc38
Architecture : x86_64
Size : 14 M
Source : lapack-3.11.0-2.fc38.src.rpm
Repository : @System
From repo : fedora
Name : lapack-devel Version : 3.11.0 Release : 2.fc38 Architecture : x86_64 Size : 1.6 M Source : lapack-3.11.0-2.fc38.src.rpm Repository : @System From repo : fedora
Name : arpack
Version : 3.8.0
Release : 6.fc38
Architecture : x86_64
Size : 633 k
Source : arpack-3.8.0-6.fc38.src.rpm Repository : @System From repo : fedora
Name : arpack-devel Version : 3.8.0 Release : 6.fc38 Architecture : x86_64 Size : 23 k Source : arpack-3.8.0-6.fc38.src.rpm Repository : @System From repo : fedora
Name : SuperLU Version : 5.3.0 Release : 4.fc38 Architecture : x86_64 Size : 471 k Source : SuperLU-5.3.0-4.fc38.src.rpm Repository : @System From repo : fedora
Name : SuperLU-devel Version : 5.3.0 Release : 4.fc38 Architecture : x86_64 Size : 101 k Source : SuperLU-5.3.0-4.fc38.src.rpm Repository : @System From repo : fedora