Je veux paralléliser automatiquement le programme séquentiel au niveau du thread pour fonctionner sur les processeurs multicœurs . Je ne sais pas utiliser lvm ou openIMPACT ou d'autres compilateurs.can vous m'aider dans ce sujet?parallélisation automatique
Répondre
Vous souhaitez diviser votre programme séquentiel en un pipeline de tâches qui communiquent via des flux de données. En supposant par exemple un programme C ou C++, vous devrez réécrire manuellement l'application dans un réseau de tâches parallèles. Il existe différentes API pour vous aider à écrire les tâches et la communication. Le modèle formel qui correspond bien à ceci est celui de Kahn Process Networks (KPN).
De toute évidence, le véritable défi consiste à réécrire votre code pour exposer toutes les communications dans des flux de données explicites. Cela peut représenter beaucoup de travail en fonction de l'application. Pour la mise en œuvre, OpenMP prend en charge le parallélisme des tâches. Jetez un oeil à la vfTasks library (C/C++) pour une API de streaming efficace que vous pouvez facilement utiliser sur n'importe quelle architecture que vous avez en tête. (Disclaimer: Je suis l'un des auteurs).
- 1. Stratégies pour la parallélisation automatique
- 2. pratiques de programmation automatique amicale de parallélisation
- 3. C, pgcc - parallélisation automatique « non dénombrable »
- 4. Parallélisation BLAKE
- 5. parallélisation d'un bitmap
- 6. Parallélisation de os.walk()
- 7. Problème OpenMP et de parallélisation
- 8. OpenMP C algorithme de parallélisation
- 9. vectorisation vs parallélisation dans R
- 10. parallélisation L2S Entité de récupération
- 11. Parallélisation de nombreuses requêtes GET
- 12. Windows Azure: parallélisation du code
- 13. force d'auto-parallélisation VS 2012
- 14. L'utilisation du pointeur suivant n'est pas recommandée. Particulièrement pour aider à la parallélisation automatique
- 15. Parallélisation naïve dans un fichier .pbs
- 16. Parallélisation de la boucle en cython
- 17. HtmlAgility Pack Parallélisation VS Winforms HtmlDocument Vitesse
- 18. Parallélisation de certains liens LINQ vers XML
- 19. Mixage Boost FOREACH macro et parallélisation OpenMP
- 20. Perte de performance due à la parallélisation
- 21. ou d'éteindre Inspecter Numpy/SciPy parallélisation
- 22. Quel est le mécanisme recommandé de parallélisation des arbres d'expression?
- 23. Génération de nombres aléatoires et parallélisation C++/Qt
- 24. C, OpenMP: Comment mieux faire la parallélisation d'une triple boucle?
- 25. Parallélisation/threads dans une requête web en Scala/Java?
- 26. Utilisation de la parallélisation pour des boucles relativement grandes
- 27. VM pour Scheme avec prise en charge de la parallélisation
- 28. Quand la parallélisation simple n'offrira-t-elle pas une accélération?
- 29. Pourquoi la fonctionnalité de création de rapports de parallélisation automatique de Visual Studio 2012 Express fonctionne-t-elle uniquement avec Win32?
- 30. L'élagage automatique est-il automatique?
Il y a très peu de choses sur la parallélisation qui vient automatiquement ... plus de détails s'il vous plaît? – Crisfole
Je veux diviser un programme en plusieurs partitions et affecter chaque partition à un thread et exécuter des threads avec un modèle de pipeline. bien sûr avec inquiétude sur la dépendance entre les instructions du programme. – neda
Oubliez la dépendance des instructions, un problème plus fondamental est la dépendance des données. Avez-vous un grand ensemble de données que vous pouvez facilement partitionner en tranches, et que vous avez traitées séparément sans que les threads ne dépendent des données des autres? Si vous le faites, il y a de fortes chances que vous puissiez effectuer une parallélisation automatique (comme OMP, VC++ parallel_For). Dans quelle langue est-ce? –