From 5a76f4ad3382e306729ec7d1fae4a17065ae2be8 Mon Sep 17 00:00:00 2001
From: Moises Fernandez <moisesf@fmrib.ox.ac.uk>
Date: Fri, 7 Dec 2012 20:36:51 +0000
Subject: [PATCH] A function to synchronize and check errors after run each
 kernel

---
 CUDA/sync_check.h | 19 +++++++++++++++++++
 1 file changed, 19 insertions(+)
 create mode 100644 CUDA/sync_check.h

diff --git a/CUDA/sync_check.h b/CUDA/sync_check.h
new file mode 100644
index 0000000..a5e6430
--- /dev/null
+++ b/CUDA/sync_check.h
@@ -0,0 +1,19 @@
+#include <fstream>
+
+#define safecall(call) do{\
+	cudaError_t err=call;\
+	if (cudaSuccess != err){\
+		printf("cuda error at %s:%d. %s\n",__FILE__,__LINE__,cudaGetErrorString(err));\
+	}\
+}while(0)
+
+#define sync_check(message) do{;\
+	safecall(cudaDeviceSynchronize());\
+	cudaError_t error = cudaGetLastError();\
+	if (cudaSuccess != error){\
+		printf("ERROR: %s: %s\n",message,cudaGetErrorString(error));\
+		exit(-1);\
+	}\
+}while(0)
+
+
-- 
GitLab