Mercurial > hg > Applications > Grep
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); +}