I agree. Major GC always means "pause" in application execution. This will definitely hurt overall throughput & latency.
I think the goals of optimizing GC is to 1. reduce # of Major GC as much as possible; 2. reduce frequency of Minor GC as much as possible; In order to achieve Goal #1, application must be written and configured so that all objects are not living in memory for long time. This means that, # of objects coming into old generation pool should be minimal. Thanks. -----Jerry. On Wed, Jul 4, 2012 at 3:33 PM, Niels van Klaveren < niels.vanklave...@gmail.com> wrote: > Interesting settings Sam, > I'm curious about this one: > > > "-XX:MaxTenuringThreshold=0" ; Makes the full NewSize available to every > NewGC > ; cycle, and reduces the pause time by not > ; evaluating tenured objects. Technically, > this > ; setting promotes all live objects to the > older > ; generation, rather than copying > them. > > > That setting forces all new objects that survive a young scavenge to be > promoted to the old generation. Effectively switching off generational GC, > which is one of the main optimisations in performance GC memory management. > Since GC on the old generation is generally more expensive pause-wise, how > do you prevent that from becoming a problem ? > > On Tuesday, July 3, 2012 12:58:19 PM UTC+2, Sam Aaron wrote: >> >> Hi Bruce, >> >> at the bottom of this file you can see the options we use in Overtone to >> try and reduce latency (i.e. we're not so worried about throughput, but are >> trying to minimise the occurrence of long GC pauses) >> >> https://github.com/overtone/**overtone/blob/master/project.**clj<https://github.com/overtone/overtone/blob/master/project.clj> >> >> Sam >> >> --- >> http://sam.aaron.name >> >> On 1 Jul 2012, at 23:19, Bruce Durling wrote: >> >> > Clojurians, >> > >> > Interesting post here on different GC settings for Java 7. Does anyone >> > have any tips/experience about what settings have worked best for them >> > with clojure and under what circumstances? >> > >> > http://www.fasterj.com/**articles/oraclecollectors1.**shtml<http://www.fasterj.com/articles/oraclecollectors1.shtml> >> > >> > cheers, >> > Bruce >> > >> > -- >> > @otfrom | CTO & co-founder @MastodonC | mastodonc.com >> > >> > -- >> > You received this message because you are subscribed to the Google >> > Groups "Clojure" group. >> > To post to this group, send email to clojure@googlegroups.com >> > Note that posts from new members are moderated - please be patient with >> your first post. >> > To unsubscribe from this group, send email to >> > clojure+unsubscribe@**googlegroups.com<clojure%2bunsubscr...@googlegroups.com> >> > For more options, visit this group at >> > http://groups.google.com/**group/clojure?hl=en<http://groups.google.com/group/clojure?hl=en> >> >> -- > You received this message because you are subscribed to the Google > Groups "Clojure" group. > To post to this group, send email to clojure@googlegroups.com > Note that posts from new members are moderated - please be patient with > your first post. > To unsubscribe from this group, send email to > clojure+unsubscr...@googlegroups.com > For more options, visit this group at > http://groups.google.com/group/clojure?hl=en > -- You received this message because you are subscribed to the Google Groups "Clojure" group. To post to this group, send email to clojure@googlegroups.com Note that posts from new members are moderated - please be patient with your first post. To unsubscribe from this group, send email to clojure+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/clojure?hl=en