OpenMP C ++ - Wie diese Funktion parallelisieren?

Ich würde diese Funktion gerne parallelisieren, aber ich bin neu bei OpenMP und wäre dankbar, wenn mir jemand helfen könnte:

void my_function(float** A,int nbNeurons,int nbOutput, float* p, float* amp){
   float t=0;
   for(int r=0;r<nbNeurons;r++){
      t+=p[r];
   }

   for(int i=0;i<nbOutput;i++){
      float coef=0;
      for(int r=0;r<nbNeurons;r++){
       coef+=p[r]*A[r][i];
      }
   amp[i]=coef/t;
   }
}

Ich weiß nicht, wie ich es richtig parallelisieren soll, da ich im Moment nur darüber nachgedacht habe, Folgendes zu tun:#pragma omp parallel for reduction(+:t)

Aber ich denke, es ist nicht der beste Weg, das Computing durch openMp schneller zu machen.

Danke im Voraus,

Antworten auf die Frage(1)

Ihre Antwort auf die Frage