annotate TaskManager/Cell/spe/main.cc @ 619:0decff4e867b

RenewTask removal
author Shinji KONO <kono@ie.u-ryukyu.ac.jp>
date Sun, 15 Nov 2009 02:02:30 +0900
parents 8382f0f8c0b4
children 5b178db5988a
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
81
b03a4d3565c0 *** empty log message ***
gongo
parents:
diff changeset
1 #include <stdio.h>
b03a4d3565c0 *** empty log message ***
gongo
parents:
diff changeset
2 #include "CellScheduler.h"
194
gongo@localhost.localdomain
parents: 193
diff changeset
3 #include "spu_mfcio.h"
109
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents: 94
diff changeset
4 #include "error.h"
81
b03a4d3565c0 *** empty log message ***
gongo
parents:
diff changeset
5
94
588ab5f0e659 *** empty log message ***
gongo
parents: 81
diff changeset
6 extern unsigned char _end[];
588ab5f0e659 *** empty log message ***
gongo
parents: 81
diff changeset
7
81
b03a4d3565c0 *** empty log message ***
gongo
parents:
diff changeset
8 int
b03a4d3565c0 *** empty log message ***
gongo
parents:
diff changeset
9 main(unsigned long long speid,
b03a4d3565c0 *** empty log message ***
gongo
parents:
diff changeset
10 unsigned long long argc, unsigned long long argv)
b03a4d3565c0 *** empty log message ***
gongo
parents:
diff changeset
11 {
b03a4d3565c0 *** empty log message ***
gongo
parents:
diff changeset
12 CellScheduler *manager;
b03a4d3565c0 *** empty log message ***
gongo
parents:
diff changeset
13
242
8382f0f8c0b4 dma_wait
e065746@localhost.localdomain
parents: 212
diff changeset
14 //const unsigned ls_size = (unsigned)&argc;
8382f0f8c0b4 dma_wait
e065746@localhost.localdomain
parents: 212
diff changeset
15 //unsigned code_size = (unsigned)&_end;
8382f0f8c0b4 dma_wait
e065746@localhost.localdomain
parents: 212
diff changeset
16 //unsigned heap_size = ls_size - code_size;
94
588ab5f0e659 *** empty log message ***
gongo
parents: 81
diff changeset
17
109
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents: 94
diff changeset
18 __debug(" ls_size:%10d bytes\n", ls_size);
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents: 94
diff changeset
19 __debug("code_size:%10d bytes\n", code_size);
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents: 94
diff changeset
20 __debug("heap_size:%10d bytes\n", heap_size);
94
588ab5f0e659 *** empty log message ***
gongo
parents: 81
diff changeset
21
81
b03a4d3565c0 *** empty log message ***
gongo
parents:
diff changeset
22 manager = new CellScheduler();
b03a4d3565c0 *** empty log message ***
gongo
parents:
diff changeset
23 manager->init();
109
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents: 94
diff changeset
24 manager->id = (int)argc;
94
588ab5f0e659 *** empty log message ***
gongo
parents: 81
diff changeset
25
619
0decff4e867b RenewTask removal
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 242
diff changeset
26 TaskManagerImpl *tm = new SpeTaskManagerImpl(manager);
0decff4e867b RenewTask removal
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 242
diff changeset
27 manager->set_manager(tm);
0decff4e867b RenewTask removal
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 242
diff changeset
28
194
gongo@localhost.localdomain
parents: 193
diff changeset
29 spu_write_decrementer(0x7FFFFFFFU);
gongo@localhost.localdomain
parents: 193
diff changeset
30 unsigned int prof = spu_read_decrementer();
81
b03a4d3565c0 *** empty log message ***
gongo
parents:
diff changeset
31 manager->run();
212
gongo@localhost.localdomain
parents: 200
diff changeset
32
194
gongo@localhost.localdomain
parents: 193
diff changeset
33 prof -= spu_read_decrementer();
gongo@localhost.localdomain
parents: 193
diff changeset
34
200
10ad99550ee8 fix run_draw
gongo@localhost.localdomain
parents: 194
diff changeset
35 //printf("%f\n", prof/79800000.0f*1000.0f);
10ad99550ee8 fix run_draw
gongo@localhost.localdomain
parents: 194
diff changeset
36
81
b03a4d3565c0 *** empty log message ***
gongo
parents:
diff changeset
37 manager->finish();
b03a4d3565c0 *** empty log message ***
gongo
parents:
diff changeset
38
b03a4d3565c0 *** empty log message ***
gongo
parents:
diff changeset
39 return 0;
b03a4d3565c0 *** empty log message ***
gongo
parents:
diff changeset
40 }