OpenMP C ++ - Como paralelizar esta função?
Eu gostaria de paralelizar esta função, mas eu sou novo com mp aberto e ficaria grato se alguém pudesse me ajudar:
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;
}
}
Eu não sei como fazer a paralelização corretamente por causa do loop duplo para, no momento, eu só pensei em fazer um:#pragma omp parallel for reduction(+:t)
Mas eu acho que não é a melhor maneira de obter a computação mais rápida através do openMp.
Agradeço antecipadamente,