[racket] tool performance: Windows vs Linux

From: George Neuner (gneuner2 at comcast.net)
Date: Sun Dec 21 23:20:36 EST 2014

Hi Neil,

On 12/21/2014 3:33 PM, Neil Van Dyke wrote:
> A few ideas not specific to Racket (pardon if you already thought of 
> these):
> * Does the Linux kernel have the files in cache, but Windows does not?

When I compile on Linux, typically I have just (or very recently) 
uploaded the files via SCP.  When I do it on Windows, I typically have 
the files open in DrRacket and/or UltraEdit and have just saved them.

I know Linux and Windows handle file caching differently, but I don't 
know all the details.  However, on Linux, racket and raco start just as 
fast the first time after reboot as they do the 23rd time.  On Windows, 
likewise it makes no difference - they are uniformly slow(er) to start 
and raco is slower to run.  You'd think even on Windows it would start 
faster the 2nd time.

My application runs as a boot time service on Linux, but always as a 
linked executable ... when I run racket or raco, typically it's days 
since the last use.

> * Are other processes using lots of CPU or disk on Windows?
4th gen i7 - it's a struggle to get the CPU loaded and generally I'm not 
doing anything else when I compile.  Disk always shows a bit of 
background activity, but I have big consumers like file indexing turned off.

> * Is the Windows system swapping to disk, but Linux one not?
Linux is running under VMware on Windows.  The VM RAM is fully resident, 
but the disk is a file on the Windows host.  However, it generally isn't 
doing anything unless I'm running a test.

Windows is configured to page if necessary, but even with all my stuff 
open and the Linux VM running, Windows still has ~5GB RAM available and 
shouldn't be paging much (if at all).  My pagefile is relatively small 
(1GB), growable, but it never grows.

My thought was that the difference maybe was due to memory management or 
some such.

> Neil V.

Posted on the users mailing list.