266
|
1 #include "Func.h"
|
|
2 #include "Scheduler.h"
|
|
3 #ifdef __CERIUM_GPU__
|
|
4 #include "GpuScheduler.h"
|
|
5 #endif
|
|
6 #ifdef __CERIUM_CUDA__
|
|
7 #include "CudaScheduler.h"
|
|
8 #endif
|
|
9
|
|
10 /* 必ずこの位置に書いて */
|
|
11 SchedExternTask(Exec);
|
|
12 SchedExternTask(Exec_Data_Parallel);
|
|
13 SchedExternTask(Print);
|
|
14
|
|
15 /**
|
|
16 * この関数は ../spe/spe-main と違って
|
|
17 * 自分で呼び出せばいい関数なので
|
|
18 * 好きな関数名でおk (SchedRegisterTask は必須)
|
|
19 */
|
|
20 void
|
|
21 task_init(void)
|
|
22 {
|
|
23 #ifdef __CERIUM_GPU__
|
|
24 GpuSchedRegister(TASK_EXEC, "gpu/Exec.cl", "wordcount");
|
|
25 GpuSchedRegister(TASK_EXEC_DATA_PARALLEL, "gpu/Exec_Data_Parallel.cl","wordcount_parallel");
|
|
26 #endif
|
|
27 #ifdef __CERIUM_CUDA__
|
|
28 CudaSchedRegister(TASK_EXEC, "cuda/Exec.ptx", "wordcount");
|
|
29 CudaSchedRegister(TASK_EXEC_DATA_PARALLEL, "cuda/Exec_Data_Parallel.ptx","wordcount_parallel");
|
|
30 #endif
|
|
31
|
|
32 SchedRegisterTask(TASK_EXEC, Exec);
|
|
33 SchedRegisterTask(TASK_EXEC_DATA_PARALLEL, Exec);
|
|
34 SchedRegisterTask(TASK_PRINT, Print);
|
|
35 }
|