annotate TaskManager/kernel/ppe/Threads.h @ 2054:2e7a6f40672f draft

add param(4) in FileMapReduce.cc
author masa
date Fri, 29 Jan 2016 15:56:28 +0900
parents f73ca57cdc81
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
817
c7d737993da7 add CpuThreads.cc
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
1 #ifndef INCLUDED_THREADS
c7d737993da7 add CpuThreads.cc
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
2 #define INCLUDED_THREADS
c7d737993da7 add CpuThreads.cc
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
3
c7d737993da7 add CpuThreads.cc
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
4 #include <pthread.h>
1179
5393bebe0956 CpuThreads update
Daichi TOMA
parents: 899
diff changeset
5 #include "base.h"
5393bebe0956 CpuThreads update
Daichi TOMA
parents: 899
diff changeset
6 #include "types.h"
1581
8ee897303cd0 fix multi_dimention
Shohei KOKUBO <e105744@ie.u-ryukyu.ac.jp>
parents: 1561
diff changeset
7 #include "TaskList.h"
817
c7d737993da7 add CpuThreads.cc
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
8
1877
f73ca57cdc81 add ppe wait semaphore to avoid ppe busy wait
Kohagura
parents: 1639
diff changeset
9 class Sem;
817
c7d737993da7 add CpuThreads.cc
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
10
c7d737993da7 add CpuThreads.cc
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
11 class Threads {
c7d737993da7 add CpuThreads.cc
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
12 public:
895
b662e9dd26b0 add alignment of classes in SPU
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 824
diff changeset
13 BASE_NEW_DELETE(Threads);
b662e9dd26b0 add alignment of classes in SPU
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 824
diff changeset
14
817
c7d737993da7 add CpuThreads.cc
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
15 /* constructor */
824
a75ccd570a57 Thread.h fix?
yutaka@localhost.localdomain
parents: 818
diff changeset
16 Threads(int num = 1) {};
a75ccd570a57 Thread.h fix?
yutaka@localhost.localdomain
parents: 818
diff changeset
17 virtual ~Threads() {};
817
c7d737993da7 add CpuThreads.cc
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
18
c7d737993da7 add CpuThreads.cc
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
19 /* functions */
1191
bd4a27ae2524 success run to ballbound
Daichi TOMA <e085740@ie.u-ryukyu.ac.jp>
parents: 1185
diff changeset
20 virtual void init() = 0;
817
c7d737993da7 add CpuThreads.cc
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
21 virtual int get_mail(int speid, int count, memaddr *ret) = 0; // BLOCKING
c7d737993da7 add CpuThreads.cc
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
22 virtual int has_mail(int speid, int count, memaddr *ret) = 0; // NONBLOCK
c7d737993da7 add CpuThreads.cc
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
23 virtual void send_mail(int speid, int num, memaddr *data) = 0; // BLOCKING
1499
622a7d053537 cpu id etc
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 1191
diff changeset
24 virtual void add_output_tasklist(int command, memaddr buff, int alloc_size) = 0;
622a7d053537 cpu id etc
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 1191
diff changeset
25 virtual int is_gpu(int cpuid) { return 0; }
1639
9126622f75df fix spe_running
Yuhi TOMARI <yuhi@cr.ie.u-ryukyu.ac.jp>
parents: 1614
diff changeset
26 virtual int spawn_task(int cpu_num, TaskListPtr p) = 0;
1877
f73ca57cdc81 add ppe wait semaphore to avoid ppe busy wait
Kohagura
parents: 1639
diff changeset
27 virtual void set_mail_waiter(Sem *w) = 0;
817
c7d737993da7 add CpuThreads.cc
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
28 /* variables */
c7d737993da7 add CpuThreads.cc
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
29 pthread_t *threads;
c7d737993da7 add CpuThreads.cc
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
30 int cpu_num;
899
1b9418af3127 minor fix..
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 895
diff changeset
31 } ;
817
c7d737993da7 add CpuThreads.cc
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
32
c7d737993da7 add CpuThreads.cc
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
33 #endif