annotate TaskManager/Cell/spe/main.cc @ 200:10ad99550ee8

fix run_draw
author gongo@localhost.localdomain
date Mon, 26 Jan 2009 14:27:45 +0900
parents 72dcf908ec52
children fe2cc32cd94d
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
94
588ab5f0e659 *** empty log message ***
gongo
parents: 81
diff changeset
14 const unsigned ls_size = (unsigned)&argc;
588ab5f0e659 *** empty log message ***
gongo
parents: 81
diff changeset
15 unsigned code_size = (unsigned)&_end;
588ab5f0e659 *** empty log message ***
gongo
parents: 81
diff changeset
16 unsigned heap_size = ls_size - code_size;
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
194
gongo@localhost.localdomain
parents: 193
diff changeset
26 spu_write_decrementer(0x7FFFFFFFU);
gongo@localhost.localdomain
parents: 193
diff changeset
27 unsigned int prof = spu_read_decrementer();
81
b03a4d3565c0 *** empty log message ***
gongo
parents:
diff changeset
28 manager->run();
194
gongo@localhost.localdomain
parents: 193
diff changeset
29 prof -= spu_read_decrementer();
gongo@localhost.localdomain
parents: 193
diff changeset
30
200
10ad99550ee8 fix run_draw
gongo@localhost.localdomain
parents: 194
diff changeset
31 //printf("%f\n", prof/79800000.0f*1000.0f);
10ad99550ee8 fix run_draw
gongo@localhost.localdomain
parents: 194
diff changeset
32
81
b03a4d3565c0 *** empty log message ***
gongo
parents:
diff changeset
33 manager->finish();
b03a4d3565c0 *** empty log message ***
gongo
parents:
diff changeset
34
b03a4d3565c0 *** empty log message ***
gongo
parents:
diff changeset
35 return 0;
b03a4d3565c0 *** empty log message ***
gongo
parents:
diff changeset
36 }