Mail Archives: djgpp-workers/2000/05/06/16:59:04
> From: "Mark E." <snowball3 AT bigfoot DOT com>
> Date: Sat, 6 May 2000 09:37:18 -0400
>
> > This is not the way to go. Does anyone have any advices how to speed it up? I
> > recall Alexandre Oliva starting discussion about making gc-page use simple
> > malloc(), what about that?
>
> If an implementation using malloc() isn't in the offing, it would seem we
> either need a mmap or vmalloc implemention
Another approach would be to profile the slow GC and see what takes
time there. It's possible that nobody worked on it seriously enough
because everybody uses the other techniques.
> so C++ and the other languages
> that are being converted to use GC can work in an acceptable amount of time.
Isn't the C compiler affected by this as well?
> I know an implementation of mmap that can be shared between other processes
> is impossible to implement with DPMI 0.9, but what about when memory is
> private to the process like gcc's GC?
How does GCC use `mmap', exactly?
> vmalloc can certainly be implemented,
> but at the cost of wasting space to have the returned pointer aligned to the
> page boundary.
I don't think you should be worried about wasting space, since `sbrk'
allocates memory in chunks of 64KB anyway.
However, if alignment is the only difference between `valloc' and
`malloc', I don't quite see what's the big difference between them
that would explain such a huge run-time penalty. Can someone explain?
- Raw text -