unofficial mirror of guix-devel@gnu.org 
 help / color / mirror / code / Atom feed
* guile profiling / speeding up derivations on slow storage
@ 2022-12-01  1:02 Csepp
  2022-12-09 18:25 ` zimoun
  0 siblings, 1 reply; 2+ messages in thread
From: Csepp @ 2022-12-01  1:02 UTC (permalink / raw)
  To: guix-devel

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.


^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: guile profiling / speeding up derivations on slow storage
  2022-12-01  1:02 guile profiling / speeding up derivations on slow storage Csepp
@ 2022-12-09 18:25 ` zimoun
  0 siblings, 0 replies; 2+ messages in thread
From: zimoun @ 2022-12-09 18:25 UTC (permalink / raw)
  To: Csepp, guix-devel

Hi,

On Thu, 01 Dec 2022 at 02:02, Csepp <raingloom@riseup.net> 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.fsf@gnu.org

Cheers,
simon


^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2022-12-09 19:03 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-12-01  1:02 guile profiling / speeding up derivations on slow storage Csepp
2022-12-09 18:25 ` zimoun

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).