Dimensione: 1667
Commento:
|
Dimensione: 2169
Commento: piccola correzione
|
Le cancellazioni sono segnalate in questo modo. | Le aggiunte sono segnalate in questo modo. |
Linea 1: | Linea 1: |
## page was renamed from MatLab | |
Linea 4: | Linea 3: |
[[BR]] | |
Linea 6: | Linea 6: |
Valgrind is a suite of tools for debugging and profiling programs. There are three tools: a memory error detector, a time profiler, and a space profiler. | = Introduzione = |
Linea 8: | Linea 8: |
For debugging purposes, the memory error detector is a handy tool. | '''Valgrind''' è una suite costituita da strumenti per il ''debugging'' e da programmi di ''profiling''. Ci sono tre strumenti: |
Linea 10: | Linea 10: |
= Memory error detection = | * un '''rilevatore di errori di memoria''': ideale per la ricerca automatica dei ''segmentation faults'', degli errori sul bus e nella memoria, traccia l'uso di tutti i singoli bit nell'ambito dell'esecuzione di un programma e segnala le anomalie; il programma è in grado di scorgere se la memoria è usata prima di assumere un determinato valore, se fallata o usata due volte; |
Linea 12: | Linea 12: |
The most important of these is the memory error detector, which tracks the usage of every single bit in a program, and warns if there's something suspicious. Valgrind can detect if memory is used before it has a value, memory is leaked, or memory is used twice. | * un '''time profiler'''; |
Linea 14: | Linea 14: |
This makes it ideal for tracking down segmentation faults, bus errors, and general memory leaks. | * uno '''space profiler'''. |
Linea 16: | Linea 16: |
Please ensure you have packages with debug symbols installed. You can do this by following the instructions at DebuggingProgramCrash. | Riguardo il ''debugging'', il rilevatore di errori di memoria è uno strumento molto pratico. |
Linea 18: | Linea 18: |
1. Make sure Valgrind is installed. {{{ sudo apt-get install valgrind }}} 1. Remove any old Valgrind logs: {{{ |
= Preparativi = Prima di procedere assicurarsi di avere installato i pacchetti con i simboli del [:Debug:debug]. = Installazione = Per installare il programma è sufficiente digitare [:InstallareProgrammi:installare il pacchetto] ''valgrind''. Terminata l'installazione non resta che rimuovere i log obsoleti. Digitare il seguente comando: {{{ |
Linea 24: | Linea 30: |
1. Start the program under control of `memcheck`: {{{ | = Avvio del programma e preparazione del materiale per il bug report = Per avviare il programma sotto il controllo di '''memcheck''' digitare il seguente comando: {{{ |
Linea 27: | Linea 37: |
1. The program will start. Perform any actions necessary to reproduce the crash 1. Package up the log files (no need if there is only one): {{{ |
Una volta avviato il programma si potrà compiere qualsiasi azione necessaria per riprodurre il ''crash'', dunque non resterà che compattare i file di log in un archivio [:FormatiDiCompressione:compresso] con il seguente comando: {{{ |
Linea 31: | Linea 42: |
1. Attach the complete output from Valgrind, contained in valgrind-logs-<program>.tar.gz, in your bug report. | Ora sarà possibile allegare nel ''bug report'' l'output completo di '''valgrind''', contenuto nel file `valgrind-logs-<program>.tar.gz`. = Ulteriori risorse = * [https://wiki.ubuntu.com/Valgrind Documento originale] ---- CategoryProgrammazione |
Indice:BRTableOfContents |
Introduzione
Valgrind è una suite costituita da strumenti per il debugging e da programmi di profiling. Ci sono tre strumenti:
un rilevatore di errori di memoria: ideale per la ricerca automatica dei segmentation faults, degli errori sul bus e nella memoria, traccia l'uso di tutti i singoli bit nell'ambito dell'esecuzione di un programma e segnala le anomalie; il programma è in grado di scorgere se la memoria è usata prima di assumere un determinato valore, se fallata o usata due volte;
un time profiler;
uno space profiler.
Riguardo il debugging, il rilevatore di errori di memoria è uno strumento molto pratico.
Preparativi
Prima di procedere assicurarsi di avere installato i pacchetti con i simboli del [:Debug:debug].
Installazione
Per installare il programma è sufficiente digitare [:InstallareProgrammi:installare il pacchetto] valgrind.
Terminata l'installazione non resta che rimuovere i log obsoleti. Digitare il seguente comando:
rm valgrind.log.*
Avvio del programma e preparazione del materiale per il bug report
Per avviare il programma sotto il controllo di memcheck digitare il seguente comando:
G_SLICE=always-malloc G_DEBUG=gc-friendly valgrind -v --tool=memcheck --leak-check=full --num-callers=40 --log-file=valgrind.log <program> <arguments>
Una volta avviato il programma si potrà compiere qualsiasi azione necessaria per riprodurre il crash, dunque non resterà che compattare i file di log in un archivio [:FormatiDiCompressione:compresso] con il seguente comando:
tar -zcf valgrind-logs-<program>.tar.gz valgrind.log.*
Ora sarà possibile allegare nel bug report l'output completo di valgrind, contenuto nel file valgrind-logs-<program>.tar.gz.
Ulteriori risorse
[https://wiki.ubuntu.com/Valgrind Documento originale]