2010-11-07 19 views
16

l'implémentation GNU de la bibliothèque C++ prend en charge un mode parallèle, expliqué here.libstdC++ mode parallèle: Qui l'utilise? Est-ce sûr? Des projets similaires?

  • Des expériences dans l'utilisation? Bons? Mauvais? Surtout en ce qui concerne la correction, mais aussi la performance.
  • Y a-t-il des projets «plus ou moins sérieux» qui l'utilisent? L'utilisez-vous avec le commutateur global de mise sous tension -D_GLIBCXX_PARALLEL ou l'utilisez-vous avec précaution pour activer manuellement des fonctions de parallélisation spécifiques telles que: __gnu_parallel::sort(v.begin(), v.end());?
  • Existe-t-il des projets Open Source similaires? Signification: une parallélisation plus facile qu'avec openMP.

Merci pour vos expériences.

Sascha

+1

Je pense que vous pourriez obtenir vos réponses si vous demandez à la liste de diffusion [email protected], voir http://gcc.gnu.org/lists.html –

Répondre

3

réponse Trop tard, mais:

Je songerais sérieusement Intel TBB. Une chose que j'ai notée manquante du mode parallèle standard C++ est les conteneurs parallèles. Les conteneurs TBB ne suivent pas l'interface des conteneurs standard C++, mais ils fournissent justifications pour cela. En outre, TBB a un certain nombre d'exemples et de modèles de conception.

+0

TBB et le mode parallèle gnu sont des choses trop différentes. Alors que vous obtenez (presque) 100 fonctions STL écrites en parallèle gratuitement, vous ne l'obtiendrez pas en TBB mais vous devrez le coder vous-même (seulement des fonctions évidentes comme std :: sort). Si vous savez utiliser les fonctions STL, c'est vraiment une bonne chose pour la parallélisation. D'un autre côté, vous obtenez des conteneurs parallèles dans TBB. – eci