Mercurial > hg > Gears > GearsAgda
view src/parallel_execution/TimeImpl.cbc @ 382:f1d111e293c4
Enable Timer for bitonicSort
author | Tatsuki IHA <innparusu@cr.ie.u-ryukyu.ac.jp> |
---|---|
date | Mon, 24 Jul 2017 20:05:08 +0900 |
parents | a0a3301bac4d |
children | 57132ef16009 |
line wrap: on
line source
#include <stdio.h> #include <sys/time.h> #include "../context.h" Time* createTimeImpl(struct Context* context) { struct Time* time = &ALLOCATE_DATA_GEAR(context, Time)->Time; struct TimeImpl* timeImpl = new TimeImpl(); time->time = (union Data*)timeImpl; time->start = C_startTime; time->end = C_endTime; return time; } __code startTime(struct TimeImpl* time, __code next(...)) { struct timeval tv; gettimeofday(&tv, NULL); time->time = tv.tv_sec + (double)tv.tv_usec*1e-6; goto next(...); } __code endTime(struct TimeImpl* time, __code next(...)) { struct timeval tv; gettimeofday(&tv, NULL); printf("%0.6f\n", (tv.tv_sec+(double)tv.tv_usec*1e-6) - time->time); goto next(...); }