# HG changeset patch # User Shinji KONO # Date 1253526426 -32400 # Node ID 00fe05184a02db13bcf5b452316a72de5761ee29 # Parent 4bea73c83c35e05fde98c8f14d1b2d74ff99e569 Fix examples. diff -r 4bea73c83c35 -r 00fe05184a02 TaskManager/ChangeLog --- a/TaskManager/ChangeLog Mon Sep 21 18:03:31 2009 +0900 +++ b/TaskManager/ChangeLog Mon Sep 21 18:47:06 2009 +0900 @@ -84,6 +84,10 @@ addr で指定された PPU の Address が Hash にあるかどうか調べる。 無ければ dma_load する。そして指定された id を返す。 + 確保 API。set_rgb に相当。読み出さないで、hash entry だけ確保する。put しかしない部分用 + uint32 segment_id = smanager->get_null_segment(memaddr addr, *MemList m) + id は hash値に相当。 + 書き出しAPI、読みだしていること前提。 smanager->put_segment(wait_id); diff -r 4bea73c83c35 -r 00fe05184a02 example/HelloWorld/main.cc --- a/example/HelloWorld/main.cc Mon Sep 21 18:03:31 2009 +0900 +++ b/example/HelloWorld/main.cc Mon Sep 21 18:47:06 2009 +0900 @@ -28,7 +28,7 @@ } void -hello_init(void) +hello_init(TaskManager *manager) { HTask *hello; @@ -57,7 +57,7 @@ } int -TMmain(int argc, char *argv[]) +TMmain(TaskManager *manager, int argc, char *argv[]) { if (init(argc, argv) < 0) { return -1; @@ -67,7 +67,7 @@ // ppe/task_init.cc task_init(); - hello_init(); + hello_init(manager); return 0; } diff -r 4bea73c83c35 -r 00fe05184a02 example/MemList/main.cc --- a/example/MemList/main.cc Mon Sep 21 18:03:31 2009 +0900 +++ b/example/MemList/main.cc Mon Sep 21 18:47:06 2009 +0900 @@ -8,9 +8,6 @@ #include "MemList.h" #include "MemorySegment.h" -//extern void task_init(void); - -extern TaskManager *manager; const char *usr_help_str = "Usage: ./hello [-cpu spe_num] [-count N]\n\ -cpu Number of SPE (default 1) \n \ @@ -18,7 +15,7 @@ void -test1(MemList* active, MemList* freelist, uint32 size, uint32 count) +test1(TaskManager *manager, MemList* active, MemList* freelist, uint32 size, uint32 count) { /*! active からランダムに要素を取り出してそこの size の領域を書き潰す @@ -35,7 +32,7 @@ int -TMmain(int argc, char *argv[]) +TMmain(TaskManager *manager, int argc, char *argv[]) { uint32 size = 128; uint32 count = 64; @@ -56,7 +53,7 @@ assert(i==count); printf("count = %d\n", i); - test1(active, freelist, size, count); + test1(manager, active, freelist, size, count); delete active; delete freelist; diff -r 4bea73c83c35 -r 00fe05184a02 example/basic/main.cc --- a/example/basic/main.cc Mon Sep 21 18:03:31 2009 +0900 +++ b/example/basic/main.cc Mon Sep 21 18:47:06 2009 +0900 @@ -50,7 +50,7 @@ } void -twice_init(void) +twice_init(TaskManager *manager) { HTask *twice; @@ -97,7 +97,7 @@ } int -TMmain(int argc, char *argv[]) +TMmain(TaskManager *manager,int argc, char *argv[]) { if (init(argc, argv) < 0) { return -1; @@ -108,7 +108,7 @@ task_init(); for (int i = 0; i < task; ++i) { - twice_init(); + twice_init(manager); } return 0; diff -r 4bea73c83c35 -r 00fe05184a02 example/dependency_task/main.cc --- a/example/dependency_task/main.cc Mon Sep 21 18:03:31 2009 +0900 +++ b/example/dependency_task/main.cc Mon Sep 21 18:47:06 2009 +0900 @@ -14,7 +14,7 @@ -nodepend No Depenendcy"; void -run_start(void) +run_start(TaskManager *manager) { HTaskPtr t_exec; HTaskPtr t_print; @@ -61,14 +61,14 @@ } int -TMmain(int argc, char *argv[]) +TMmain(TaskManager *manager, int argc, char *argv[]) { if (init(argc, argv) < 0) { return -1; } task_init(); - run_start(); + run_start(manager); return 0; } diff -r 4bea73c83c35 -r 00fe05184a02 example/get_segment/main.cc --- a/example/get_segment/main.cc Mon Sep 21 18:03:31 2009 +0900 +++ b/example/get_segment/main.cc Mon Sep 21 18:47:06 2009 +0900 @@ -8,8 +8,6 @@ static int count = 1; -extern TaskManager *manager; - const char *usr_help_str = "Usage: ./hello [-cpu spe_num] [-count N]\n\ -cpu Number of SPE (default 1) \n\ -count Number of task is print \"Hello, World!!\""; @@ -28,7 +26,7 @@ } void -hello_init(void) +hello_init(TaskManager *manager) { HTask *hello; @@ -57,7 +55,7 @@ } int -TMmain(int argc, char *argv[]) +TMmain(TaskManager *manager, int argc, char *argv[]) { if (init(argc, argv) < 0) { return -1; @@ -67,7 +65,7 @@ // ppe/task_init.cc task_init(); - hello_init(); + hello_init(manager); return 0; } diff -r 4bea73c83c35 -r 00fe05184a02 example/mainMem/main.cc --- a/example/mainMem/main.cc Mon Sep 21 18:03:31 2009 +0900 +++ b/example/mainMem/main.cc Mon Sep 21 18:47:06 2009 +0900 @@ -8,8 +8,6 @@ static int count = 1; -extern TaskManager *manager; - const char *usr_help_str = "Usage: ./hello [-cpu spe_num] [-count N]\n\ -cpu Number of SPE (default 1) \n\ -count Number of task is print \"Hello, World!!\""; @@ -28,7 +26,7 @@ } void -hello_init(void) +hello_init(TaskManager *manager) { HTask *hello; @@ -57,7 +55,7 @@ } int -TMmain(int argc, char *argv[]) +TMmain(TaskManager *manager, int argc, char *argv[]) { if (init(argc, argv) < 0) { return -1; @@ -67,7 +65,7 @@ // ppe/task_init.cc task_init(); - hello_init(); + hello_init(manager); return 0; } diff -r 4bea73c83c35 -r 00fe05184a02 example/many_task/main.cc --- a/example/many_task/main.cc Mon Sep 21 18:03:31 2009 +0900 +++ b/example/many_task/main.cc Mon Sep 21 18:47:06 2009 +0900 @@ -19,7 +19,7 @@ static int length = 1200; // prototype -void TMend(void); +void TMend(TaskManager *); static double getTime(void) @@ -59,12 +59,10 @@ return 0; } -extern void sort_init(int, int); - unsigned int ts, te; int -TMmain(int argc, char *argv[]) +TMmain(TaskManager *manager, int argc, char *argv[]) { if (init(argc, argv) < 0) { return -1; @@ -72,7 +70,7 @@ task_init(); - sort_init(manager->get_cpuNum(), length); + sort_init(manager, manager->get_cpuNum(), length); st_time = getTime(); @@ -83,7 +81,7 @@ } void -TMend(void) +TMend(TaskManager *manager) { ed_time = getTime(); //show_data(); diff -r 4bea73c83c35 -r 00fe05184a02 example/many_task/sort.cc --- a/example/many_task/sort.cc Mon Sep 21 18:03:31 2009 +0900 +++ b/example/many_task/sort.cc Mon Sep 21 18:47:06 2009 +0900 @@ -11,9 +11,10 @@ static int last_block_num; static int half_block_num; static int last_half_block_num; +static TaskManager *manager; static void sort_restart(void *); -static void sort_start(void); +static void sort_start(); /** * 一つの block にある data の数が MAX_BLOCK_SIZE 超えないような @@ -55,7 +56,7 @@ } static void -sort_start(void) +sort_start() { if (--sort_count < 0) { return; @@ -121,8 +122,10 @@ } void -sort_init(int cpuNum, int length) +sort_init(TaskManager *manager_, int cpuNum, int length) { + manager = manager_; + data = (DataPtr)manager->allocate(sizeof(Data)*length); data_length = length; @@ -143,3 +146,4 @@ sort_start(); } + diff -r 4bea73c83c35 -r 00fe05184a02 example/many_task/sort.h --- a/example/many_task/sort.h Mon Sep 21 18:03:31 2009 +0900 +++ b/example/many_task/sort.h Mon Sep 21 18:47:06 2009 +0900 @@ -1,3 +1,5 @@ +#include "TaskManager.h" + // array position typedef struct Data { int index; @@ -5,4 +7,7 @@ int pad[2]; } Data, *DataPtr; +extern void sort_init(TaskManager *,int, int); + + #define MAX_BLOCK_SIZE (int)(1024*16/(sizeof(Data))) diff -r 4bea73c83c35 -r 00fe05184a02 example/post_function/main.cc --- a/example/post_function/main.cc Mon Sep 21 18:03:31 2009 +0900 +++ b/example/post_function/main.cc Mon Sep 21 18:47:06 2009 +0900 @@ -6,6 +6,8 @@ extern void task_init(void); +static TaskManager *manager; + static int count = 1; const char *usr_help_str = "Usage: ./post [-cpu spe_num] [-count N]\n\ @@ -41,7 +43,7 @@ } void -run_init(void) +run_init(TaskManager *manager) { HTaskPtr task; @@ -53,14 +55,17 @@ } int -TMmain(int argc, char *argv[]) +TMmain(TaskManager *manager_, int argc, char *argv[]) { + manager = manager_; + if (init(argc, argv) < 0) { return -1; } task_init(); - run_init(); + run_init(manager); return 0; } + diff -r 4bea73c83c35 -r 00fe05184a02 example/renew_task/ChangeLog --- a/example/renew_task/ChangeLog Mon Sep 21 18:03:31 2009 +0900 +++ b/example/renew_task/ChangeLog Mon Sep 21 18:47:06 2009 +0900 @@ -1,3 +1,6 @@ +2009-09-21 Shinji kono + SegV on Mac OS X (why?) + 2009-01-13 Wataru MIYAGUNI * add diff -r 4bea73c83c35 -r 00fe05184a02 example/renew_task/main.cc --- a/example/renew_task/main.cc Mon Sep 21 18:03:31 2009 +0900 +++ b/example/renew_task/main.cc Mon Sep 21 18:47:06 2009 +0900 @@ -4,7 +4,7 @@ #include "TaskManager.h" #include "Func.h" -extern void task_init(void); +extern void task_init(); const char *usr_help_str = "Usage: ./renew_task"; @@ -15,7 +15,7 @@ } static void -renew_init(void) +renew_init(TaskManager *manager) { HTask *renew; @@ -29,7 +29,7 @@ } int -TMmain(int argc, char *argv[]) +TMmain(TaskManager *manager, int argc, char *argv[]) { if (init(argc, argv) < 0) { return -1; @@ -41,7 +41,7 @@ printf("[PPE] Program Start\n\n"); - renew_init(); + renew_init(manager); return 0; } diff -r 4bea73c83c35 -r 00fe05184a02 example/share_task/main.cc --- a/example/share_task/main.cc Mon Sep 21 18:03:31 2009 +0900 +++ b/example/share_task/main.cc Mon Sep 21 18:47:06 2009 +0900 @@ -4,7 +4,7 @@ #include "TaskManager.h" #include "Func.h" -extern void task_init(void); +extern void task_init(); int *idata; int numtask = 1; @@ -15,7 +15,7 @@ -length Number of data (default DATA_NUM (Func.h))"; void -run_start(void) +run_start(TaskManager *manager) { HTaskPtr task_load; HTaskPtr task_exec; @@ -65,7 +65,7 @@ //---------main関数----------- int -TMmain(int argc, char *argv[]) +TMmain(TaskManager *manager, int argc, char *argv[]) { if (init(argc, argv) < 0) { @@ -74,7 +74,7 @@ task_init(); - run_start(); + run_start(manager); return 0; } diff -r 4bea73c83c35 -r 00fe05184a02 example/word_count/main.cc --- a/example/word_count/main.cc Mon Sep 21 18:03:31 2009 +0900 +++ b/example/word_count/main.cc Mon Sep 21 18:47:06 2009 +0900 @@ -9,7 +9,7 @@ #include "TaskManager.h" #include "Func.h" -extern void task_init(void); +extern void task_init(); const char *usr_help_str = "Usage: ./word_count [-cpu spe_num] [-file filename]\n"; @@ -67,7 +67,7 @@ void -run_start(char *filename) +run_start(TaskManager *manager, char *filename) { HTaskPtr t_exec; HTaskPtr t_print; @@ -164,12 +164,16 @@ filename = argv[i+1]; } } + if (filename==0) { + fprintf(stderr, usr_help_str); + exit(1); + } return filename; } int -TMmain(int argc, char *argv[]) +TMmain(TaskManager *manager, int argc, char *argv[]) { char *filename = 0; @@ -180,7 +184,7 @@ } task_init(); - run_start(filename); + run_start(manager, filename); return 0; }