On 13/01/2007, at 11:23 PM, Daniel Stenning wrote:
I experience something similar , but - on my 2Gig ram machine -
ONLY when I
choose to be running Elgato EyTV at the same time as RB in order to
watch
TV. This takes out around 800 mb from RAM, and RB in particular seems
particularly sensitive to this RAM "fight".
Yeah. I just defragged my disk because one of the most heavily
fragmented files was a vm file!
I will see how I go - subjectively things seem faster at present but
I am very conscious of experimenter bias.
I do wonder if part of the problem on OS/X is that the VM system
seems willing to dynamically allocate and in particular makes little
attempt to use contiguous space. Based on what I have read so far,
I'm prepared to believe the VM subsystems on Windows and Linux are
superior (VM on Windows XP dates back to NT which comes from VAX/VMS
which was very very good ).
On a laptop in particular, I suspect therefore this would hurt things
with huge vm requirements that don't do their own swapfile management
(I think most serious graphics apps do).
This leads me to wonder what the RB IDE's Locality of Reference is
like and what the fan-out of editing an RB class is in terms of the
numbers of objects created.
Maybe some of the factors differentiating the experience of people
include:
- amount of free space on their disk
- fragmentation of the disk, especially the vm files
- working pattern - do they hop between lots of classes
- use of multiple windows in the IDE.
One of the major strengths of C++ is you can very simply implement
your own memory allocators for a given class so things like tens of
thousands of small objects can be managed differently from being
general heap alloc. However, as all RB objects are visible in RB
space, I doubt such optimisations could be applied.
With the compiler/framework change in RB200x so that framework
objects now have virtual methods, maybe something else was lost
compared to RB5. I'm not criticising, just theorising that it may
have been a lot easier to have the framework perform well either
because of despatch or memory management or both.
Interesting posts on OS/X VM strategy & defragging
http://www.coty.ws/2003/07/annoyed_with_ma.html
http://creativebits.org/node/1596
http://www.macattorney.com/ts.html
http://www.macgeekery.com/gspot/2005-09/
manually_moving_the_swap_file (good discussion)
iDefrag - you can use the demo to inspect your state of fragmentation
and particularly the top files.
http://www.coriolis-systems.com/iDefrag-2.php
Amit Singh writes about fragmentation, using his hfsdebug tool and
actually recommends against defragging!
http://www.kernelthread.com/mac/apme/fragmentation/
regards
Andy
_______________________________________________
Unsubscribe or switch delivery mode:
<http://www.realsoftware.com/support/listmanager/>
Search the archives of this list here:
<http://support.realsoftware.com/listarchives/lists.html>