Пример #1
0
int recursiveFunction(int n) {
  if (n == 0) {
    return 2;
  } else if (n == 1) {
    return 2;
  } else {
    return recursiveFunction(n - 1) + (recursiveFunction(n - 2) / 2);
  }
}
Пример #2
0
void recursiveFunction(int depth) {
    rmt_BeginCPUSample(recursive, RMTSF_Recursive);
    if (depth < 5) {
        recursiveFunction(depth + 1);
    }
    rmt_EndCPUSample();
}
Пример #3
0
double delay() {
    int i, end;
    double j = 0;

    rmt_BeginCPUSample(delay, 0);
    for( i = 0, end = rand()/100; i < end; ++i ) {
        j += sin(i);
    }
    recursiveFunction(0);
    aggregateFunction();
    aggregateFunction();
    aggregateFunction();
    rmt_EndCPUSample();
    return j;
}
Пример #4
0
int main(int argc, char **argv) {
  if (argc != 2) {
    fprintf(stderr, "Usage: %s n\n", argv[0]);
    exit(1);
  }
  int n = atoi(argv[1]);

  time_t start, end;
  start = time(NULL);
  int result = recursiveFunction(n);
  end = time(NULL);

  int time = (end - start);

  printf("f(%d) = %d\n", n, result);

  printf("Computation Time: %d seconds\n", time);

  return 0;
}