Does the executable from the package have debugging info stripped away?
The Racket JIT needs some DWARF information to reconstruct the call
stack for backtraces and profiling on x86_64.

At Fri, 16 Nov 2012 13:18:54 -0200, Diogo F. S. Ramos wrote:
> I'm using Ubuntu 12.04 x86_64 and the statistical profiler is not
> returning a report with the procedures called during the execution of a
> thunk.
> 
> The package installed through the PPA (using apt-get) was
> `5.3.1-20121108~precise'.
> 
> I've attached a test program at the bottom of this message.
> 
> When the program is run using `racket --no-jit ...', a report is
> printed, with the procedures called, but when I run it using `racket
> ...', no procedure is listed.
> 
> $ racket fib-profile.rkt
> Profiling results
> -----------------
>    Total cpu time observed: 2514ms (out of 2592ms)
>    Number of samples taken: 50 (once every 50ms)
> 
> ====================================
>                          Caller
> Idx  Total    Self    Name+srcLocal%
>       ms(pct)  ms(pct)   Callee
> ====================================
> 
> $ racket --no-jit fib-profile.rkt
> Profiling results
> -----------------
>    Total cpu time observed: 86859ms (out of 86997ms)
>    Number of samples taken: 1728 (once every 50ms)
> 
> =============================================================
>                                    Caller
> Idx    Total         Self       Name+src               Local%
>         ms(pct)       ms(pct)      Callee
> =============================================================
> [1] 86859(100.0%)     0(0.0%)   profile-thunk12
> ...t/collects/profile/main.rkt:9:0
>                                    call-handled-body [2]100.0%
> -------------------------------------------------------------
>                                    profile-thunk12 [1]  100.0%
> [2] 86859(100.0%)     0(0.0%)   call-handled-body ...private/more-
> scheme.rkt:204:2
>                                    run [3]              100.0%
> -------------------------------------------------------------
>                                    call-handled-body [2]100.0%
> [3] 86859(100.0%)     0(0.0%)   run
> ...share/racket/collects/profile/main.rkt:29:2
>                                    temp1 [4]            100.0%
> -------------------------------------------------------------
>                                    run [3]              100.0%
> [4] 86859(100.0%)     0(0.0%)   temp1 /tmp/fib-profile.rkt:11:1
>                                    fib [5]              100.0%
> -------------------------------------------------------------
>                                    temp1 [4]             18.6%
>                                    fib [5]               81.4%
> [5] 86859(100.0%) 86859(100.0%) fib /tmp/fib-profile.rkt:5:0
>                                    fib [5]               81.4%
> -------------------------------------------------------------
> 
> I'm suspicious of the package because I can get a report using the JIT
> if I compile Racket from the git repository using the tag v5.3 and tag
> v5.3.1 and also with the released source distribution v5.3.1 from the
> website.
> 
> ;;; fib-profile.rkt
> #lang racket
> 
> (require profile)
> 
> (define (fib n)
>    (if (<= n 2)
>        1
>        (+ (fib (- n 1)) (fib (- n 2)))))
> 
> (profile-thunk
>   (thunk (fib 38))
>   #:repeat 4)
> ____________________
>   Racket Users list:
>   http://lists.racket-lang.org/users
____________________
  Racket Users list:
  http://lists.racket-lang.org/users

Reply via email to