5 votes

Profiler C + Python (SWIG)

J'ai du code python avec des bibliothèques C, j'utilise SWIG pour brancher le tout. Je voudrais profiler les bibliothèques C.

Je les ai compilés avec -pg mais aucune sortie de profilage n'est générée... Existe-t-il une méthode pour profiler un tel code mixte ?

3voto

skyhisi Points 4853

Vous pouvez utiliser Valgrind avec le Callgrind module (intégré). Cela produira un fichier qui peut être affiché dans KCacheGrind, qui est disponible sur la plupart des distributions Linux.

Pour limiter le profilage à votre seul code, utilisez la fonction limiter les options de collecte Cela permettra à Python de fonctionner presque à pleine vitesse, et de ne profiler que votre code (qui fonctionnera environ 10 fois moins vite).

Note : Je n'ai pas essayé moi-même cette méthode avec Python, mais elle a fonctionné dans des situations similaires.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X