/*
 * $Id: README,v 1.5 2008/10/20 10:02:01 gongo Exp $
 */

- 

Task ǿ Task 롣
ʸ塢줿 Task  RenewTask Ȥ


-------------------------------------
Task 
-------------------------------------

  HTaskPtr create_task(int TASK_ID);

 PPE ǻȤ

  manager->create_task(id);

ƱȤǤʲδؿƱͤǤ

  add_inData(), add_outData(), add_input()

Task Ǥδؿ˥ݤϡ

  smanager->create_task, smanager->add_inData,

Ȥ褦ˡsmanager ƤӽФƤ
ϡPPE Ǥ TaskManager ƱǤ


   SPU ϻȤޤ...

-------------------------------------
RenewTask Ԥ
-------------------------------------

TaskA : PPE 
TaskB : TaskA 

äȤ롣

ΤȤTaskA λǡPPE ¦ TaskA λפΤǤ
ˤäƤϡTaskB λޤԤäơ TaskA λ
ΤȻפޤȤ

  HTaskPtr taskB = smanager->create_task(TASK_B);
  taskB->spawn();


-------------------------------------
RenewTask ¹ԤޤǤλ
-------------------------------------

SPE ǻ֤η¬ԤݡSPU Decrementer ȤˡŪ餷
./spe/SpeProfile.cc ǤΥ롼Ƥޤ

  SpeProfile *profile = new SpeProfile;

ǥ֥Ȥ塢¬ꤷϰϤκǽ

  profile->ProfStart();

¬κǸϰϤ

  profile->ProfStop();

η̤ɽ

  profile->ProfPrint();

Ȥޤ


- ¹ˡ

./renew_task

- ¹

ήϡ

1. PPE  RenewStart ư
2. RenewStart  Renew1 ư
3. Renew1  Renew2 ư
4. Renew2  Renew3 ư
5. Renew3  Renew4 ư
6. Renew4 ǽλ

% ./renew_task

[PPE] Program Start

[PPE] Create Task : RenewStart

[SPE] ** running RenewStart
[SPE] Create Task : Renew1
[SPE] ** finish  RenewStart

SPE time by SPU Decrementer: 40392.515625
[SPE] ** running Renew1
[SPE] Create Task : Renew2
[SPE] ** finish  Renew1

SPE time by SPU Decrementer: 13483.305664
[SPE] ** running Renew2
[SPE] Create Task : Renew3
[SPE] ** finish  Renew2

SPE time by SPU Decrementer: 0.005163
[SPE] ** running Renew3
[SPE] Create Task : Renew4
[SPE] ** finish  Renew3

SPE time by SPU Decrementer: 0.005150
[SPE] ** running Renew4
[SPE] ** finish  Renew4


¬ñ̤ msec Ǥ
