view TaskManager/Cell/spe/SpeTaskManagerImpl.h @ 2054:2e7a6f40672f draft

add param(4) in FileMapReduce.cc
author masa
date Fri, 29 Jan 2016 15:56:28 +0900
parents 6988e5478a8c
children
line wrap: on
line source

#ifndef INCLUDED_SPE_TASK_MANAGER_IMPL
#define INCLUDED_SPE_TASK_MANAGER_IMPL

#include "TaskManagerImpl.h"
#include "MainScheduler.h"
#include "Scheduler.h"
#include "TaskList.h"

class SpeTaskManagerImpl : public TaskManagerImpl {
public:
    /* constructor */
    BASE_NEW_DELETE(SpeTaskManagerImpl);

    SpeTaskManagerImpl() ;
    ~SpeTaskManagerImpl();

    /* functions */
    // call by system
    void init(int spuIdle,int useRefDma, int export_task_log);
    void run();
    void start_profile();
    void show_profile();
    void export_task_log();
    HTaskPtr create_task(int cmd,void *from);
    HTaskPtr create_task(int cmd, memaddr rbuf, long r_size, memaddr wbuf, long w_size,void *from);
    HTaskPtr create_task_array(int id, int num_task, int num_param, int num_inData, int num_outData,void *from);

    TaskListPtr createTaskList() { return 0; }
    void set_task_depend(HTaskPtr master, HTaskPtr slave);
    void spawn_task(HTaskPtr);
    void set_task_cpu(HTaskPtr, CPU_TYPE);
    void polling() {}
    void free_htask(HTaskPtr htask) {}
    void print_arch();

#if defined __CERIUM_GPU__ || defined __CERIUM_CUDA__
    SpeTaskManagerImpl(int i);
    void append_activeTask(HTask* p);
    void append_waitTask(HTask* p);
#endif
}  ;


#endif /* INCLUDED_SPE_TASK_MANAGER_IMPL */