From: Bata on 14 Dec 2009 22:08 Hello, I am just learning to perform profiling on SBCL, and the statistical profiler, when run on my program, returns statistics on 2 different kinds of "+" (Addition) functions. There is one entry for sb-kernel:two-arg-+ and there is another entry for sb-vm::generic-+. I have tried looking for the differences between the two, but have so far been unsuccessful. Could someone provide me with a link for these (And other) SBCL functions? I tried looking in the manual, but didn't see any heading in there that seems close to what I am looking for. Thank you, Bata
From: Tamas K Papp on 15 Dec 2009 02:41 On Mon, 14 Dec 2009 22:08:36 -0500, Bata wrote: > Hello, > I am just learning to perform profiling on SBCL, and the statistical > profiler, when run on my program, returns statistics on 2 different > kinds of "+" (Addition) functions. > There is one entry for sb-kernel:two-arg-+ and there is another entry > for sb-vm::generic-+. I have tried looking for the differences between > the two, but have so far been unsuccessful. > Could someone provide me with a link for these (And other) SBCL > functions? I tried looking in the manual, but didn't see any heading in > there that seems close to what I am looking for. Have you tried your IDE's source lookup facilities? (of course you need SBCL's sources on your system). Eg in Emacs, M-. on sb-kernel:two-arg-+ takes me to (two-arg-+/- two-arg-+ + add-bignums), above that is the macro used to define the operation. That said, I have rarely needed to look at the source of these things in SBCL. Profiling, benchmarking and compiler hints [which you can get with (declaim (optimize (speed 3))), or similar declarations for individual functions] would be the first things I consider. HTH, Tamas
From: Bata on 15 Dec 2009 10:54
Tamas K Papp wrote: > > Have you tried your IDE's source lookup facilities? (of course you > need SBCL's sources on your system). Eg in Emacs, M-. on > sb-kernel:two-arg-+ takes me to (two-arg-+/- two-arg-+ + add-bignums), > above that is the macro used to define the operation. > > That said, I have rarely needed to look at the source of these things in > SBCL. Profiling, benchmarking and compiler hints [which you can get with > (declaim (optimize (speed 3))), or similar declarations for individual > functions] would be the first things I consider. > > HTH, > > Tamas Thanks, Bata |