Am 17. Januar 2017 22:43:32 MEZ schrieb Antonio Gomes Rodrigues 
<[email protected]>:
>Hi,
>
>For your information I have ask to Kirk Pepperdine if he have already
>use
>JMeter with G1 GC to help us with the parameters.
>
>I am still waiting his answer

I think that tuning GC in the JVM is so specific to your usecase, that every 
advice is moot if it is not: it depends ;)

Regards,
Felix

>
>Antonio
>
>2017-01-17 20:34 GMT+01:00 Philippe Mouawad
><[email protected]>:
>
>> Hello Rainer,
>> Nice to see you back among us and Happy new year !
>>
>> Good catch , thanks
>> Regards
>>
>> On Tue, Jan 17, 2017 at 7:08 PM, Rainer Jung
><[email protected]>
>> wrote:
>>
>> > Hi there,
>> >
>> >
>> > Am 16.01.2017 um 22:27 schrieb [email protected]:
>> >
>> >> Author: pmouawad
>> >> Date: Mon Jan 16 21:27:21 2017
>> >> New Revision: 1779108
>> >>
>> >> URL: http://svn.apache.org/viewvc?rev=1779108&view=rev
>> >> Log:
>> >> Bug 60593 - Switch to G1 GC algorithm
>> >> Bugzilla Id: 60593
>> >>
>> >> Modified:
>> >>     jmeter/trunk/bin/jmeter
>> >>     jmeter/trunk/bin/jmeter.bat
>> >>     jmeter/trunk/xdocs/changes.xml
>> >>
>> >> Modified: jmeter/trunk/bin/jmeter
>> >> URL: http://svn.apache.org/viewvc/jmeter/trunk/bin/jmeter?rev=177
>> >> 9108&r1=1779107&r2=1779108&view=diff
>> >> ============================================================
>> >> ==================
>> >> --- jmeter/trunk/bin/jmeter (original)
>> >> +++ jmeter/trunk/bin/jmeter Mon Jan 16 21:27:21 2017
>> >> @@ -67,10 +67,7 @@ done
>> >>
>> >>  PRGDIR=`dirname "$PRG"`
>> >>
>> >> -# The following should be reasonably good values for most tests
>running
>> >> -# on Sun JVMs. Following is the analysis on which it is based. If
>it's
>> >> total
>> >> -# gibberish to you, please study my article at
>> >> -# http://www.atg.com/portal/myatg/developer?paf_dm=full&paf_
>> >> gear_id=1100010&detailArticle=true&id=9606
>> >> +#
>> >>  # Original page has disappeared, it is now only available at:
>> >>  # https://web.archive.org/web/20060614151434/http://www.atg.co
>> >> m/portal/myatg/developer?paf_dm=full&paf_gear_id=1100010&
>> >> detailArticle=true&id=9606
>> >>  #
>> >> @@ -90,36 +87,18 @@ PRGDIR=`dirname "$PRG"`
>> >>  # system's memory availability:
>> >>  HEAP="-Xms512m -Xmx512m"
>> >>
>> >> -# There's an awful lot of per-sample objects allocated during
>test run,
>> >> so we
>> >> -# need a large eden to avoid too frequent scavenges -- you'll
>need to
>> >> tune this
>> >> -# down proportionally if you modify the HEAP values above, below
>> example
>> >> is fine for 512m of Heap:
>> >> -# NEW="-XX:NewSize=128m -XX:MaxNewSize=128m"
>> >> -
>> >> -# This ratio and target have been proven OK in tests with a
>specially
>> >> high
>> >> -# amount of per-sample objects (the HtmlParserHTMLParser tests):
>> >> -# SURVIVOR="-XX:SurvivorRatio=8 -XX:TargetSurvivorRatio=50"
>> >> -
>> >> -# Think about it: trying to keep per-run objects in tenuring
>definitely
>> >> -# represents a cost, but where's the benefit? They won't
>disappear
>> before
>> >> -# the test is over, and at that point we will no longer care
>about
>> >> performance.
>> >> -#
>> >> -# So we will have JMeter do an explicit Full GC before starting a
>test
>> >> run,
>> >> -# but then we won't make any effort (or spend any CPU) to keep
>objects
>> >> -# in tenuring longer than the life of per-sample objects -- which
>is
>> >> hopefully
>> >> -# shorter than the period between two scavenges):
>> >> -#
>> >> -TENURING="-XX:MaxTenuringThreshold=2"
>> >> -
>> >> -CLASS_UNLOAD="-XX:+CMSClassUnloadingEnabled"
>> >> +#VERBOSE_GC="-verbose:gc -Xloggc:gc_jmeter_%p.log
>-XX:+PrintGCDetails
>> >> -XX:+PrintGCCause -XX:+PrintTenuringDistribution
>-XX:+PrintHeapAtGC
>> >> -XX:+PrintGCApplicationConcurrentTime -XX:+
>> PrintGCApplicationStoppedTime
>> >> -XX:+PrintGCDateStamps"
>> >>
>> >>  # Finally, some tracing to help in case things go astray:
>> >> -#DEBUG="-verbose:gc -XX:+PrintTenuringDistribution"
>> >> +GC_ALGO="-XX:+UseG1GC -XX:MaxGCPauseMillis=250
>-XX:G1ReservePercent=20"
>> >> +
>> >> +CLASS_UNLOAD="-XX:+CMSClassUnloadingEnabled"
>> >>
>> >
>> > I think CMS class unloading doesn't make sense in combination with
>G1.
>> CMS
>> > (concurrent Mark Sweep) is an alternative collector which can be
>used
>> > instead of G1. IMHO we should drop this variable ...
>> >
>> >  # Always dump on OOM (does not cost anything unless triggered)
>> >>  DUMP="-XX:+HeapDumpOnOutOfMemoryError"
>> >>
>> >>  SERVER="-server"
>> >>
>> >> -ARGS="$SERVER $DUMP $HEAP $NEW $SURVIVOR $TENURING $PERM
>$CLASS_UNLOAD"
>> >> +ARGS="$SERVER $DUMP $HEAP $CLASS_UNLOAD $VERBOSE_GC $GC_ALGO"
>> >>
>> >
>> > ... and remove it from ARGS
>> >
>> >
>> >  java $ARGS $JVM_ARGS $JMETER_OPTS -jar "$PRGDIR/ApacheJMeter.jar"
>"$@"
>> >>
>> >> Modified: jmeter/trunk/bin/jmeter.bat
>> >> URL: http://svn.apache.org/viewvc/jmeter/trunk/bin/jmeter.bat?rev
>> >> =1779108&r1=1779107&r2=1779108&view=diff
>> >> ============================================================
>> >> ==================
>> >> --- jmeter/trunk/bin/jmeter.bat (original)
>> >> +++ jmeter/trunk/bin/jmeter.bat Mon Jan 16 21:27:21 2017
>> >> @@ -71,31 +71,24 @@ rem On NT/2K grab all arguments at once
>> >>  set JMETER_CMD_LINE_ARGS=%*
>> >>
>> >>  rem The following link describes the -XX options:
>> >> -rem http://www.oracle.com/technetwork/java/javase/tech/vmoptions
>> >> -jsp-140102.html
>> >> -rem http://java.sun.com/developer/TechTips/2000/tt1222.html has
>some
>> >> more descriptions
>> >> -rem Unfortunately TechTips no longer seem to be available, except
>via:
>> >> -rem https://web.archive.org/web/20090614101951/http://java.sun.
>> >> com/developer/TechTips/2000/tt1222.html
>> >> +rem http://docs.oracle.com/javase/8/docs/technotes/tools/unix/
>> java.html
>> >>
>> >>  rem See the unix startup file for the rationale of the following
>> >> parameters,
>> >>  rem including some tuning recommendations
>> >>  set HEAP=-Xms512m -Xmx512m
>> >> -set NEW=-XX:NewSize=128m -XX:MaxNewSize=128m
>> >> -set SURVIVOR=-XX:SurvivorRatio=8 -XX:TargetSurvivorRatio=50%
>> >> -set TENURING=-XX:MaxTenuringThreshold=2
>> >> -rem Java 8 remove Permanent generation, don't settings the
>PermSize
>> >> -if %current_minor% LEQ "8" (
>> >> -    rem Increase MaxPermSize if you use a lot of Javascript in
>your
>> Test
>> >> Plan :
>> >> -    set PERM=-XX:PermSize=64m -XX:MaxPermSize=128m
>> >> -)
>> >> +
>> >> +#Uncomment this to generate GC verbose file
>> >> +rem set VERBOSE_GC=-verbose:gc -Xloggc:gc_jmeter_%p.log
>> >> -XX:+PrintGCDetails -XX:+PrintGCCause
>-XX:+PrintTenuringDistribution
>> >> -XX:+PrintHeapAtGC -XX:+PrintGCApplicationConcurrentTime
>> >> -XX:+PrintGCApplicationStoppedTime -XX:+PrintGCDateStamps
>> >> +
>> >> +set GC_ALGO=-XX:+UseG1GC -XX:MaxGCPauseMillis=250
>> -XX:G1ReservePercent=20
>> >>
>> >>  set CLASS_UNLOAD=-XX:+CMSClassUnloadingEnabled
>> >>
>> >
>> > Same here ...
>> >
>> > -rem set DEBUG=-verbose:gc -XX:+PrintTenuringDistribution
>> >>
>> >>  rem Always dump on OOM (does not cost anything unless triggered)
>> >>  set DUMP=-XX:+HeapDumpOnOutOfMemoryError
>> >>
>> >>  rem Additional settings that might help improve GUI performance
>on some
>> >> platforms
>> >> -rem See:
>http://java.sun.com/products/java-media/2D/perf_graphics.html
>> >> +rem See:
>http://www.oracle.com/technetwork/java/perf-graphics-135933.
>> >> html
>> >>
>> >>  set DDRAW=
>> >>  rem  Setting this flag to true turns off DirectDraw usage, which
>> >> sometimes helps to get rid of a lot of rendering problems on
>Win32.
>> >> @@ -109,7 +102,7 @@ rem set DDRAW=%DDRAW% -Dsun.java2d.ddsca
>> >>
>> >>  rem Server mode
>> >>  rem Collect the settings defined above
>> >> -set ARGS=%DUMP% %HEAP% %NEW% %SURVIVOR% %TENURING% %PERM%
>> %CLASS_UNLOAD%
>> >> %DDRAW%
>> >> +set ARGS=%DUMP% %HEAP% %CLASS_UNLOAD% %VERBOSE_GC% %GC_ALGO%
>%DDRAW%
>> >>
>> >
>> > ... and here
>> >
>> >  %JM_START% %JM_LAUNCH% %ARGS% %JVM_ARGS% -jar
>> >> "%JMETER_BIN%ApacheJMeter.jar" %JMETER_CMD_LINE_ARGS%
>> >>
>> >>
>> >> Modified: jmeter/trunk/xdocs/changes.xml
>> >> URL: http://svn.apache.org/viewvc/jmeter/trunk/xdocs/changes.xml?
>> >> rev=1779108&r1=1779107&r2=1779108&view=diff
>> >> ============================================================
>> >> ==================
>> >> --- jmeter/trunk/xdocs/changes.xml [utf-8] (original)
>> >> +++ jmeter/trunk/xdocs/changes.xml [utf-8] Mon Jan 16 21:27:21
>2017
>> >> @@ -153,6 +153,7 @@ JMeter now requires Java 8. Ensure you u
>> >>      <li><bug>54525</bug>Search Feature : Enhance it with ability
>to
>> >> replace</li>
>> >>      <li><bug>60530</bug>Add API to create JMeter threads while
>test is
>> >> running. Based on a contribution by Logan Mauzaize (logan.mauzaize
>at
>> >> gmail.com) and Maxime Chassagneux (maxime.chassagneux at gmail.com
>> ).</li>
>> >>      <li><bug>60514</bug>Ability to apply a naming convention on
>> Children
>> >> of a Transaction Controller. Contributed by Ubik Load Pack
>(support at
>> >> ubikloadpack.com)</li>
>> >> +    <li><bug>60593</bug>Switch to G1 GC algorithm</li>
>> >>  </ul>
>> >>
>> >>  <ch_section>Non-functional changes</ch_section>
>> >>
>> >
>> > Regards,
>> >
>> > Rainer
>> >
>> >
>>
>>
>> --
>> Cordialement.
>> Philippe Mouawad.
>>

Reply via email to