Re: guile profiling / speeding up derivations on slow storage
Hi, On Thu, 01 Dec 2022 at 02:02, Csepp wrote: > First of all, I'm curious, how do other Guile developers profile code? Well, recently Ludo posted a heap profiler for Guile https://lists.gnu.org/archive/html/guile-user/2022-11/msg00012.html > Could we add a profiling flag for the CLI similar to the existing > debugging flags? I agree that some utilities would be welcome. And for instance, I am unable to use ,profile or ’statprof’. Well, maybe it could be interesting to collect various scenarios as proposed in this thread [1]. 1: https://yhetil.org/guix/87lenve3t2@gnu.org Cheers, simon
guile profiling / speeding up derivations on slow storage
I'd really like to speed up guix pull on my netbook and have been thinking about ways to do so for a while. First of all, I'm curious, how do other Guile developers profile code? Could we add a profiling flag for the CLI similar to the existing debugging flags? On a related note, has anyone tried to write a causal profile for Guile, or a similar Scheme implementation? One thing that definitely needs improvements is memory usage. That should speed things up a lot too, since it would result in less swapping on machines like mine. I would love to hear some tips on doing memory profiling on Guile from someone who has done that. I also looked into porting the ideas from Scalene to Guile, but haven't gotten far since I'm busy with uni and other Guix projects. I also thought about some possible ways of caching expensive computations that are not built using the store. Since Guix is mostly purely functional in practice, I wonder if we could take some notes from languages like Yatima. Or just use a plain old database for some operations that are currently done by Scheme. I know some of this must have already been discussed, but it's pretty hard to track it down, and I think the roadmap for performance improvements really should be centralized somewhere.