Re: [racket-users] Reducing Program Startup Time
Time to add a splash screen to distract from the pause! /Jens Axel 2016-12-06 7:19 GMT+01:00 Lehi Toskin : > On Monday, December 5, 2016 at 2:51:26 PM UTC-8, Dan Liebgold wrote: > > Ok, those tests aren't particularly illumating (at least they were easy!) > > > > Is your Racket distribution on a local drive? Network performance can > make a big difference. > > > > The Racket distribution I'm using is on my local drive. > > I'm beginning to think that this is just how things are with regard to the > current state of Racket. > > -- > You received this message because you are subscribed to the Google Groups > "Racket Users" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to racket-users+unsubscr...@googlegroups.com. > For more options, visit https://groups.google.com/d/optout. > -- -- Jens Axel Søgaard -- You received this message because you are subscribed to the Google Groups "Racket Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to racket-users+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.
Re: [racket-users] Reducing Program Startup Time
On Monday, December 5, 2016 at 2:51:26 PM UTC-8, Dan Liebgold wrote: > Ok, those tests aren't particularly illumating (at least they were easy!) > > Is your Racket distribution on a local drive? Network performance can make a > big difference. > The Racket distribution I'm using is on my local drive. I'm beginning to think that this is just how things are with regard to the current state of Racket. -- You received this message because you are subscribed to the Google Groups "Racket Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to racket-users+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.
Re: [racket-users] Reducing Program Startup Time
Ok, those tests aren't particularly illumating (at least they were easy!) Is your Racket distribution on a local drive? Network performance can make a big difference. We've also found that the minimal Racket distribution can be quite a bit quicker when pulling in packages outside the main collects directory there's racket code that enumerates files and the main distribution installs thousands of files you may not need. Even local SSD file systems have a noticeable lag doing that. On Monday, December 5, 2016 at 2:25:24 PM UTC-8, Lehi Toskin wrote: > These first two tests are with the lazy-require code. > > If I add '-c': > $ time racket -c -- main.rkt -V > Ivy 1.2 > > real 2m17.134s > user 2m13.646s > sys 0m2.394s > > With '-j': > $ time racket -j -- main.rkt -V > Ivy 1.2 > > real 0m4.369s > user 0m2.851s > sys 0m0.155s > > > These next two tests are with the usual require. > > With '-c': > $ time racket -c -- main.rkt -V > Ivy 1.2 > > real 3m58.587s > user 3m53.370s > sys 0m5.080s > > With '-j': > $ time racket -j -- main.rkt -V > Ivy 1.2 > > real 0m2.645s > user 0m2.526s > sys 0m0.115s -- You received this message because you are subscribed to the Google Groups "Racket Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to racket-users+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.
Re: [racket-users] Reducing Program Startup Time
On Monday, December 5, 2016 at 12:08:12 PM UTC-8, Dan Liebgold wrote: > Are you sure you have up to date .zo files for all your .rkt files? > > How's the timing if you add '-c' to your Racket commandline? How about '-j'? > These first two tests are with the lazy-require code. If I add '-c': $ time racket -c -- main.rkt -V Ivy 1.2 real2m17.134s user2m13.646s sys 0m2.394s With '-j': $ time racket -j -- main.rkt -V Ivy 1.2 real0m4.369s user0m2.851s sys 0m0.155s These next two tests are with the usual require. With '-c': $ time racket -c -- main.rkt -V Ivy 1.2 real3m58.587s user3m53.370s sys 0m5.080s With '-j': $ time racket -j -- main.rkt -V Ivy 1.2 real0m2.645s user0m2.526s sys 0m0.115s -- You received this message because you are subscribed to the Google Groups "Racket Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to racket-users+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.
Re: [racket-users] Reducing Program Startup Time
Are you sure you have up to date .zo files for all your .rkt files? How's the timing if you add '-c' to your Racket commandline? How about '-j'? On Sunday, December 4, 2016 at 4:11:51 PM UTC-8, Lehi Toskin wrote: > ... -- You received this message because you are subscribed to the Google Groups "Racket Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to racket-users+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.
Re: [racket-users] Reducing Program Startup Time
Dupéron Georges I did what you suggested and placed a displayln at the beginning. There's a wait time between when I execute the program and then everything happens all at once - the displayln occurs at the same time as when the GUI spawns. > On Sunday, December 4, 2016 at 10:05:23 AM UTC-8, Matthias Felleisen wrote: > > Also consider lazy require. That actually seems to make it run slower. $ time ./ivy -V Ivy 1.2 real0m2.414s user0m2.288s sys 0m0.119s versus $ time /usr/bin/ivy -V Ivy 1.2 real0m1.955s user0m1.796s sys 0m0.147s -- You received this message because you are subscribed to the Google Groups "Racket Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to racket-users+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.
Re: [racket-users] Reducing Program Startup Time
> On Dec 3, 2016, at 9:40 PM, Dupéron Georges > wrote: > > A few ideas: > > 1) Loading a lot of modules can be slow. You are already avoiding that by > using racket/base and racket/gui/base, so that's good, but it already takes > me 0.5s just to require these :-( . I don't know it there is much to do about > this. Also consider lazy require. -- You received this message because you are subscribed to the Google Groups "Racket Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to racket-users+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.
[racket-users] Reducing Program Startup Time
I have a GUI program (located here, for reference: https://github.com/lehitoskin/ivy.git ) I'm working on and I've found that the time it takes to go from clicking on the binary (or calling from CLI) to getting a fully loaded window takes about 2.5 ~ 3 seconds. What I would like is to get it down to 1 ~ 1.5 seconds. Now, I've done some more obvious things like using racket/base and racket/gui/base and calling require on every specific package I use, but it seems that isn't enough to get the startup times where I want them. Are there any other obvious or generalized steps I could do that might help? Perhaps moving some code into expansion instead of runtime (not exactly sure what or how to do that, though)? -- You received this message because you are subscribed to the Google Groups "Racket Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to racket-users+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.