Console alternative de kcachegrind?
Kcachegrind roches et de mes outils préférés, toutefois, de temps en temps me manque la possibilité de l'exécuter dans le terminal(e.g à l'aide de ssh) sur le serveur distant.
Je sais qu'il est possible de configurer VNC ou X-transfert de serveur, mais il est assez maladroit, mais j'ai besoin de quelque chose de simple.
Est-il kcachegrind console alternative(e.g basé sur ncurses)?
Vous devez vous connecter pour publier un commentaire.
Vous pouvez obtenir des informations de base et des annotations de callgrind fichier de sortie (créé par
valgrind --tool=callgrind
) avec l'utilitaire de ligne de commandecallgrind_annotate
. (page de manuel section dans les docs). Pour les fichiers générés par cachegrind (valgrind --tool=cachegrind
), vous pouvez utiliser uncg_annotate
(section dans les docs). Ces utilitaires sont à construire par défaut avec valgrind lui-même.Une autre façon est de copier le programme et cache/callgrind fichiers de sortie sur votre ordinateur puis de les analyser avec local kcachegrind comme d'habitude. Mais de cette façon, il peut être difficile si votre machine n'avons pas unix, windows ou vous en cours d'exécution sur incompatible arc (kcachegrind peut appeler locale
objdump
pour obtenir des informations sur le programme).J'ai aussi envie de recommander des options de ligne de commande pour valgrind:
Vous pouvez également spécifier les tailles de cache pour cachegrind avec
--I1=32768,8,64 --D1=32768,8,64 --L2=3145728,12,64
Utilisation SSHFS pour monter le répertoire distant que vous travaillez dans (voir, par exemple,SSHFS instructions d'installation pour Ubuntu).
Puis il suffit de ssh et de
valgrind --tool=callgrind
avec les options que vous voulez dans le répertoire distant. Puisque vous avez ce répertoire monté en local, il suffit d'ouvrir les fichiers de données avec KCacheGrind, comme si vous étiez le débogage localement.webgrind est une interface web écrite en PHP qui traite de la sortie de l'extension XDebug (qui utilise le même format que callgrind), donc, il faut travailler avec callgrind de sortie (bien que je n'ai pas encore testé).
L'exécution de Valgrind/Callgrind à l'hôte distant semble être une bonne option. Ou, vous pourriez scp la sortie de Valgrind ou Callgrind à votre PC et lancez KCachegrind sur elle.
Si vous utilisez Emacs, vous pouvez déclencher sur l'hôte distant et faire comme indiqué ici, qui va vous donner un Emacs new'ish interface pour l'outil valgrind.
kcachegrind états dans son aide qu'il est un frontend pour cachegrind et callgrind.
cachegrind et callgrind sont des parties de la dernière version (3.5) de valgrind. Donc, télécharger valgrind de http://valgrind.org/downloads/current.html#current et de le construire. Run valgrind --help, il vous montre comment utiliser callgrind fonctionnalité.
Pour plus d'informations, j'ai besoin de savoir ce que vous voulez faire.
run and collect information
pas, mais pas unview the result
pour callgrind & cachegrind