Andrew Lentvorski wrote:
what makes you think malloc doesn't? Malloc is an interface, the
implementation can be anything it wants.
Because malloc() cannot introspect what it is allocating. The JVM and
the .Net virtual machine maintain statistics internally as to allocation
patterns and lifetime duration.
Plus, malloc() isn't allowed to notice three 4K blocks, each with 100
bytes in the middle used, and move them all to the same 4K block and
free up the other two.
Disagree. First off performance isn't there. And performance still
matter, until you buy my hardware.
B) You have made this assertion before, and you *still* have no data to
back up your assertion. Worse, you are willing to throw away large
chunks of memory to get this "theoretical" performance without any data
as to how much performance that lack of memory throws onto the floor.
Plus, there's plenty of research that shows garbage collection is often
*faster* than malloc and free, even when it's "conservative", meaning it
doesn't move things around and doesn't track pointers (i.e., that you
could make it a drop-in replacement in C or C++).
--
Darren New / San Diego, CA, USA (PST)
Remember the good old days, when we
used to complain about cryptography
being export-restricted?
--
[email protected]
http://www.kernel-panic.org/cgi-bin/mailman/listinfo/kplug-lpsg