#include "pputask.h" #include #include #include #include #include "spu/compute_task.h" extern spe_program_handle_t spu_main; compute_task_t task __attribute__ ((aligned (128))); int main(int argc, char** argv) { int n; if (argc >=2 ){ n = atoi(argv[1]); } struct timeval t0, t1; ppu_task_spe_num_set(n); ppu_task_debug_level_set(0); //ppu_task_physid_as_rank_set(); if (ppu_task_init(0, NULL, spu_main) < 0){ printf("Init failed\n"); return -1; } task.common.cmd = SAMPLE_TASK; task.common.size = sizeof(task); gettimeofday(&t0, NULL); ppu_task_run((task_t*)&task); gettimeofday(&t1, NULL); double avetime = (1000000.0*(t1.tv_sec - t0.tv_sec) + t1.tv_usec - t0.tv_usec)/NUMTESTS; printf("Barrier takes %f us\n", avetime); return 0; }