Ich fange an, in OpenMP zu tauchen und ich bin mir nicht sicher, ob ich vollständig verstehe, wie firstprivate mit Arrays umgehen würde.Deklarieren von Arrays als firstprivate in OpenMP - C
Wenn ich Code wie:
int array[5] = {0, 1, 2, 3, 4};
int i;
#pragma omp parallel for firstprivate(array)
for (i=0; i<SOME_LENGTH; i++) {
// something using array as a right hand operand
}
Würde das Array zu jedem Thread kopiert werden? Was wäre, wenn es eine komplexere Struktur und keine einfache int
wäre?
Ist der Speicher selbst kopiert oder die Werte?
Auch wenn Sie mich in Richtung mehr Dokumentation zeigen können, würde ich es wirklich schätzen.
Danke!
Obwohl es ein Array ist? –