diff regexParser/cerium/task_init.cc @ 266:e51cac73e42a

CeriumGrep start
author masa
date Thu, 28 Jan 2016 21:14:34 +0900
parents
children
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/regexParser/cerium/task_init.cc	Thu Jan 28 21:14:34 2016 +0900
@@ -0,0 +1,35 @@
+#include "Func.h"
+#include "Scheduler.h"
+#ifdef __CERIUM_GPU__
+#include "GpuScheduler.h"
+#endif
+#ifdef __CERIUM_CUDA__
+#include "CudaScheduler.h"
+#endif
+
+/* 必ずこの位置に書いて */
+SchedExternTask(Exec);
+SchedExternTask(Exec_Data_Parallel);
+SchedExternTask(Print);
+
+/**
+ * この関数は ../spe/spe-main と違って
+ * 自分で呼び出せばいい関数なので
+ * 好きな関数名でおk (SchedRegisterTask は必須)
+ */
+void
+task_init(void)
+{
+#ifdef __CERIUM_GPU__
+    GpuSchedRegister(TASK_EXEC, "gpu/Exec.cl", "wordcount");
+    GpuSchedRegister(TASK_EXEC_DATA_PARALLEL, "gpu/Exec_Data_Parallel.cl","wordcount_parallel");
+#endif
+#ifdef __CERIUM_CUDA__
+    CudaSchedRegister(TASK_EXEC, "cuda/Exec.ptx", "wordcount");
+    CudaSchedRegister(TASK_EXEC_DATA_PARALLEL, "cuda/Exec_Data_Parallel.ptx","wordcount_parallel");
+#endif
+
+    SchedRegisterTask(TASK_EXEC, Exec);
+    SchedRegisterTask(TASK_EXEC_DATA_PARALLEL, Exec);
+    SchedRegisterTask(TASK_PRINT, Print);
+}