0
感謝尋找在後如何計算時間爲cilk_spawn
我標杆一些的Cilk加代碼,並一直在尋找計算完成「重生」操作所需的時間。我只想計算產生spawn所需的時間,而不是計算fib()所需的時間。這可能嗎?
將放在下面的代碼工作的定時器如預期?如果我的想法是正確的,將用timer_start()和timer_stop()替換「// RRS」,完成工作?
#include <stdio.h>
#include <stdlib.h>
int fib(int n)
{
if (n < 2) return n;
else {
// RRS: Start timer t1 here ??
int x = cilk_spawn fib(n-1);
// RRS: Stop timer t1 here ??
int y = fib(n-2);
// RRS: Start timer t2 here ??
cilk_sync;
// RRS: Stop timer t2 here ??
return x + y;
}
}
int main(int argc, char *argv[])
{
int n = atoi(argv[1]);
int result = fib(n);
printf("Fibonacci of %d is %d.\n", n, result);
return 0;
}