Ich habe ein hochparalleles Windows-Programm, das viele Threads, handcodierte Maschinensynchronisationsanweisungen und selbstgerollte, parallel-sichere Speicherzuordner verwendet. Leider hat die Speicherverwaltung ein Loch (kein Synchronisierungsloch in den Allokatoren, Ich bin mir ziemlich sicher) und ich würde es gerne finden. Valgrind wurde als ein gutes Tool zum Auffinden von Speicherverwaltungsfehlern vorgeschlagen. Irgendwelche Erfahrungen mit Valgrind unter diesen Umständen?Wie gut behandelt Valgrind Threads und Synchronisierungsanweisungen auf Maschinenebene?
2
A
Antwort
3
Valgrind läuft nicht unter Windows, aber es funktioniert mit Windows-Programmen, die unter Wine unter Linux laufen. Wenn Ihr Programm unter Wine läuft, hat es eine gute Chance, mit Valgrind zu arbeiten. Details siehe winehq.org.
Die neueste Version ist ziemlich gut im Umgang mit allen 32-Bit-x86-Anweisungen. Es kann Programme verarbeiten, die viele Threads erstellen, aber erwarte nicht, dass sie gleichzeitig unter valgrind ausgeführt werden. Es wird nur ein Thread gleichzeitig ausgeführt, als ob es auf einem einzelnen Core-Computer ausgeführt wurde.
Verwandte Themen
- 1. ESS behandelt nicht gut mit data.table und knitr
- 2. Valgrind auf FreeBSD
- 3. Umgebungsvariable auf Maschinenebene nach Einstellung in Powershell nicht verfügbar
- 4. Wie behandelt man mehrere Threads in einer Klasse?
- 5. Valgrind FPU Emulation
- 6. Valgrind und iOS SDK 4.2?
- 7. Wie valgrind effektiv
- 8. valgrind nicht funktioniert auf OS X 10.8
- 9. Void-Zeiger, Speicherbelegung und valgrind
- 10. Malloc, string Zeiger und Valgrind
- 11. Verwendet jemand valgrind und Qt?
- 12. Valgrind pthread_create Leiden
- 13. Sind Servlet-Threads und Connector-Threads gleich?
- 14. running valgrind
- 15. Stoi und Debugging mit valgrind und gdb
- 16. Wie behandelt C Pufferüberläufe?
- 17. Hat jemand eine Programmiersprache gesehen, die solche Threads behandelt?
- 18. std :: Thread.Join() SIGSEGV auf Mac OS unter Valgrind
- 19. Wie behandelt man UIDeviceOrientationFaceUp und UIDeviceOrientationFaceDown?
- 20. c Pthreads + valgrind = Speicherleck: warum?
- 21. möglich Datenrennen mit packaged_task und Threads
- 22. Scala-Futures und Threads
- 23. WCF-Komet und Threads
- 24. Unterscheiden zwischen Java-Threads und OS-Threads?
- 25. openssl/valgrind
- 26. Valgrind Prüfung auf Speicherleck in C
- 27. Ich bekomme Valgrind auf Windows 7
- 28. Verwenden von Valgrind auf einem Embedded-Projekt
- 29. Valgrind auf dem Mac El Capitan
- 30. Wie gut koexistieren Eclipse und Netbeans?