Mercurial > hg > Game > Cerium
diff TaskManager/Cuda/CudaScheduler.h @ 1935:67e50779feb4 draft
CudaScheduler is runnig.
author | Shohei KOKUBO <e105744@ie.u-ryukyu.ac.jp> |
---|---|
date | Sun, 02 Feb 2014 18:33:54 +0900 |
parents | 4eefec26e3e2 |
children | 6988e5478a8c |
line wrap: on
line diff
--- a/TaskManager/Cuda/CudaScheduler.h Fri Jan 31 17:08:58 2014 +0900 +++ b/TaskManager/Cuda/CudaScheduler.h Sun Feb 02 18:33:54 2014 +0900 @@ -10,6 +10,8 @@ extern TaskObject cuda_task_list[MAX_TASK_OBJECT]; +#define STAGE 8 + class CudaScheduler : public MainScheduler { public: typedef struct cudabuffer { @@ -42,14 +44,15 @@ // cl_kernel に相当 // 変数名は function にすべきか kernel にすべきか // とりあえず、kernel で - CUfunction kernel[2]; - CUevent kernel_event[2]; - CudaBuffer* cudabuffer; - HTask::htask_flag flag[2]; + CUfunction kernel[STAGE]; + CUevent kernel_event[STAGE]; + CudaBuffer cudabuffer[STAGE]; + + HTask::htask_flag flag[STAGE]; private: int load_kernel(int cmd); - CUdeviceptr createBuffer(CudaBufferPtr cudabuffer, CUdeviceptr* mem, int i, size_t size, int* error); + void createBuffer(CudaBufferPtr cudabuffer, CUdeviceptr* mem, int i, size_t size); void initCudaBuffer(CudaBufferPtr m); void destroyCudaBuffer(CudaBufferPtr m); void CudaTaskError(CudaBufferPtr cudabuffer, int cur, TaskListPtr taskList, int ret);