Home › Forum › SOFA › Building SOFA › Error compiling with CUDA plugin
Tagged: 64_bits, GCC, Linux_mint, Plugin_CUDA, SOFA_1812
- This topic has 5 replies, 2 voices, and was last updated 5 years, 6 months ago by Hugo.
-
AuthorPosts
-
27 May 2019 at 19:31 #13537FrancoisBlocked
Hi,
I’m getting compilation errors when compiling SOFA v18.12 with the CUDA plugin on Linux. From the file CudaStandardTetrahedralFEMForceField.cu lines 353 and 580, it says that the identifiers “StandardTetrahedralFEMForceFieldCuda_BoyceAndArruda_deriveSPKTensor” and “StandardTetrahedralFEMForceFieldCuda_BoyceAndArruda_ElasticityTensor” are undefined during the instantiation of “StandardTetrahedralFEMForceFieldCuda_addForce_kernel”.
I tried to paste the whole error message here but I keep getting “*** Forbidden. Message seems to be spam. ***” from the forum.
Any idea what I might be doing wrong?
Thank you,
François
27 May 2019 at 21:25 #13538HugoKeymasterHi @fleonard
You are right, compiling the sources of the SOFA release v18.12 with the SofaCUDA plugin activated fails. The error has been fixed since then in the master branch. The release v19.06 (released this June) will include this fix.
To get it working with your v18.12 sources, you can pick the commit fixing your issue. To do so, here are the steps to follow:
–git fetch origin
(if the remote github.com/sofa-framework/sofa is “origin” as by default)
–git cherry-pick 0e0f80a34aaf1c5b77852efb88df6a3d88ae47bd
Let me know if you face any issue.
Best wishes,Hugo
30 May 2019 at 20:05 #13557FrancoisBlockedHi Hugo,
Thanks for the help. With the commit fixing the issue, the code compiles, but runSofa crashes when starting. Here is the trace:
########## SIG 6 - SIGABRT: usually caused by an abort() or assert() ########## -> /home/franc/sofa/build/install/bin/../lib/libSofaHelper.so.18.12.00(sofa::helper::BackTrace::dump()+0x20) [0x7f864c6874b0] -> /home/franc/sofa/build/install/bin/../lib/libSofaHelper.so.18.12.00(sofa::helper::BackTrace::sig(int)+0x358) [0x7f864c687a48] -> /lib/x86_64-linux-gnu/libc.so.6(+0x354b0) [0x7f8648be64b0] -> /lib/x86_64-linux-gnu/libc.so.6(gsignal+0x38) [0x7f8648be6428] -> /lib/x86_64-linux-gnu/libc.so.6(abort+0x16a) [0x7f8648be802a] -> /usr/lib/x86_64-linux-gnu/libstdc++.so.6(+0x99242) [0x7f8649535242] -> /usr/lib/x86_64-linux-gnu/libstdc++.so.6(+0xa4e86) [0x7f8649540e86] -> /usr/lib/x86_64-linux-gnu/libstdc++.so.6(+0xa4ed1) [0x7f8649540ed1] -> /usr/lib/x86_64-linux-gnu/libstdc++.so.6(__cxa_rethrow+0x49) [0x7f8649541159] -> /home/franc/sofa/build/install/bin/../lib/libSofaHelper.so.18.12.00(void std::_Rb_tree<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, sofa::helper::lifecycle::Deprecated>, std::_Select1st<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, sofa::helper::lifecycle::Deprecated> >, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, sofa::helper::lifecycle::Deprecated> > >::_M_construct_node<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, sofa::helper::lifecycle::Deprecated> const&>(std::_Rb_tree_node<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, sofa::helper::lifecycle::Deprecated> >*, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, sofa::helper::lifecycle::Deprecated> const&)+0xda) [0x7f864c68ad8a] -> /home/franc/sofa/build/install/bin/../lib/libSofaHelper.so.18.12.00(std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, sofa::helper::lifecycle::Deprecated, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, sofa::helper::lifecycle::Deprecated> > >::map(std::initializer_list<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, sofa::helper::lifecycle::Deprecated> >, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > const&, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, sofa::helper::lifecycle::Deprecated> > const&)+0x172) [0x7f864c68a032] -> /home/franc/sofa/build/lib/libSofaHelper.so.18.12.01(+0x6f047) [0x7f85dd11b047] -> /lib64/ld-linux-x86-64.so.2(+0x106ca) [0x7f86613476ca] -> /lib64/ld-linux-x86-64.so.2(+0x107db) [0x7f86613477db] -> /lib64/ld-linux-x86-64.so.2(+0x158f2) [0x7f866134c8f2] -> /lib64/ld-linux-x86-64.so.2(+0x10574) [0x7f8661347574] -> /lib64/ld-linux-x86-64.so.2(+0x14db9) [0x7f866134bdb9] -> /lib/x86_64-linux-gnu/libdl.so.2(+0xf09) [0x7f8646700f09] -> /lib64/ld-linux-x86-64.so.2(+0x10574) [0x7f8661347574] -> /lib/x86_64-linux-gnu/libdl.so.2(+0x1571) [0x7f8646701571] -> /lib/x86_64-linux-gnu/libdl.so.2(dlopen+0x31) [0x7f8646700fa1] -> /home/franc/sofa/build/install/bin/../lib/libSofaHelper.so.18.12.00(sofa::helper::system::DynamicLibrary::load(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)+0x1b) [0x7f864c74eccb] -> /home/franc/sofa/build/install/bin/../lib/libSofaHelper.so.18.12.00(sofa::helper::system::PluginManager::loadPluginByPath(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::ostream*)+0x4a) [0x7f864c754daa] -> /home/franc/sofa/build/install/bin/../lib/libSofaHelper.so.18.12.00(sofa::helper::system::PluginManager::readFromIniFile(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)+0x384) [0x7f864c753fe4] -> /home/franc/sofa/build/install/bin/../lib/libSofaGuiQt.so.18.12.00(sofa::gui::qt::SofaPluginManager::SofaPluginManager()+0x331) [0x7f8660af8631] -> /home/franc/sofa/build/install/bin/../lib/libSofaGuiQt.so.18.12.00(sofa::gui::qt::RealGUI::createPluginManager()+0x21) [0x7f8660a9ed21] -> /home/franc/sofa/build/install/bin/../lib/libSofaGuiQt.so.18.12.00(sofa::gui::qt::RealGUI::RealGUI(char const*)+0x2a4) [0x7f8660a9dae4] -> /home/franc/sofa/build/install/bin/../lib/libSofaGuiQt.so.18.12.00(sofa::gui::qt::RealGUI::CreateGUI(char const*, boost::intrusive_ptr<sofa::simulation::Node>, char const*)+0x31) [0x7f8660a9caa1] -> /home/franc/sofa/build/install/bin/../lib/libSofaGuiCommon.so.18.12.00(sofa::gui::GUIManager::createGUI(boost::intrusive_ptr<sofa::simulation::Node>, char const*)+0x73) [0x7f86605904f3] -> ./runSofa(main+0x401b) [0x414fab] -> /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xf0) [0x7f8648bd1830] -> ./runSofa(_start+0x29) [0x4105e9] Aborted
4 June 2019 at 15:51 #13566HugoKeymasterHi @fleonard
I think many fixes were actually done on Cuda since v18.12.
Regarding the information-less trace, I would rather go for using the master branch or cherry-picking all changes in the SofaCUDA plugin in master since v18.12.Afterwards, let us know whether you still have exec errors.
Best wishes,Hugo
4 June 2019 at 18:05 #13572FrancoisBlockedI tried to build the master branch, but I get several instances of
In file included from /home/franc/sofa/src/SofaGeneral/../modules/SofaDenseSolver/NewMatMatrix.h:29: /home/franc/sofa/src/modules/SofaDenseSolver/NewMatVector.h:28:10: fatal error: 'newmat/newmatio.h' file not found
I will try to cherry pick all changes in the SofaCUDA plugin.
7 June 2019 at 13:47 #13590 -
AuthorPosts
- You must be logged in to reply to this topic.