Add SYCL-related information to the mdrun version header
[alexxy/gromacs.git] / src / gromacs / utility / baseversion.cpp
index e862b805dc15d5decb11e5a7ccf4ce721d8fc820..90cddcb7b0b81d753914c8b6ed4a841f785acbd3 100644 (file)
@@ -80,6 +80,11 @@ void gmx_is_single_precision() {}
 
 const char* getGpuImplementationString()
 {
+    // Some flavors of clang complain about unreachable returns.
+#ifdef __clang__
+#    pragma clang diagnostic push
+#    pragma clang diagnostic ignored "-Wunreachable-code-return"
+#endif
     if (GMX_GPU)
     {
         if (GMX_GPU_CUDA)
@@ -92,7 +97,18 @@ const char* getGpuImplementationString()
         }
         else if (GMX_GPU_SYCL)
         {
-            return "SYCL";
+            if (GMX_SYCL_DPCPP)
+            {
+                return "SYCL (DPCPP)";
+            }
+            else if (GMX_SYCL_HIPSYCL)
+            {
+                return "SYCL (hipSYCL)";
+            }
+            else
+            {
+                return "SYCL (unknown)";
+            }
         }
         else
         {
@@ -104,4 +120,7 @@ const char* getGpuImplementationString()
     {
         return "disabled";
     }
+#ifdef __clang__
+#    pragma clang diagnostic pop
+#endif
 }