2010-11-07 3 views
16

Die GNU-Implementierung der C++ - Bibliothek unterstützt einen parallelen Modus, erklärt here.libstdC++ Parallelmodus: Wer benutzt es? Ist es sicher? Irgendwelche ähnlichen Projekte?

  • Irgendwelche Erfahrungen bei der Verwendung? Die guten? Schlechte? Vor allem hinsichtlich der Korrektheit, aber auch der Leistung.
  • Gibt es einige "mehr oder weniger ernsthafte" Projekte, die es benutzen?
  • Verwenden Sie es mit dem globalen Turn-on-Parallel-Schalter -D_GLIBCXX_PARALLEL oder verwenden Sie es vorsichtig mit manuell aktivieren bestimmte Parallelisierungsfunktionen wie: __gnu_parallel::sort(v.begin(), v.end());?
  • Gibt es ähnliche Open-Source-Projekte? Bedeutung: leichtere Parallelisierung als mit openMP.

Vielen Dank für Ihre Erfahrungen.

Sascha

+1

Ich denke, Sie könnten Ihre Antworten erhalten, wenn Sie an [email protected] Mailingliste fragen, siehe http://gcc.gnu.org/lists.html –

Antwort

3

Zu spät Antwort, aber:

Ich würde Intel TBB ernsthaft in Erwägung ziehen. Eine Sache, die ich im parallelen C++ - Parallelmodus vermisst habe, sind parallele Container. TBB-Container folgen nicht der Schnittstelle von C++ - Standardcontainern, stellen dafür jedoch justifications bereit. Außerdem hat TBB eine Reihe von Beispielen und Entwurfsmustern.

+0

TBB und GNU-Parallel-Modus sind zu verschiedene Dinge. Während Sie (fast)> 100 STL-Funktionen kostenlos parallel geschrieben bekommen, werden Sie es nicht in TBB bekommen, sondern müssen es selbst programmieren (nur offensichtliche Funktionen wie std :: sort). Wenn Sie wissen, wie man STL-Funktionen verwendet, ist dies eine gute Sache für die Parallelisierung. Auf der anderen Seite erhalten Sie einige parallele Container in TBB. – eci

Verwandte Themen