2

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?

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