Parallele Schleifen in C++

Frage ich mich, ob es gibt ein Licht, geradlinig zu berechnen Schleifen wie for und range-basierte for-Schleifen parallel in C++. Wie würden Sie die Implementierung einer solchen Sache? Von Scala ich kenne die map -, filter-und foreach-Funktionen vielleicht wäre es auch möglich, führen Sie diese parallele? Gibt es eine einfache Möglichkeit, dies zu erreichen in C++.
Meine primäre plattform ist Linux, aber es wäre schön, wenn es funktioniert cross-plattform.

die Verwendung von threads ist eine gute option.
Ist es nicht wirklich teuer zu initialisieren threads?
Da im Vergleich zu den fork () - Aufruf. Threads sind nicht teuer, wie Sie sind, das teilen der Ressourcen aus dem Haupt-thread, außer Sie haben Ihren eigenen PC, Register-und stack.
Sie sind leicht im Gewicht.
Sie haben zu initialisieren threads; wie wäre Sie sonst wollen, um Parallelität zu erreichen? Ok, es gibt auch andere Möglichkeiten, wie z.B. Vektorisierung, aber es ist wahrscheinlich für Sie automatisch von einem compiler, wenn Sie bei der Optimierung baut.

InformationsquelleAutor Exagon | 2016-03-27

Schreibe einen Kommentar