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

Reply via email to