Come faccio a profilo in DrScheme?
-
21-08-2019 - |
Domanda
Come faccio a profiling dei miei funzioni utilizzando DrScheme?
(require profile)
(define (factorial n)
(cond
((= n 1) 1)
(else (* n (factorial (- n 1))))))
(profile factorial)
I rendimenti di codice di cui sopra
Profiling results
-----------------
Total cpu time observed: 0ms (out of 0ms)
Number of samples taken: 0 (once every 0ms)
====================================
Caller
Idx Total Self Name+srcLocal%
ms(pct) ms(pct) Callee
====================================
>
ho provato: - (profilo (fattoriale 100))
- (profilo fattoriale) (fattoriale 100)
Ma mi dà lo stesso risultato.
Che cosa sto facendo di sbagliato?
Soluzione
Non ho dimestichezza con il modulo di profile
in PLT Scheme, ma forse si deve chiamare in realtà la funzione?
(profile (factorial 1000))
Altri suggerimenti
Hai provato ad alzare N a (profilo (fattoriale N)) fino a quando c'è una pausa evidente?
(fattoriale 100) è il genere di cosa che un computer moderno dovrebbe essere in grado di fare in <1ms.
Basta sfiorare la documentazione mi fa sospettare la sua solo una questione di fattoriale essendo troppo veloce al profilo facilmente per questo caso.