Home › Forum › SOFA › Building SOFA › [SOLVED] Building CUDA plugin of SOFA v18.06 using VS2017 and cuda_9.2.148_win10
Tagged: 64_bits, SOFA_other, VS2017, Windows_10
- This topic has 6 replies, 2 voices, and was last updated 6 years, 4 months ago by Hugo.
-
AuthorPosts
-
25 July 2018 at 02:18 #11505SuwanBlocked
Hi there,
I am a beginner at SOFA.
I have built SOFA v18.06 using VS 2017 and cuda_9.2.148_win10.
My graphics card is NVIDIA GeForce GTX 1080.
Then only cmpiling CUDA plugin has failed even though other parts has been successful.Error message are as follows :
1>Building NVCC (Device) object applications/plugins/SofaCUDA/CMakeFiles/SofaCUDA.dir/sofa/gpu/cuda/Debug/SofaCUDA_generated_CudaBarycentricMapping.cu.obj 1>nvcc fatal : A single input file is required for a non-link phase when an outputfile is specified 1>CMake Error at SofaCUDA_generated_CudaBarycentricMapping.cu.obj.Debug.cmake:215 (message): 1> Error generating 1> D:/Work/SOFA/Code/CodeOnDev/SOFAWork/applications/plugins/SofaCUDA/CMakeFiles/SofaCUDA.dir/sofa/gpu/cuda/Debug/SofaCUDA_generated_CudaBarycentricMapping.cu.obj 1> 1> 1>C:\Program Files (x86)\Microsoft Visual Studio\2017\Professional\Common7\IDE\VC\VCTargets\Microsoft.CppCommon.targets(171,5): error MSB6006: “cmd.exe” exited with code 1.
I don’t know what is wrong.
How can I build it?Thank you
Suwan26 July 2018 at 14:12 #11534HugoKeymasterHi @suwan,
I am using CUDA on Linux, and I never experienced such an error of nvcc with the SofaCUDA plugin. However, it seems that others are facing this NVCC / CMake issues:
Let me know if this helps.
Hugo
1 August 2018 at 12:49 #11617SuwanBlockedI solved this case.
The reasons are as follows :
1. It happened that flags of SOFACUDA_CUBLAS and SOFACUDA_CUDPP was set.
2. The latest version of VS 2017 couldn’t build the cuda source of SOFA because of the limit of vs 2017 version defined in cuda header files.So I have built SOFA source code by solving above two problems.
Could you let me know whether SOFA needs the functions of CUBLAS and CUDPP?
If it needs them, what modules use them?1 August 2018 at 18:30 #11622HugoKeymasterHi @suwan,
These are not useful for the open-source code of SOFA. These dependencies are required for solvers (CUBLAS) and collision detection algorithms (CUDPP) that are implemented in private plugins. In the future, these options should be moved directly into these private plugins to avoid polluting the open-source code.
Hope this answers your question.Best
Hugo
2 August 2018 at 04:54 #11627SuwanBlockedHi @Hugo,
Thank you for your kind reply.
I tried to build two options which are CUBLAS and CUDPP.
Building CUBLAS was successful.
However, doing CUDPP failed.
It need cudpp libaray and header.
So I have built cudpp version 2.3 and added to SOFA.
Then CudaScan.cu made an error because of missing of cudpp_plan_manager.h.
I found it in cudpp version 1.1.1, but that version was so old.
I want to know what version of cudpp is used for SOFA.
Could you give me any tip about this case?Best regards,
Suwan2 August 2018 at 09:15 #11628SuwanBlockedHi @hugo,
I have successfully built SOFACUDA with CUDPP.
I built cudpp version 2.3 and used it for building SOFA CUDA.
And I modified some SOFA CUDA code because of changes between old and new version of cudpp functions.Thank you.
Best regards,
Suwan2 August 2018 at 11:37 #11632 -
AuthorPosts
- You must be logged in to reply to this topic.