title: How can I find the default MaxPermSize when -XX:+PrintFlagsFinal is not supported?
body: <p>I'm working with a system where a number of jobs, implemented as Java applications, can be started simultaneously. Each job runs in a separate JVM.</p>
  
  <p>Some of these jobs require bigger permgen size than others. However, it is not feasible to allow all jobs to use the maximum value, as the OS memory is limited.</p>
  
  <p>Therefore, I want to specify <code>-XX:MaxPermSize</code> for every job. Currently, the jobs are running without any <code>-XX:MaxPermSize</code> argument, so they must be using the default value. But how can I find out what the default value is?</p>
  
  <p>I have seen <a href="https://stackoverflow.com/questions/8209450/default-values-for-xmx-xms-maxpermsize-on-non-server-class-machines" title="Default values for Xmx, Xms, MaxPermSize on non-server-class machines">Default values for Xmx, Xms, MaxPermSize on non-server-class machines</a> where the accepted answer is to run <strong><code>java -XX:+PrintFlagsFinal</code></strong>, which should output the default values. However, the JVM version I'm running <strong>does not support that argument</strong> (<em>Unrecognized VM option '+PrintFlagsFinal'</em>). Updating to a newer JVM is not currently an option.</p>
  
  <p>So what are my options for finding the default value?<br>
  System information:</p>
  
  <pre><code>&gt; java -version
  Java(TM) SE Runtime Environment (build 1.6.0_14-b08) 
  Java HotSpot(TM) 64-Bit Server VM (build 14.0-b16, mixed mode)
  
  &gt; cat /etc/issue
  Welcome to SUSE Linux Enterprise Server 11 SP2  (x86_64) - Kernel \r (\l).
  
  &gt; uname -r
  3.0.101-0.7.17-default
  </code></pre>