annotate TaskManager/Cell/spe/main.cc @ 638:671fca057ad3

hmmmm
author Shinji KONO <kono@ie.u-ryukyu.ac.jp>
date Thu, 19 Nov 2009 18:18:20 +0900
parents 5530fa36d42e
children 3b6290c05f9f
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"
621
5b178db5988a Cell fix
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 619
diff changeset
3 #include "SpeTaskManagerImpl.h"
194
gongo@localhost.localdomain
parents: 193
diff changeset
4 #include "spu_mfcio.h"
109
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents: 94
diff changeset
5 #include "error.h"
81
b03a4d3565c0 *** empty log message ***
gongo
parents:
diff changeset
6
94
588ab5f0e659 *** empty log message ***
gongo
parents: 81
diff changeset
7 extern unsigned char _end[];
588ab5f0e659 *** empty log message ***
gongo
parents: 81
diff changeset
8
81
b03a4d3565c0 *** empty log message ***
gongo
parents:
diff changeset
9 int
b03a4d3565c0 *** empty log message ***
gongo
parents:
diff changeset
10 main(unsigned long long speid,
b03a4d3565c0 *** empty log message ***
gongo
parents:
diff changeset
11 unsigned long long argc, unsigned long long argv)
b03a4d3565c0 *** empty log message ***
gongo
parents:
diff changeset
12 {
b03a4d3565c0 *** empty log message ***
gongo
parents:
diff changeset
13 CellScheduler *manager;
b03a4d3565c0 *** empty log message ***
gongo
parents:
diff changeset
14
242
8382f0f8c0b4 dma_wait
e065746@localhost.localdomain
parents: 212
diff changeset
15 //const unsigned ls_size = (unsigned)&argc;
8382f0f8c0b4 dma_wait
e065746@localhost.localdomain
parents: 212
diff changeset
16 //unsigned code_size = (unsigned)&_end;
8382f0f8c0b4 dma_wait
e065746@localhost.localdomain
parents: 212
diff changeset
17 //unsigned heap_size = ls_size - code_size;
94
588ab5f0e659 *** empty log message ***
gongo
parents: 81
diff changeset
18
109
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents: 94
diff changeset
19 __debug(" ls_size:%10d bytes\n", ls_size);
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents: 94
diff changeset
20 __debug("code_size:%10d bytes\n", code_size);
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents: 94
diff changeset
21 __debug("heap_size:%10d bytes\n", heap_size);
94
588ab5f0e659 *** empty log message ***
gongo
parents: 81
diff changeset
22
637
5530fa36d42e not yet worked...
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 636
diff changeset
23 TaskManagerImpl *tm = new SpeTaskManagerImpl();
636
d433fc37587d Cell Simple Task compiled. but not worked.
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 621
diff changeset
24
81
b03a4d3565c0 *** empty log message ***
gongo
parents:
diff changeset
25 manager = new CellScheduler();
636
d433fc37587d Cell Simple Task compiled. but not worked.
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 621
diff changeset
26 manager->init(tm);
109
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents: 94
diff changeset
27 manager->id = (int)argc;
94
588ab5f0e659 *** empty log message ***
gongo
parents: 81
diff changeset
28
636
d433fc37587d Cell Simple Task compiled. but not worked.
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 621
diff changeset
29 tm->set_scheduler(manager);
619
0decff4e867b RenewTask removal
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 242
diff changeset
30
194
gongo@localhost.localdomain
parents: 193
diff changeset
31 spu_write_decrementer(0x7FFFFFFFU);
gongo@localhost.localdomain
parents: 193
diff changeset
32 unsigned int prof = spu_read_decrementer();
81
b03a4d3565c0 *** empty log message ***
gongo
parents:
diff changeset
33 manager->run();
212
gongo@localhost.localdomain
parents: 200
diff changeset
34
194
gongo@localhost.localdomain
parents: 193
diff changeset
35 prof -= spu_read_decrementer();
gongo@localhost.localdomain
parents: 193
diff changeset
36
200
10ad99550ee8 fix run_draw
gongo@localhost.localdomain
parents: 194
diff changeset
37 //printf("%f\n", prof/79800000.0f*1000.0f);
10ad99550ee8 fix run_draw
gongo@localhost.localdomain
parents: 194
diff changeset
38
81
b03a4d3565c0 *** empty log message ***
gongo
parents:
diff changeset
39 manager->finish();
b03a4d3565c0 *** empty log message ***
gongo
parents:
diff changeset
40
b03a4d3565c0 *** empty log message ***
gongo
parents:
diff changeset
41 return 0;
b03a4d3565c0 *** empty log message ***
gongo
parents:
diff changeset
42 }