GithubHelp home page GithubHelp logo

Xmipp compilation issue with Cuda11 about xmipp HOT 13 CLOSED

i2pc avatar i2pc commented on August 31, 2024
Xmipp compilation issue with Cuda11

from xmipp.

Comments (13)

dmaluenda avatar dmaluenda commented on August 31, 2024

Hi @MohamadHarastani ,

it seems like nvcc --version has changed its printed format. We should adapt to it....

Xmipp doesn't need to be compiled in a deactivated environment, indeed it's usually compilated under the scipion environment. However, it could give some problems regarding mixing system libs with environ libs. I should see the error to realize the specific issue.

Regarding the recomemded cuda version. Xmipp alone it's fully tested with cuda-8 and partially tested with cuda<11, for that reason we recomend cuda8 for xmipp (standalone version). However, Scipion has to deal with a lot of packages (xmipp, motioncor, relion, gctf...) and cuda10.1 is compatible with all them. For that reason Scipion recomends cuda10.1.

Thanks Mohamad.

from xmipp.

MohamadHarastani avatar MohamadHarastani commented on August 31, 2024

Hi @dmaluenda

it seems like nvcc --version has changed its printed format. We should adapt to it....

Thanks for the information.
I also find it strange that there is the _bu in the version.

Xmipp doesn't need to be compiled in a deactivated environment, indeed it's usually compilated under the scipion environment. However, it could give some problems regarding mixing system libs with environ libs. I should see the error to realize the specific issue.

Here is the error: I am compiling on Centos7. If I deactivate conda, the installation works.

g++ -o bin/xmipp_classify_analyze_cluster applications/programs/classify_analyze_cluster/classify_analyze_cluster_main.o -L/home/guest/xmipp-bundle/xmipp/src/xmippCore/lib -Llib -Llib -L/home/guest/anaconda3/lib -L/usr/local/cuda -L/usr/local/cuda/lib64 -L/usr/lib -L/usr/lib64/openmpi3/lib -L/usr/lib -L/usr/lib64/openmpi3/lib -L/usr/local/IMOD/lib -lXmipp -lhdf5 -lhdf5_cpp -lfftw3 -lfftw3_threads -ljpeg -ltiff -lfftw3f -lfftw3f_threads -lpthread -lpython3.8 -lXmippCore
lib/libXmipp.so: undefined reference to `non-virtual thunk to H5::H5File::throwException(std::string const&, std::string const&) const'
lib/libXmipp.so: undefined reference to `H5::H5File::throwException(std::string const&, std::string const&) const'
/home/guest/xmipp-bundle/xmipp/src/xmippCore/lib/libXmippCore.so: undefined reference to `H5::H5Location::getFileName() const'
collect2: error: ld returned 1 exit status
scons: *** [bin/xmipp_classify_analyze_cluster] Error 1
scons: building terminated because of errors.
Some error occurred during the compilation of 'xmipp' ('bin/xmipp_classify_analyze_cluster').

Cheers

from xmipp.

DStrelak avatar DStrelak commented on August 31, 2024

Hi @MohamadHarastani
Thanks for reporting this. I'd like to check cuda 11 later this week. I agree with @dmaluenda that they probably changed the format.
We expect sth like Cuda compilation tools, release 8.0, V8.0.61 to be on the last line, where the version we parse is the last group 8.0.61. See https://github.com/I2PC/xmipp/blob/devel/xmipp#L1412 for more details

As for the build issue you get - looks like the environment does not inherit path to hdf5 for some reason. Check that it's properly set in the xmipp.conf file (INCDIRFLAGS=..... -I/usr/include/hdf5/serial). Consider making a backup of the config file, and run ./xmipp config to regenerate it.

KR

from xmipp.

MohamadHarastani avatar MohamadHarastani commented on August 31, 2024

Hi @DStrelak
Thanks for the details. It's a good idea to test Cuda 11 (many people privilege it, especially Ubuntu 20 users)
I will check the config file tomorrow and let you know.
Regards

from xmipp.

MohamadHarastani avatar MohamadHarastani commented on August 31, 2024

@DStrelak
I tried again to install xmipp using conda (this time with cuda 10.1) and I got the same error.
Here is what INCDIRFLAGS in xmipp.conf is detecting INCDIRFLAGS=-I../ -I/home/guest/anaconda3/include
I don't know if this file helps ls /home/guest/anaconda3/include >> list.txt
list.txt

from xmipp.

MohamadHarastani avatar MohamadHarastani commented on August 31, 2024

I deavtivated conda, and the installation is okay
Here is what I see in xmipp.conf
INCDIRFLAGS=-I../ -I/usr/include

from xmipp.

DStrelak avatar DStrelak commented on August 31, 2024

Hi @MohamadHarastani ,
my bad, the problem is during linking phase, not the compilation. My best guess that there's some version clash between what you have in includes and what is in the linked library (libhdf5.so) OR the library is found at all (probably the former, as only few bad links are listed).
I think there was another issue involving hdf5. Maybe @pconesa has an idea.
Can you try conda install hdf5 -c defaults meanwhile?

from xmipp.

pconesa avatar pconesa commented on August 31, 2024

Other user has reported problems compiling xmipp on centos related to hdf5. She actually asked for binaries and @MohamadHarastani facilitated them.

I do not know why this was happening and is something to investigte.

from xmipp.

MohamadHarastani avatar MohamadHarastani commented on August 31, 2024

Hi @DStrelak ,
I can try what you suggested in mid-next week. We are forced to stay home and turn off the lab computers due to the hot weather.
I believe that the other user that @pconesa mentioned had a special problem that we can't generalize (installation on a cluster or something). We have Centos7 on several computers in the lab, unfortunately, all have tcsh shell that is not yet compatible with scipion3 conda installation. I changed one of them to bash, scipion3 installs but xmipp doesn't compile on conda (which is why I reported this here).
I will try to do the same with the other computers one after another while we try to solve this issue and let you know what happens.
Cheers

from xmipp.

MohamadHarastani avatar MohamadHarastani commented on August 31, 2024

Hi again,
I have tried this

Can you try conda install hdf5 -c defaults meanwhile?

Now I am getting an error that I am not able to workaround (seems that I went in a trap or something have changed).
Here is what I am getting:
./xmipp >> log.txt
log.txt

from xmipp.

DStrelak avatar DStrelak commented on August 31, 2024

Hi @MohamadHarastani ,
it doesn't seem that the hdf5 reinstall helped. Did you keep the log? Did you re-run ./xmipp config?
From the log, there are two problems - still the hdf5 linking issue and I think that you are on recent Xmipp devel branch. We did some changes in the compilation process on devel branch, which required changes also in the xmippCore. ./xmipp git checkout devel ; ./xmipp git pull should fix those.

Let me know (via email) if you're available today (till ~17:00 CEST) for a video call.

from xmipp.

MohamadHarastani avatar MohamadHarastani commented on August 31, 2024

Hi @MohamadHarastani ,
it doesn't seem that the hdf5 reinstall helped. Did you keep the log? Did you re-run ./xmipp config?
From the log, there are two problems - still the hdf5 linking issue and I think that you are on recent Xmipp devel branch. We did some changes in the compilation process on devel branch, which required changes also in the xmippCore. ./xmipp git checkout devel ; ./xmipp git pull should fix those.

Let me know (via email) if you're available today (till ~17:00 CEST) for a video call.

Hi @DStrelak ,
I removed xmipp.conf, pull and checkout.. same issue.
I see that there is a similar issue on Centos7.
I am not in the office today, but I have remote access. I will email you to arrange a video call.
Cheers,

from xmipp.

DStrelak avatar DStrelak commented on August 31, 2024

Cuda 11 support added in #373

from xmipp.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.