Earlier quoted context omitted.
> For non-GCed languages, you are allowed to use a memory pool of your choice (the C version uses the Apache Portable Runtime library), for GCed languages you are required to use the standard GC with the default settings (no adjustment of GC parameters permitted). This is apples and oranges. Doesn't that match with how a library would be used in the real world? A c library can create it's own memory pool but a GC one…
If I were to run a performance-critical application, I'd definitely tune the GC accordingly. It's why the JVM offers several garbage collectors in the first place, for example. Also, GCed languages aren't prevented from using memory pools, but often they are not part of their common libraries, because there's less need for them.
But you have to tune it for the performance of the whole application (AFAIK), you can't tune it for an individual algorithm like you can with c. It's a one size fits all approach.