comparison TaskManager/Cell/CellTaskManagerImpl.cc @ 635:8cc609285bbe

SimpleTask worked on Mac OS X
author Shinji KONO <kono@ie.u-ryukyu.ac.jp>
date Wed, 18 Nov 2009 18:36:25 +0900
parents 8843edf37c0e
children 5530fa36d42e
comparison
equal deleted inserted replaced
634:0558abba673c 635:8cc609285bbe
5 #include <string.h> 5 #include <string.h>
6 #include "CellTaskManagerImpl.h" 6 #include "CellTaskManagerImpl.h"
7 #include "CellTaskListInfo.h" 7 #include "CellTaskListInfo.h"
8 #include "HTaskInfo.h" 8 #include "HTaskInfo.h"
9 #include "SchedTask.h" 9 #include "SchedTask.h"
10 #include "PpeScheduler.h" 10 #include "MainScheduler.h"
11 #include "types.h" 11 #include "types.h"
12 12
13 CellTaskManagerImpl::~CellTaskManagerImpl() 13 CellTaskManagerImpl::~CellTaskManagerImpl()
14 { 14 {
15 delete speThreads; 15 delete speThreads;
51 flag_sendTaskList[i] = 1; 51 flag_sendTaskList[i] = 1;
52 } 52 }
53 // PPE 側の管理をする Manager 53 // PPE 側の管理をする Manager
54 ppeManager = new FifoTaskManagerImpl(machineNum); 54 ppeManager = new FifoTaskManagerImpl(machineNum);
55 // 大半のTaskQueueInfoは、共有される 55 // 大半のTaskQueueInfoは、共有される
56 ppeManager->init(new PpeScheduler, this); 56 ppeManager->init(new MainScheduler, this);
57 57
58 ppeManager->get_scheduler()->set_manager(this); 58 ppeManager->get_scheduler()->set_manager(this);
59 schedTaskManager = new SchedTask(); 59 schedTaskManager = new SchedTask();
60 schedTaskManager->init(0,0,0,ppeManager->get_scheduler()); 60 schedTaskManager->init(0,0,0,ppeManager->get_scheduler());
61 } 61 }
274 274
275 275
276 void* 276 void*
277 CellTaskManagerImpl::allocate(int size, int alignment) 277 CellTaskManagerImpl::allocate(int size, int alignment)
278 { 278 {
279 if (size==0) return 0;
279 void *buff; 280 void *buff;
280 posix_memalign(&buff, alignment, size); 281 posix_memalign(&buff, alignment, size);
281 return buff; 282 return buff;
282 } 283 }
283 284
284 void* 285 void*
285 CellTaskManagerImpl::allocate(int size) 286 CellTaskManagerImpl::allocate(int size)
286 { 287 {
288 if (size==0) return 0;
287 void *buff; 289 void *buff;
288 290
289 posix_memalign(&buff, DEFAULT_ALIGNMENT, size); 291 posix_memalign(&buff, DEFAULT_ALIGNMENT, size);
290 292
291 // bzero はコストが高いのでやりたくない 293 // bzero はコストが高いのでやりたくない