J'ai un programme Windows très parallèle qui utilise beaucoup de threads, des instructions de synchronisation de machine codées à la main, et des allocateurs de stockage parallèles sécurisés. Hélas, la gestion du stockage a un trou (pas un trou de synchonisation dans les allocateurs, je suis assez sûr) et je voudrais le trouver. Valgrind a été suggéré comme un bon outil pour trouver des erreurs de gestion de stockage. Une expérience ici avec Valgrind utilisé dans ces circonstances?Comment Valgrind gère-t-il les threads et les instructions de synchronisation au niveau machine?
2
A
Répondre
3
Valgrind ne fonctionne pas sous Windows, mais fonctionne avec les programmes Windows sous Wine sur Linux. Si votre programme fonctionne sous Wine, il a une chance décente de travailler avec valgrind. Voir winehq.org pour plus de détails.
La dernière version est assez bonne pour gérer toutes les instructions x86 32 bits. Il peut gérer les programmes qui créent de nombreux threads, ne vous attendez pas à ce qu'ils s'exécutent simultanément sous valgrind. Il n'exécutera qu'un seul thread à la fois, comme s'il était exécuté sur une seule machine principale.
Questions connexes
- 1. Exécution de valgrind dans la machine virtuelle
- 2. Synchronisation de deux threads
- 3. synchronisation entre la machine locale et virtuelle
- 4. mysqli_real_escape_string ET les instructions préparées?
- 5. Meilleures pratiques: synchronisation entre threads
- 6. jQuery sélectionner les éléments au 1er "niveau"
- 7. Comment fonctionnent les instructions préparées?
- 8. Synchronisation des threads COM avec .NET
- 9. Java: synchronisation des threads sur plusieurs serveurs
- 10. Comment les communs dbcp (et les autres pools de connexions) gèrent les instructions ouvertes et les resultsets?
- 11. Différence entre les opérations et les threads dans Cocoa
- 12. Comment indiquer à la machine JVM Hotspot si elle doit utiliser la synchronisation de threads à un ou plusieurs processeurs?
- 13. Vous recherchez des didacticiels sur les threads d'interface utilisateur et les threads de travail
- 14. Différences entre les instructions préparées et les instructions directes utilisant Oracle ODBC
- 15. Assurer la synchronisation des threads en SQL possible?
- 16. Comment détecter les violations de synchronisation avec Java
- 17. console Python intrus? et les threads multiplateformes
- 18. Comment faire glisser les calques en synchronisation
- 19. Threads au printemps
- 20. Comment utiliser les threads et la file d'attente dans VC++
- 21. Comment utiliser les clauses IN avec les instructions préparées mysqli
- 22. LINUX: Mise à niveau d'une machine de production
- 23. Comment nommer les objets de niveau métier?
- 24. Verrouillage et synchronisation dans DJango
- 25. Comment arrêter les threads en Java?
- 26. Comment paralléliser les threads dans C pthreads
- 27. si les instructions dans mysql?
- 28. XML - Les données au niveau racine sont invalides
- 29. Je veux connaître la différence entre les fonctions de bas niveau et les fonctions de haut niveau
- 30. Comment abandonner les threads/tâches CCR?