annotate TaskManager/Cell/CellHTaskInfo.cc @ 384:cede4c6af788 draft

makefile fix
author Shinji KONO <kono@ie.u-ryukyu.ac.jp>
date Thu, 06 Aug 2009 12:05:59 +0900
parents 028ffc9c0375
children d6245cb38028
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
109
028ffc9c0375 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
1 #include <stdio.h>
028ffc9c0375 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
2 #include <stdlib.h>
028ffc9c0375 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
3 #include "CellHTaskInfo.h"
028ffc9c0375 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
4
028ffc9c0375 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
5 int
028ffc9c0375 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
6 CellHTaskInfo::extend_pool(int num)
028ffc9c0375 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
7 {
028ffc9c0375 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
8 HTaskPtr q = NULL;
028ffc9c0375 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
9
028ffc9c0375 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
10 q = (HTaskPtr)malloc(sizeof(HTask)*(num+1));
028ffc9c0375 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
11
028ffc9c0375 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
12 if (q == NULL) {
028ffc9c0375 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
13 return -1;
028ffc9c0375 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
14 }
028ffc9c0375 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
15 q->next = htaskPool;
028ffc9c0375 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
16 htaskPool = q;
028ffc9c0375 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
17
028ffc9c0375 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
18 /* Connect all free queue in the pool */
028ffc9c0375 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
19 for (q = htaskPool + 1; --num > 0; q++) {
028ffc9c0375 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
20 q->next = q + 1;
028ffc9c0375 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
21 posix_memalign((void**)&q->inData, DEFAULT_ALIGNMENT, sizeof(ListData));
028ffc9c0375 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
22 posix_memalign((void**)&q->outData, DEFAULT_ALIGNMENT, sizeof(ListData));
028ffc9c0375 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
23 }
028ffc9c0375 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
24 q->next = freeHTask;
028ffc9c0375 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
25 posix_memalign((void**)&q->inData, DEFAULT_ALIGNMENT, sizeof(ListData));
028ffc9c0375 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
26 posix_memalign((void**)&q->outData, DEFAULT_ALIGNMENT, sizeof(ListData));
028ffc9c0375 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
27
028ffc9c0375 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
28 freeHTask = htaskPool + 1;
028ffc9c0375 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
29
028ffc9c0375 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
30 return 0;
028ffc9c0375 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
31 }