What GPU do you have? What is its architecture (computer capability)? Check the NVIDIA documentation. I think atomicAdd for float was only added in 8.0 or around that time. Is your GPU that old?
--Radu ________________________________ From: [email protected] <[email protected]> on behalf of Zero <[email protected]> Sent: Monday, May 25, 2026 4:29:56 PM To: ProjectChrono <[email protected]> Subject: Re: [chrono] Does Chrono have an MPM algorithm? Hi bochen Hello, have you found this error? 2>F:\GitHub\chrono\src\chrono_fsi\sph\physics\SphBceManager.cu(520): error : no instance of overloaded function "atomicAdd" matches the argument list 2> argument types are: (chrono::fsi::sph::Real *, chrono::fsi::sph::Real) 2> atomicAdd(&flex2D_FSIforces_D[nodeIndex].z, force.z); 2> ^ 2>C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.9\include\cuda_bf16.hpp(3802): note #3326-D: function "atomicAdd(__nv_bfloat162 *, __nv_bfloat162)" does not match because argument #1 does not match parameter 2> static __declspec(__device__) __inline __nv_bfloat162 atomicAdd(__nv_bfloat162 *const address, const __nv_bfloat162 val) 2> ^ 2>C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.9\include\cuda_fp16.hpp(3426): note #3326-D: function "atomicAdd(__half2 *, __half2)" does not match because argument #1 does not match parameter 2> static __declspec(__device__) __inline __half2 atomicAdd(__half2 *const address, const __half2 val) { 2> ^ 2>C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.9\include\sm_20_atomic_functions.hpp(82): note #3326-D: function "atomicAdd(float *, float)" does not match because argument #1 does not match parameter 2> static __inline __declspec(__device__) float atomicAdd(float *address, float val) 2> ^ 2>C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.9\include\device_atomic_functions.hpp(224): note #3326-D: function "atomicAdd(unsigned long long *, unsigned long long)" does not match because argument #1 does not match parameter 2> static __inline __declspec(__device__) unsigned long long int atomicAdd(unsigned long long int *address, unsigned long long int val) 2> ^ 2>C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.9\include\device_atomic_functions.hpp(110): note #3326-D: function "atomicAdd(unsigned int *, unsigned int)" does not match because argument #1 does not match parameter 2> static __inline __declspec(__device__) unsigned int atomicAdd(unsigned int *address, unsigned int val) 2> ^ 2>C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.9\include\device_atomic_functions.hpp(105): note #3326-D: function "atomicAdd(int *, int)" does not match because argument #1 does not match parameter 2> static __inline __declspec(__device__) int atomicAdd(int *address, int val) 2> ^ 2> 2>12 errors detected in the compilation of "F:/GitHub/chrono/src/chrono_fsi/sph/physics/SphBceManager.cu". 2>SphBceManager.cu 2>D:\Program Files\Microsoft Visual Studio\2022\Community\MSBuild\Microsoft\VC\v170\BuildCustomizations\CUDA 12.9.targets(801,9): error MSB3721: Command“"C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.9\bin\nvcc.exe" --use-local-env -ccbin "D:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.38.33130\bin\HostX64\x64" -x cu -IF:\GitHub\chrono\src -IE:\Workspace\Chrono\build -IF:\GitHub\chrono\src\chrono\collision\bullet -IF:\GitHub\chrono\src\chrono\collision\gimpact -IF:\GitHub\chrono\src\chrono_thirdparty\HACD -IF:\GitHub\chrono\src\chrono_thirdparty\HACDv2 -I"E:\Workspace\Library\eigen-5.0.0" -I"E:\Workspace\Library\hdf5-2.0.0\include" -I"C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.9\include" -I"C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.9\include" --keep-dir x64\Debug -maxrregcount=0 --machine 64 --compile -cudart static -std=c++17 -arch=all-major -Wno-deprecated-gpu-targets -Xcompiler="/EHsc -Zi -Ob0 /wd4324 /Zc:__cplusplus /wd4996" -g -D_WINDOWS -DTHRUST_DEVICE_SYSTEM=THRUST_DEVICE_SYSTEM_CUDA -DTHRUST_HOST_SYSTEM=THRUST_HOST_SYSTEM_CPP -D_ENABLE_EXTENDED_ALIGNED_STORAGE -DH5_BUILT_AS_DYNAMIC_LIB -D"CMAKE_INTDIR=\"Debug\"" -DChrono_fsisph_EXPORTS -D_WINDLL -D_MBCS -DWIN32 -D_WINDOWS -DTHRUST_DEVICE_SYSTEM=THRUST_DEVICE_SYSTEM_CUDA -DTHRUST_HOST_SYSTEM=THRUST_HOST_SYSTEM_CPP -DCH_API_COMPILE_FSI -D_CRT_SECURE_NO_DEPRECATE -D_SCL_SECURE_NO_DEPRECATE -DNOMINMAX -DDEBUG -D_DEBUG -DCH_IGNORE_DEPRECATED -D_ENABLE_EXTENDED_ALIGNED_STORAGE -DH5_BUILT_AS_DYNAMIC_LIB -D"CMAKE_INTDIR=\"Debug\"" -DChrono_fsisph_EXPORTS -Xcompiler "/EHsc /W4 /nologo /Od /FS /Zi /RTC1 /MDd /GR" -Xcompiler "/FdChrono_fsisph.dir\Debug\vc143.pdb" -o Chrono_fsisph.dir\Debug\SphBceManager.obj "F:\GitHub\chrono\src\chrono_fsi\sph\physics\SphBceManager.cu"”exited, with code 1。 在2026年5月22日星期五 UTC+8 11:16:49<[email protected]> 写道: Hi Zero, Could you please try on the latest main branch, and if it doesn't work, paste the full compiler error (including the specific file and line that the error occurs) to help use troubleshoot. Best, Bocheng Zou On 5/21/26 08:51, Zero wrote: Dear,all When compiling the FSI-SPH module in version 10.0, I have consistently encountered the error: no instance of overloaded function "atomicAdd" matches the argument list, and my CUDA version is 12.9. 在2026年5月21日星期四 UTC+8 03:52:23<Radu Serban> 写道: We had an MPM implementation in the Chrono::Multicore module, but we obsoleted it because it didn’t see any use or interest. If you are interested in reviving it for your own use and assuming the SPH solver in the Chrono::FSI-SPH module cannot be used for your case, I can provide you information where we archived that capability. --Radu From: [email protected] <[email protected]> On Behalf Of Zero Sent: Thursday, May 7, 2026 2:14 PM To: ProjectChrono <[email protected]> Subject: [chrono] Does Chrono have an MPM algorithm? Hello everyone! I would like to ask whether the particle simulation algorithms in the Chrono library include any implementation related to MPM (Material Point Method). -- You received this message because you are subscribed to the Google Groups "ProjectChrono" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To view this discussion visit https://groups.google.com/d/msgid/projectchrono/982c5f92-21ad-4405-864d-dbe9f04fbc8an%40googlegroups.com<https://urldefense.com/v3/__https:/groups.google.com/d/msgid/projectchrono/982c5f92-21ad-4405-864d-dbe9f04fbc8an*40googlegroups.com?utm_medium=email&utm_source=footer__;JQ!!Mak6IKo!PVeKw9T8REx1QCnqRaHMmhRr-kKvsF2J1AGn_ewNJGGXvLLuREDoYKWbRLDVUORWqpMW7VaNW3g07FM$>. -- You received this message because you are subscribed to the Google Groups "ProjectChrono" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To view this discussion visit https://groups.google.com/d/msgid/projectchrono/fc460342-c0ca-45a0-b384-445e6873384an%40googlegroups.com<https://urldefense.com/v3/__https://groups.google.com/d/msgid/projectchrono/fc460342-c0ca-45a0-b384-445e6873384an*40googlegroups.com?utm_medium=email&utm_source=footer__;JQ!!Mak6IKo!OqrJK3za2QMSN0N_33Y5ZAr3onHupnDUe3XhJW2sqpo4yesoa6eGSChjdh1GLzAgFNxBn_ad9bvarPI$>. -- You received this message because you are subscribed to the Google Groups "ProjectChrono" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]<mailto:[email protected]>. To view this discussion visit https://groups.google.com/d/msgid/projectchrono/8ed6365f-140b-44a2-9591-b1d76bc6d75dn%40googlegroups.com<https://urldefense.com/v3/__https://groups.google.com/d/msgid/projectchrono/8ed6365f-140b-44a2-9591-b1d76bc6d75dn*40googlegroups.com?utm_medium=email&utm_source=footer__;JQ!!Mak6IKo!OqrJK3za2QMSN0N_33Y5ZAr3onHupnDUe3XhJW2sqpo4yesoa6eGSChjdh1GLzAgFNxBn_adKwmMlok$>. -- You received this message because you are subscribed to the Google Groups "ProjectChrono" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To view this discussion visit https://groups.google.com/d/msgid/projectchrono/CH3PPF46CDC21855AED2E56D7E37741E352A70A2%40CH3PPF46CDC2185.namprd06.prod.outlook.com.
