10.2 In che modo questo profiler è differente dal precedente?

(Questa sezione esiste solo per ragioni storiche; il profiler descritto qui è quello della versione 1.1 di Python.)

I cambiamenti più consistenti dal vecchio profiler riguardano principalmente il maggior numero di informazioni ed il minor consumo di CPU.

In particolare:

Bugs removed:
Lo stack frame locale non viene più molestato, il tempo di esecuzione viene ora legato alle funzioni corrette.

Aumento della precisione:
Il tempo di esecuzione del profiler non dipende più dal codice dell'utente, esiste ora il supporto per la calibrazione in base alla piattaforma, e le letture dei file non vengono fatte dal profiler durante la profilatura (e legate al codice dell'utente!).

Aumento di velocità:
L'eccessivo costo in termini di CPU è stato ridotto da più di un fattore 2 (a volte anche 5), tutto ciò che deve essere caricato è il piccolo modulo del profiler, e durante la profilatura il modulo per la generazione dei risultati (pstats) non è necessario.

Supporto alle funzioni ricorsive:
I tempi cumulativi nelle funzioni ricorsive vengono calcolati correttamente; viene inoltre contato il numero di chiamate ricorsive effettuate.

Grande crescita nella generazione dei risultati UI:
Si possono raggruppare differenti esecuzioni del profiler per formare un rapporto più esteso; le funzioni che importano le statistiche accettano una lista arbitraria di file; il criterio di ordinamento viene ora basato sulle parole chiave (invece che su 4 opzioni intere); i risultati mostrano quali funzioni sono state analizzate, come pure a quale file del profilo si è fatto riferimento; il formato dell'output è stato migliorato.

Vedete Circa questo documento... per informazioni su modifiche e suggerimenti.