2012-04-08 51 views
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; 
} 

回答

0

回答我的問題:

我能夠把一些計時器開始/停止在註釋行「// RRS」語句和計數時間產卵忠實。

謝謝關注。