[racket] Package installation VERY SLOW

From: Neil Van Dyke (neil at neilvandyke.org)
Date: Sat Aug 30 06:43:13 EDT 2014

FWIW, I just tried Racket 6.1 installing PLaneT "neil/csv:1:7", and two 
observations:

* I don't immediately know why, but my Racket 6.1 (command-line 
"racket", and DrRacket) doesn't build the documentation when installing 
the PLaneT package.  I can't look into this right now.

* The performance looks fine, for not building the documentation. (This 
is on a 6+ year-old 32-bit x86 GNU/Linux laptop with slow spinning hard 
drive, running a Racket I built from source.)

I haven't played with Racket 6.x much, since the main project I'm 
working on right now is still using Racket 5.3.4 (with Ryan's essential 
PostgreSQL SSL patch).

(Aside, so I don't give the wrong impression... That project doesn't 
have anything against 6.x.  When 6.0 came out, preliminary tests with it 
were fine, but we decided to take a wait&see, since the Racket 
architecture was being shaken up, and the timing wasn't great for us to 
evaluate stability and security.  Since then, I haven't heard of any big 
issues with 6.x, and I ran a development tree OK under 6.1 incidentally 
recently, but there hasn't yet been a need or good opportunity to switch 
production to 6.x.  For my personal and open source work, I use the 
latest released version of Racket.)

If anyone finds a problem with my open source packages, please CC my 
personal email address, so that I'm sure to see your message.

[~] rm -rf ~/.racket/6.1 ~/.racket/planet/300/6.1 
~/.racket/planet/300/packages/

[~] /usr/local/racket-6.1/bin/racket --version
Welcome to Racket v6.1.

[~] time /usr/local/racket-6.1/bin/racket -e '(begin (require (planet 
neil/csv:1:=7)) (csv->sxml "a,b"))'
'(*TOP* (row (col-0 "a") (col-1 "b")))

real    0m21.526s
user    0m18.365s
sys    0m2.744s

[~] time /usr/local/racket-6.1/bin/racket -e '(begin (require (planet 
neil/csv:1:=7)) (csv->sxml "a,b"))'
'(*TOP* (row (col-0 "a") (col-1 "b")))

real    0m0.660s
user    0m0.568s
sys    0m0.088s

[~]

Neil V.

George Neuner wrote at 08/25/2014 09:42 PM:
> Hi all,
>
> I'm running Racket under 64-bit Win7 Home on an i7 with 12GB of RAM.
>
> Just upgraded to 6.0.1 from 5.3.4.  I know it's a big leap and 6.1 is
> out already, but I tried 6.1 and quickly experienced several of those
> non-reproducible crashes I've been reading about in the lists.
>
> 6.0.1 is behaving itself, but installing new packages from PLaneT or
> migrating packages from the older version is taking HOURS ...
> virtually all of it spent processing .scrbl files.
>
> I have both 32 and 64 bit versions: doesn't matter which version I
> use, how much memory I give to Racket (in racket-prefs.rktd), or
> whether I use raco from the command line or the GUI-based package
> manager.
>
> Example: trying to install *just* Neil's CSV:2:0 took nearly an hour
> (yes, it has several dependencies).  With 64-bit Racket configured for
> 3GB, memory use spiked over 1.9GB according to Process Explorer.  And
> that was the *fastest* installation ... reducing the memory limit
> below 2GB just slows it down.
> [I didn't try running the 32-bit version with more than 1.5GB, but it
> behaved the same way ... reducing the memory limit just slowed it
> down.]
>
> For giggles I tried migrating CSV:1:7 (which has a single dependency
> not shared with 2:0) from 5.3.4.  That still took almost 16 minutes,
> and again nearly all of it processing some .scrbl file.  For more
> giggles, I nuked the PLaneT cache so as to start over: same 16 minutes
> for fresh install of 1:7.
>
> For comparison, 5.3.4 installs CSV:1:7 fresh in under 3 minutes.
>
>
>
> ???  Is anyone else running 6.x on Windows?  I can't figure out what,
> if anything, I'm doing wrong.
>
> Subjectively, 6.0.1 feels sluggish compared to 5.3.4 (with same memory
> limits), but I haven't gotten to the point where I can objectively
> test much because a lot of my programs depend on external packages.
> Based on the few I have tried to install/migrate so far, Halloween may
> be past before I am able to do any real work with 6.0.1.
>
> George
>
> ____________________
>    Racket Users list:
>    http://lists.racket-lang.org/users
>


Posted on the users mailing list.