> On March 17, 2016, 12:37 p.m., Robert Levas wrote:
> > ambari-server/src/main/python/ambari_server_main.py, line 89
> > <https://reviews.apache.org/r/44958/diff/1/?file=1302356#file1302356line89>
> >
> >     I am not familiar with these options, but it apears like no one really 
> > knows what they do.  See https://dzone.com/articles/busting-permgen-myths 
> > for an example. 
> >     
> >     Do we really think that this is necessary?  Do we know how this will 
> > affect performance?
> 
> Daniel Gergely wrote:
>     These options are for JVM, it can be checked in the jvm implementors 
> webpage. For example IBM does not use permgen space at all, but oracle does. 
> The first option has not effect from java 7, but it was useful in java 6 and 
> before, so I removed that one.
>     However -XX:+CMSClassUnloadingEnabled is useful. When classes are loaded 
> (statically or dynamically) they are stored in permgen space and remains 
> there forever (well, almost...). Since we use CMS (-XX:+UseConcMarkSweepGC 
> flag is already defined), we can allow GC to unload unused classes. As a 
> result it can increase the free space in permGen. In normal case when permGen 
> space is full, garbage collector initiates a STW (stop-the-world) action to 
> clean permgen space.
>     Short description here: 
> https://blogs.oracle.com/poonam/entry/about_g1_garbage_collector_permanent
>     Oracle tutorial here: 
> http://www.oracle.com/technetwork/tutorials/tutorials-1876574.html
>     
>     From Java 8 as I know there is no permGen space, so this issue relates 
> only to java 7.
>     
>     So I removed -XX:+CMSPermGenSweepingEnabled, but I kept 
> -XX:+CMSClassUnloadingEnabled. Performance wise you should not experience any 
> difference.

Thanks for the clarification.


- Robert


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/44958/#review124042
-----------------------------------------------------------


On March 18, 2016, 4:39 a.m., Daniel Gergely wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/44958/
> -----------------------------------------------------------
> 
> (Updated March 18, 2016, 4:39 a.m.)
> 
> 
> Review request for Ambari, Laszlo Puskas, Oliver Szabo, Robert Levas, Sandor 
> Magyari, and Sebastian Toader.
> 
> 
> Bugs: AMBARI-15465
>     https://issues.apache.org/jira/browse/AMBARI-15465
> 
> 
> Repository: ambari
> 
> 
> Description
> -------
> 
> Increased permGen size to 128m, also added **-XX:+CMSPermGenSweepingEnabled** 
> and **-XX:+CMSClassUnloadingEnabled** to allow jvm to keep permGen space 
> clean.
> 
> 
> Diffs
> -----
> 
>   ambari-server/conf/unix/ambari-env.sh e9fdcdd 
>   ambari-server/src/main/python/ambari_server_main.py 00e084b 
> 
> Diff: https://reviews.apache.org/r/44958/diff/
> 
> 
> Testing
> -------
> 
> Manual testing:
> [root@c6401 sbin]# ps -ef | grep ambari-server
> root     20769     1 27 14:47 pts/0    00:00:24 
> //usr/jdk64/jdk1.8.0_60/bin/java -server -XX:NewRatio=3 
> -XX:+UseConcMarkSweepGC -XX:-UseGCOverheadLimit 
> -XX:CMSInitiatingOccupancyFraction=60 **-XX:+CMSPermGenSweepingEnabled 
> -XX:+CMSClassUnloadingEnabled** -Dsun.zip.disableMemoryMapping=true -Xms512m 
> -Xmx2048m **-XX:MaxPermSize=128m** 
> -Djava.security.auth.login.config=//etc/ambari-server/conf/krb5JAASLogin.conf 
> -Djava.security.krb5.conf=/etc/krb5.conf 
> -Djavax.security.auth.useSubjectCredsOnly=false -Xms512m -Xmx2048m 
> -Djava.security.auth.login.config=//etc/ambari-server/conf/krb5JAASLogin.conf 
> -Djava.security.krb5.conf=/etc/krb5.conf 
> -Djavax.security.auth.useSubjectCredsOnly=false -cp 
> //etc/ambari-server/conf:/usr/lib/ambari-server/*:/usr/share/java/postgresql-jdbc.jar
>  org.apache.ambari.server.controller.AmbariServer
> 
> 
> Thanks,
> 
> Daniel Gergely
> 
>

Reply via email to