[MLton-user] Problem with Timer.checkCPUTimer on Sparc
Stephen Weeks
sweeks@sweeks.com
Mon, 10 Nov 2003 12:18:22 -0800
> But, here's a question: why would the gc rack up *any* system time
> *at all*? It never does a system call, does it?
Sure it does: mmap/munmap when resizing and moving the heap,
sigprocmask to manage signals, getrusage to measure resource usage,
and probably others I can't think of right now. You can use truss to
see them all. Oh yeah, and page faults (I'm not sure what those
count against, though). One problem that we have on SunOS that we
don't have on Linux is that there is no mremap call, so when the
runtime wants to grow the heap, it ends up mmap'ing a new space and
copying the heap there.