Example #1
0
float accum_ref (int k)
{
  int i;
  float tmp = 0.0;

  for (i = 0; i < N; i++)
    tmp += Pfun (i, k);

  return tmp;
}
float accum(int k)
{
    float tmp = 0.0;
    #pragma omp target update to(Q)
    #pragma omp target
    #pragma omp parallel for reduction(+:tmp)
    for(int i=0; i < N; i++)
        tmp += Pfun(i,k);
    return tmp;
}
Example #3
0
float accum (int k)
{
  int i;
  float tmp = 0.0;

  #pragma omp target map(tofrom:tmp)
    #pragma omp parallel for reduction(+:tmp)
      for (i = 0; i < N; i++)
	tmp += Pfun (i, k);

  return tmp;
}
Example #4
0
float accum_ref ()
{
  int i, k;
  float tmp = 0.0;

  for (i = 0; i < N; i++)
    {
      float tmp1 = 0.0;

      for (k = 0; k < M; k++)
	tmp1 += Pfun(i,k);

      tmp += tmp1;
    }

  return tmp;
}
Example #5
0
float accum ()
{
  int i, k;
  float tmp = 0.0;

  #pragma omp target
    #pragma omp parallel for reduction(+:tmp)
      for (i = 0; i < N; i++)
	{
	  float tmp1 = 0.0;

	  #pragma omp simd reduction(+:tmp1)
	    for (k = 0; k < M; k++)
	      tmp1 += Pfun(i,k);

	  tmp += tmp1;
	}

  return tmp;
}
Example #6
0
File: fork.c Project: fanteathy/mix
void callback(int (*Pfun)()){
    Pfun();
}