windows - Parallelt tråde OpenMP valg

Indlæg af Hanne Mølgaard Plasc

Problem



Giv mig input, hvis mit valg af at bruge OpenMP er korrekt. Dette er min brugssag.
Vi har en Windows C ++-software, der udfører de samme store komplekse beregninger på et sæt indgange (hver er uafhængig og kan gøres uafhængigt af en tråd, hvor jeg planlægger at bruge OpenMP). Måden dette ville ske på, er en loop, der løber gennem indgange (ved hjælp af en for loop) og kalder en funktion med input som en parameter (det gør den komplekse beregning). Planlægger at bruge #pragma omp parallel for for at parallelisere for sløjfen. For nogle input kan vi beslutte ikke at beregne hele sagen og så vende tilbage fra funktionen i midten baseret på nogle kriterier (krav om at afslutte i midten for nogle tråde).


Hvad er ulemperne ved OpenMP? Hvorfor ville nogen ikke bruge OpenMP? Kan vi bruge det i en kommerciel software?

Bedste reference