Mercurial > hg > Members > yutaka > manager
view ppe/Menu.cc @ 2:1e1b0d280427
commit
author | yutaka@localhost.localdomain |
---|---|
date | Wed, 07 Apr 2010 05:18:52 +0900 |
parents | dcd83cefb980 |
children | 8b4d6bf8c43d |
line wrap: on
line source
#include <stdio.h> #include <stdlib.h> #include "Menu.h" #include "Sys.h" #include "params.h" //headk_num と send_param_head の値を必ず返さないと、動作しない task_head_t* menu(int &list_num) { list_num = SPE_NUM; int all_task_num = SPE_NUM*1000; //int all_task_num = 1; //int task_size = MAX_DMA_SIZE; int task_size = 16*1024; //int in_size = (task_size - sizeof(task_head_t)) * all_task_num; //int out_size = (task_size - sizeof(task_head_t)) * all_task_num; int in_size = (task_size - sizeof(task_head_t)); int out_size = (task_size - sizeof(task_head_t)); task_head_t *list_head = (task_head_t*)allocate(sizeof(task_head_t)*list_num); int list_length = all_task_num / list_num; for (int i = 0; i < list_num; i++) { list_head[i].ea_out = 0; list_head[i].size_out = 0; list_head[i].pin_in = 0; list_head[i].pin_out = 0; task_t *tail = (task_t*)allocate(sizeof(task_t)); tail->head = &list_head[i]; tail->input = NULL; for (int j = 0; j < list_length; j++) { task_t *task = task_allocate(in_size, out_size); int *in = (int*)task->input; for (int k = 0; k < in_size / sizeof(int); k++) { in[k] = k; } int pin_in = 0; int pin_out = 0; set_pin(task, pin_in, pin_out); tail = add_list(tail, task); } } printf("return run\n"); return list_head; }