Closed delee1000 closed 7 years ago
Hi, it seems like you are trying to use the mex functions for GPU computation on a Windows machine? Unfortunately, right now GPU computation is supported for Linux and NVIDIA hardware only (see here). We may include support for Windows architectures in the future. Do you want to use the ensemble/GPU method for TE estimation? Note that you don't need to run 'install.m' if you don't want to use the GPU. Best, Patricia
Hi Patricia,
I do require the ensemble method for TE estimation.
I got Linux running, and now I'm getting the following error during install:
mex: fnearneigh_gpu.cpp not a normal file or does not exist.
Unable to complete successfully.
Error in install (line 4) mex('-v',['-L' '.'], '-lgpuKnnLibrary', ['-L' CUDA_LIB_PATH],'-lcudart', 'fnearneigh_gpu.cpp');
If it helps, I'm using Ubuntu 14.04 and MATLAB 2015a on a network license.
Thanks,
Donald
Hi Donald,
are you running install.m
from the TRENTOOL folder? You have to make sure that you are in the folder containing fnearneigh_gpu.cpp
and range_search_all_gpu.cpp
when running the script.
Best, Patricia
@delee1000 if the installation is working for you, I would close this issue. Please let me know, if now everything is running as supposed.
Hi Patricia,
I am still having some issue with the installation, but I have put it on pause for a bit.
I think my latest issue may have something to do with permission settings. It appears that the only way I can get gcc 4.4 and everything else to work is if every file is located in the MATLAB root folder.
Thanks,
Donald
On Tue, Aug 4, 2015 at 6:48 AM, Patricia Wollstadt <notifications@github.com
wrote:
@delee1000 https://github.com/delee1000 if the installation is working for you, I would close this issue. Please let me know, if now everything is running as supposed.
— Reply to this email directly or view it on GitHub https://github.com/trentool/TRENTOOL3/issues/10#issuecomment-127618955.
Hello,
I'm encountering a similar issue with fnearneigh_gpu (Ubuntu 14.04).
For install, MEX completed successfully - I recieved the following Warning during compilation, but it may be irrelevent to the issue: Warning: You are using gcc version '4.8.4'. The version of gcc is not supported. The version currently supported with MEX is '4.7.x'. For a list of currently supported compilers see: http://www.mathworks.com/support/compilers/current_release.
In install at 5
While running the ensemble method... I'll paste the last output with the whole exception: ################### OPTIMIZING INFORMATION TRANSFER DELAY
Estimating TE for u = 40 ms Check data and config - ok Checking number of permutations - ok Read data - ok Min. sample points left after embedding: 403 (min. required: 2.) - ok Embedding original data for channelpair 1 of 1 - ok
Starting GPU neighbour count ... Chunks in current data set: 1 (3.0932 MB per chunk, total: 3.09 MB) Number of runs: 1 (7.7329 MB per run)
channelpair 1 (u = 40) - run 1 of 1 knn search for TE ...Invalid MEX-file '/media/self/Documents/TRENTOOL3-master/fnearneigh_gpu.mexa64': libcudart.so.7.0: cannot open shared object file: No such file or directory
Error in TEcallGPUsearch (line 283) [~, distance_p21] = fnearneigh_gpu(single(pointset_p21),single(pointset_p21),k_th,TheilerT,nchunks);
Error in TEsurrogatestats_ensemble (line 826) [ncount] = TEcallGPUsearch(cfg,channelpair,pointsets_concat_1,pointsets_concat_2, ...
Error in TEfindDelay (line 49) TGA_results{uu}=TEsurrogatestats_ensemble(cfgTESS,data);
Error in InteractionDelayReconstruction_calculate (line 93) [dataprep, TEmat] = TEfindDelay(predicttimevec_u,cfgTESS,dataprep);
Error in example_script_ensemblemethod (line 80) TGA_results = InteractionDelayReconstruction_calculate(cfgTEP,cfgTESS,data);
CPU method processed without issues. Would it help to try installing again with gcc v.4.7.x? Or link against an .a static library rather than the .so dynamic library? Or compile with a version of cuda earlier than 7? Oooor..
Many thanks,
Zack
quick update: reran install.m using older gcc - compiled without warnings; did not fix or change the issue.
Purged and updated NVIDIA drivers and paths - problem solved.
I'm getting the following error:
Error using mex MEX cannot find library 'gpuKnnLibrary' specified with the -l option. MEX looks for a file with one of the names: gpuKnnLibrary.lib libgpuKnnLibrary.lib Please specify the path to this library with the -L option.
Error in install (line 4)
mex('-v',['-L' '.'], '-lgpuKnnLibrary', ['-L' CUDA_LIB_PATH],'-lcudart', 'fnearneigh_gpu.cpp');
If I rename gpuKnnLibrary.a to .lib, I get the following error:
Error using mex MEX cannot find library 'cudart' specified with the -l option. MEX looks for a file with one of the names: cudart.lib libcudart.lib Please specify the path to this library with the -L option.
Error in install (line 4)
mex('-v',['-L' '.'], '-lgpuKnnLibrary', ['-L' CUDA_LIB_PATH],'-lcudart', 'fnearneigh_gpu.cpp');
I tried the install on 2 computers with NVIDIA GPU. I can't locate any file with 'cudart' in its name.