From 7c72d2b2e2b585e8ef1bed4db2ee6c9a0673e3b8 Mon Sep 17 00:00:00 2001
From: Jean-Matthieu Etancelin <jean-matthieu.etancelin@univ-pau.fr>
Date: Tue, 29 Mar 2022 11:17:22 +0200
Subject: [PATCH] add kernel debugging output on build failure

---
 hysop/backend/device/opencl/operator/custom.py | 9 +++++++++
 1 file changed, 9 insertions(+)

diff --git a/hysop/backend/device/opencl/operator/custom.py b/hysop/backend/device/opencl/operator/custom.py
index 094bcaa92..eb4c7b1bd 100644
--- a/hysop/backend/device/opencl/operator/custom.py
+++ b/hysop/backend/device/opencl/operator/custom.py
@@ -67,6 +67,15 @@ class OpenClCustomOperator(CustomOperatorBase, OpenClOperator):
             self.func,
             f"__{self.name}_elementwise", preamble=str(cg))
 
+        # Build testing:
+        try:
+            self.__elementwise.get_kernel(False)
+        except cl.RuntimeError as e:
+            print("USED KERNEL")
+            print(",".join(kernel_args))
+            print(str(cg)+self.func)
+            raise e
+
     @op_apply
     def apply(self, **kwds):
         super().apply(**kwds)
-- 
GitLab