Phil, since you're hacking on the VM, you need to rebase any pending
changes on the new_gc branch. In the last few days in particular I
rewrote a lot of code completely and moved many things around (some
not GC-related) so there's a chance your code might need changes. I
plan on doing some even more refactorings before merging this into
master, so make sure you stay up to date.

This branch requires a new boot image, because I changed heap layout:
objects are now 16-byte aligned. To make a boot image that works with
the new VM, you must update as follows:

- Checkout and bootstrap master
- Switch to new_gc branch
- Before recompiling the VM or doing anything else, make a new boot
image using the new bootstrap code, from your current Factor:
"layouts" refresh
"bootstrap.image" refresh
... make-image
- Recompile the VM and bootstrap with the new image as usual

Anyone is welcome to try the new code. It still needs more testing and
optimization, but the major improvement you will notice is Factor
using less memory, almost 2x less. This should be good for
environments such as linodes in particular. The new mark/sweep/compact
algorithm is space-efficient and fast. At this point it is slower in
some cases then the old GC because I haven't tuned it enough yet, but
I expect to beat the old GC on all benchmarks when its done.

One more thing: I've cleaned up a lot of VM code to make better use of
C++; this builds on Phil's VM class work. I'd appreciate some code
review from C++ programmers. Outside of a classroom setting, the VM is
my first C++ project. :-)

Slava

------------------------------------------------------------------------------
Come build with us! The BlackBerry(R) Developer Conference in SF, CA
is the only developer event you need to attend this year. Jumpstart your
developing skills, take BlackBerry mobile applications to market and stay 
ahead of the curve. Join us from November 9 - 12, 2009. Register now!
http://p.sf.net/sfu/devconference
_______________________________________________
Factor-talk mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/factor-talk

Reply via email to