meringlab / FlashWeave.jl

Inference of microbial interaction networks from large-scale heterogeneous abundance data
Other
70 stars 8 forks source link

Unknown function #25

Closed pameubillag closed 3 years ago

pameubillag commented 3 years ago

Thanks for developing this tool. I am having some trouble using it. I tried to replicate the "Basic usage" instruction with test data and getting this:

Loading data

Normalizing

Removing variables with 0 variance (or equivalently 1 level) and samples with 0 reads -> discarded 0 samples and 5 variables

Normalization Illegal inttoptr %42 = ptrtoint double addrspace(13) %41 to i64 Illegal inttoptr %57 = inttoptr i64 %56 to i8 addrspace(13)

signal (6): Abortado in expression starting at REPL[4]:1 gsignal at /usr/bin/../lib/x86_64-linux-gnu/libc.so.6 (unknown line) abort at /usr/bin/../lib/x86_64-linux-gnu/libc.so.6 (unknown line) unknown function (ip: 0x7f0426e93d04) _ZN4llvm13FPPassManager13runOnFunctionERNS_8FunctionE at /usr/bin/../lib/x86_64-linux-gnu/libLLVM-8.so.1 (unknown line) _ZN4llvm13FPPassManager11runOnModuleERNS_6ModuleE at /usr/bin/../lib/x86_64-linux-gnu/libLLVM-8.so.1 (unknown line) _ZN4llvm6legacy15PassManagerImpl3runERNS_6ModuleE at /usr/bin/../lib/x86_64-linux-gnu/libLLVM-8.so.1 (unknown line) unknown function (ip: 0x7f0426f7dac1) unknown function (ip: 0x7f0426f802d8) unknown function (ip: 0x7f0426f808cd) unknown function (ip: 0x7f0426ebbb4a) unknown function (ip: 0x7f0426eed082) unknown function (ip: 0x7f0426f1284b) jl_apply_generic at /usr/bin/../lib/x86_64-linux-gnu/libjulia.so.1 (unknown line) adaptive_pseudocount! at /home/pamela/.julia/packages/FlashWeave/rTWlo/src/preprocessing.jl:121 adaptive_clr! at /home/pamela/.julia/packages/FlashWeave/rTWlo/src/preprocessing.jl:170 clrnorm at /home/pamela/.julia/packages/FlashWeave/rTWlo/src/preprocessing.jl:289 unknown function (ip: 0x7f03fecdc57e)

preprocess_data#170 at /home/pamela/.julia/packages/FlashWeave/rTWlo/src/preprocessing.jl:413

preprocess_data##kw at /home/pamela/.julia/packages/FlashWeave/rTWlo/src/preprocessing.jl:373 [inlined]

preprocess_data_default#175 at /home/pamela/.julia/packages/FlashWeave/rTWlo/src/preprocessing.jl:522

preprocess_data_default##kw at /home/pamela/.julia/packages/FlashWeave/rTWlo/src/preprocessing.jl:517

normalize_data#178 at /home/pamela/.julia/packages/FlashWeave/rTWlo/src/preprocessing.jl:629

normalize_data##kw at /home/pamela/.julia/packages/FlashWeave/rTWlo/src/preprocessing.jl:612 [inlined]

learn_network#132 at /home/pamela/.julia/packages/FlashWeave/rTWlo/src/learning.jl:484

learn_network##kw at /home/pamela/.julia/packages/FlashWeave/rTWlo/src/learning.jl:434

learn_network#130 at /home/pamela/.julia/packages/FlashWeave/rTWlo/src/learning.jl:335

unknown function (ip: 0x7f03fecabce6) learn_network##kw at /home/pamela/.julia/packages/FlashWeave/rTWlo/src/learning.jl:330 unknown function (ip: 0x7f03fecaba35) learn_network##kw at /home/pamela/.julia/packages/FlashWeave/rTWlo/src/learning.jl:330 unknown function (ip: 0x7f03fecab885) unknown function (ip: 0x7f0426f2575b) unknown function (ip: 0x7f0426f25389) unknown function (ip: 0x7f0426f258f0) unknown function (ip: 0x7f0426f269c8) unknown function (ip: 0x7f0426f27616) unknown function (ip: 0x7f0426f3fe08) unknown function (ip: 0x7f0426f403c8) jl_toplevel_eval_in at /usr/bin/../lib/x86_64-linux-gnu/libjulia.so.1 (unknown line) eval at ./boot.jl:331 eval_user_input at /build/julia-98cBbp/julia-1.4.1+dfsg/usr/share/julia/stdlib/v1.4/REPL/src/REPL.jl:86 macro expansion at /build/julia-98cBbp/julia-1.4.1+dfsg/usr/share/julia/stdlib/v1.4/REPL/src/REPL.jl:118 [inlined]

26 at ./task.jl:358

unknown function (ip: 0x7f0426f2acbb) unknown function (ip: (nil)) Allocations: 86638321 (Pool: 86621688; Big: 16633); GC: 85 Abortado (`core' generado)

I have also tried in a jupyter console and after a few seconds I get this message:

Kernel Restarting The kernel appears to have died. It will restart automatically.

I am working with Ubuntu 20.04 kernel version 5.4.0-67-generic, julia version 1.4.1 and FlashWeave v0.18.0 #master.

jtackm commented 3 years ago

Hi, Sorry for your troubles. Don't think I've seen such a bad crash in connection with FlashWeave before. Are you using julia for other things (i.e. with other packages) and is that working? Also, could you perhaps do ] test FlashWeave to see if the regular test suite passes?

pameubillag commented 3 years ago

Hi Thanks for your answer. No, I don't use Julia for anything else. I installed it to use FlashWeave. This is what I get with ]test FlashWeave

Testing FlashWeave

Status /tmp/jl_UW1xy0/Manifest.toml [ec485272] ArnoldiMethod v0.0.4 [56f22d72] Artifacts v1.3.0 [a74b3585] Blosc v0.7.0 [0b7ba130] Blosc_jll v1.14.3+1 [944b1d66] CodecZlib v0.7.0 [861a8166] Combinatorics v1.0.2 [34da2185] Compat v3.25.0 [e66e0078] CompilerSupportLibraries_jll v0.3.4+0 [9a962f9c] DataAPI v1.6.0 [864edb3b] DataStructures v0.18.9 [31c24e10] Distributions v0.24.12 [5789e2e9] FileIO v1.6.4 [1a297f60] FillArrays v0.11.7 [2be3f83a] FlashWeave v0.18.0 #master (https://github.com/meringlab/FlashWeave.jl.git) [f67ccb44] HDF5 v0.13.6 [0234f1f7] HDF5_jll v1.12.0+1 [d25df0c9] Inflate v0.1.2 [033835bb] JLD2 v0.3.3 [692b3bcd] JLLWrappers v1.2.0 [682c06a0] JSON v0.21.1 [deac9b47] LibCURL_jll v7.70.0+2 [29816b5a] LibSSH2_jll v1.9.0+3 [093fc24a] LightGraphs v1.3.5 [5ced341a] Lz4_jll v1.9.2+2 [1914dd2f] MacroTools v0.5.6 [c8ffd9c3] MbedTLS_jll v2.16.8+1 [e1d29d7a] Missings v0.4.5 [458c3c95] OpenSSL_jll v1.1.1+6 [efe28fd5] OpenSpecFun_jll v0.5.3+4 [bac558e1] OrderedCollections v1.4.0 [90014a1f] PDMats v0.10.1 [69de0a69] Parsers v1.0.16 [1fd47b50] QuadGK v2.4.1 [ae029012] Requires v1.1.3 [79098fc4] Rmath v0.6.1 [f50d1b31] Rmath_jll v0.2.2+2 [699a6c99] SimpleTraits v0.9.3 [47aef6b3] SimpleWeightedGraphs v1.1.1 [a2af1166] SortingAlgorithms v0.3.1 [276daf66] SpecialFunctions v0.10.3 [90137ffa] StaticArrays v0.12.5 [2913bbd2] StatsBase v0.33.4 [4c63d2b9] StatsFuns v0.9.6 [3bb67fe8] TranscodingStreams v0.9.5 [83775a58] Zlib_jll v1.2.11+18 [3161d3a3] Zstd_jll v1.4.8+0 [8e850ede] nghttp2_jll v1.40.0+2 [2a0f44e3] Base64 [ade2ca70] Dates [8bb1440f] DelimitedFiles [8ba89e20] Distributed [b77e0a4c] InteractiveUtils [76f85450] LibGit2 [8f399da3] Libdl [37e2e46d] LinearAlgebra [56ddb016] Logging [d6f4376e] Markdown [a63ad114] Mmap [44cfe95a] Pkg [de0858da] Printf [3fa0cd96] REPL [9a3f8284] Random [ea8e919c] SHA [9e88b42a] Serialization [1a1011a3] SharedArrays [6462fe0b] Sockets [2f01184e] SparseArrays [10745b16] Statistics [4607b0f0] SuiteSparse [8dfed614] Test [cf7118a7] UUIDs [4ec0a83e] Unicode Preparing tests Test Summary: | Pass Total all modules in test set | 1 1

Testing io.jl Test Summary: | Pass Total networks | 4 4 Test Summary: | Pass Total table data | 20 20 Test Summary: | Pass Total transposed | 4 4 Test Summary: | Pass Total string factors | 4 4 Test Summary: | Pass Total numeric IDs | 2 2

Testing preprocessing.jl ┌ Warning: Adaptive CLR is inefficient with sparse data, using dense format └ @ FlashWeave ~/.julia/packages/FlashWeave/rTWlo/src/preprocessing.jl:535 ┌ Warning: adaptive pseudo-counts for 1 samples were lower than machine precision due to insufficient counts, removing them └ @ FlashWeave ~/.julia/packages/FlashWeave/rTWlo/src/preprocessing.jl:125 Test Summary: | Pass Total clr_adapt eps | 2 2 ┌ Warning: Adaptive CLR is inefficient with sparse data, using dense format └ @ FlashWeave ~/.julia/packages/FlashWeave/rTWlo/src/preprocessing.jl:535 ┌ Warning: Adaptive CLR is inefficient with sparse data, using dense format └ @ FlashWeave ~/.julia/packages/FlashWeave/rTWlo/src/preprocessing.jl:535 ┌ Warning: Adaptive CLR is inefficient with sparse data, using dense format └ @ FlashWeave ~/.julia/packages/FlashWeave/rTWlo/src/preprocessing.jl:535 ┌ Warning: Adaptive CLR is inefficient with sparse data, using dense format └ @ FlashWeave ~/.julia/packages/FlashWeave/rTWlo/src/preprocessing.jl:535 Test Summary: | Pass Total norm per test type | 20 20 ┌ Warning: Adaptive CLR is inefficient with sparse data, using dense format └ @ FlashWeave ~/.julia/packages/FlashWeave/rTWlo/src/preprocessing.jl:535 Test Summary: | Pass Total filter data | 12 12 Test Summary: | Pass Total mi_nz fits fz_nz | 1 1 ┌ Warning: Skipping one-hot encoding, only experts should choose this option └ @ FlashWeave ~/.julia/packages/FlashWeave/rTWlo/src/preprocessing.jl:391 ┌ Warning: Skipping one-hot encoding, only experts should choose this option └ @ FlashWeave ~/.julia/packages/FlashWeave/rTWlo/src/preprocessing.jl:391 ┌ Warning: Skipping one-hot encoding, only experts should choose this option └ @ FlashWeave ~/.julia/packages/FlashWeave/rTWlo/src/preprocessing.jl:391 ┌ Warning: Skipping one-hot encoding, only experts should choose this option └ @ FlashWeave ~/.julia/packages/FlashWeave/rTWlo/src/preprocessing.jl:391 Test Summary: | Pass Total meta data | 18 18

Testing contingency.jl Test Summary: | Pass Total dense | 4 4 Test Summary: | Pass Total sparse | 4 4

Testing statfuns.jl Test Summary: | Pass Total correlation | 6 6 Test Summary: | Pass Total mutual information | 4 4 Test Summary: | Pass Total FDR correction | 2 2

Testing tests.jl Test Summary: | Pass Total mi | 3 3 Test Summary: | Pass Total mi_nz | 3 3 Test Summary: | Pass Total fz | 3 3 Test Summary: | Pass Total fz_nz | 3 3

Testing misc.jl

Testing learning.jl (this can take a couple of minutes) Test Summary: | Pass Total univar nbrs | 5 5 ┌ Warning: 37 variables have insufficient observations (< 161 ('n_obs_min')) and will not be used for interaction prediction └ @ FlashWeave ~/.julia/packages/FlashWeave/rTWlo/src/learning.jl:71 ┌ Warning: 37 variables have insufficient observations (< 161 ('n_obs_min')) and will not be used for interaction prediction └ @ FlashWeave ~/.julia/packages/FlashWeave/rTWlo/src/learning.jl:71 ┌ Warning: 37 variables have insufficient observations (< 161 ('n_obs_min')) and will not be used for interaction prediction └ @ FlashWeave ~/.julia/packages/FlashWeave/rTWlo/src/learning.jl:71 ┌ Warning: 37 variables have insufficient observations (< 161 ('n_obs_min')) and will not be used for interaction prediction └ @ FlashWeave ~/.julia/packages/FlashWeave/rTWlo/src/learning.jl:71 ┌ Warning: 37 variables have insufficient observations (< 161 ('n_obs_min')) and will not be used for interaction prediction └ @ FlashWeave ~/.julia/packages/FlashWeave/rTWlo/src/learning.jl:71 ┌ Warning: 37 variables have insufficient observations (< 161 ('n_obs_min')) and will not be used for interaction prediction └ @ FlashWeave ~/.julia/packages/FlashWeave/rTWlo/src/learning.jl:71 ┌ Warning: Adaptive CLR is inefficient with sparse data, using dense format └ @ FlashWeave ~/.julia/packages/FlashWeave/rTWlo/src/preprocessing.jl:535 ┌ Warning: Adaptive CLR is inefficient with sparse data, using dense format └ @ FlashWeave ~/.julia/packages/FlashWeave/rTWlo/src/preprocessing.jl:535 ┌ Warning: Adaptive CLR is inefficient with sparse data, using dense format └ @ FlashWeave ~/.julia/packages/FlashWeave/rTWlo/src/preprocessing.jl:535 ┌ Warning: Adaptive CLR is inefficient with sparse data, using dense format └ @ FlashWeave ~/.julia/packages/FlashWeave/rTWlo/src/preprocessing.jl:535 ┌ Warning: Adaptive CLR is inefficient with sparse data, using dense format └ @ FlashWeave ~/.julia/packages/FlashWeave/rTWlo/src/preprocessing.jl:535 Test Summary: | Pass Total LGL_backend | 80 80 ┌ Warning: 37 variables have insufficient observations (< 161 ('n_obs_min')) and will not be used for interaction prediction └ @ FlashWeave ~/.julia/packages/FlashWeave/rTWlo/src/learning.jl:71 ┌ Warning: 37 variables have insufficient observations (< 161 ('n_obs_min')) and will not be used for interaction prediction └ @ FlashWeave ~/.julia/packages/FlashWeave/rTWlo/src/learning.jl:71 ┌ Warning: Adaptive CLR is inefficient with sparse data, using dense format └ @ FlashWeave ~/.julia/packages/FlashWeave/rTWlo/src/preprocessing.jl:535 Test Summary: | Pass Total precision_32 | 4 4 ┌ Warning: 37 variables have insufficient observations (< 161 ('n_obs_min')) and will not be used for interaction prediction └ @ FlashWeave ~/.julia/packages/FlashWeave/rTWlo/src/learning.jl:71 ┌ Warning: 2 factor variables with more than two categories were detected (ENV4, ENV5), splitting them into separate dummy variables (One Hot) └ @ FlashWeave ~/.julia/packages/FlashWeave/rTWlo/src/preprocessing.jl:63 ┌ Warning: 2 factor variables with more than two categories were detected (ENV4, ENV5), splitting them into separate dummy variables (One Hot) └ @ FlashWeave ~/.julia/packages/FlashWeave/rTWlo/src/preprocessing.jl:63 ┌ Warning: 2 factor variables with more than two categories were detected (ENV4, ENV5), splitting them into separate dummy variables (One Hot) └ @ FlashWeave ~/.julia/packages/FlashWeave/rTWlo/src/preprocessing.jl:63 ┌ Warning: 2 factor variables with more than two categories were detected (ENV4, ENV5), splitting them into separate dummy variables (One Hot) └ @ FlashWeave ~/.julia/packages/FlashWeave/rTWlo/src/preprocessing.jl:63 Test Summary: | Pass Total learn_network | 12 12 Test Summary: | Pass Total fast_elim | 1 1 Test Summary: | Pass Total duplicates | 1 1 ┌ Warning: Adaptive CLR is inefficient with sparse data, using dense format └ @ FlashWeave ~/.julia/packages/FlashWeave/rTWlo/src/preprocessing.jl:535 Test Summary: | Pass Total convergence | 1 1 Test Summary: | Pass Total hiton msg | 1 1 ┌ Warning: 37 variables have insufficient observations (< 161 ('n_obs_min')) and will not be used for interaction prediction └ @ FlashWeave ~/.julia/packages/FlashWeave/rTWlo/src/learning.jl:71 ┌ Warning: 37 variables have insufficient observations (< 161 ('n_obs_min')) and will not be used for interaction prediction └ @ FlashWeave ~/.julia/packages/FlashWeave/rTWlo/src/learning.jl:71 ┌ Warning: 37 variables have insufficient observations (< 161 ('n_obs_min')) and will not be used for interaction prediction └ @ FlashWeave ~/.julia/packages/FlashWeave/rTWlo/src/learning.jl:71 ┌ Warning: 37 variables have insufficient observations (< 161 ('n_obs_min')) and will not be used for interaction prediction └ @ FlashWeave ~/.julia/packages/FlashWeave/rTWlo/src/learning.jl:71 ┌ Warning: Adaptive CLR is inefficient with sparse data, using dense format └ @ FlashWeave ~/.julia/packages/FlashWeave/rTWlo/src/preprocessing.jl:535 ┌ Warning: Adaptive CLR is inefficient with sparse data, using dense format └ @ FlashWeave ~/.julia/packages/FlashWeave/rTWlo/src/preprocessing.jl:535 Test Summary: | Pass Total bnb heuristic | 16 16

Finished testing (took 113s) Testing FlashWeave tests passed

jtackm commented 3 years ago

Thanks a lot for having a look, good to know the well-behaved tests are working fine. Next, it would be good to see what parameters you are using to call FlashWeave and perhaps (only if possible, of course) what kind of data you are using as an input. The latter could also be obfuscated or shortened, as long as the error is still produced.

jtackm commented 3 years ago

Also, how did you install julia and what version are you using? Similar "unknown function" issues were reported by users not getting julia from the recommended download page but by other means (e.g. apt), see for instance https://discourse.julialang.org/t/bug-involving-permutedims-function/43492 .

pameubillag commented 3 years ago

Hi again! I am very grateful for your help. I did install julia by the terminal using apt. So following your suggestion, I re-install it. After that, I was able to run FlashWeave. Btw In all the tests, I was using the data you put in the folder (data//HMP_SRA_gut/HMP_SRA_gut_small.tsv).