</center>
</h2>
<p>
- Jalview sometimes runs out of memory. This is because of the way
- that Java runs on a computer - what is actually run is a program
- called a virtual machine (the JVM) which executes the java
- instructions. The JVM has limits on the memory that can be allocated
- to the java program - and you might need to increase them if you are
- working with particularly large datasets.<br> If Jalview has
- not explicitly told you that it has run out of memory, then a common
- sign is that a function that normally works seems to have no effect
- when working with a larger set of sequences (this might include open
- dialog boxes for saving PNG files, or when interpreting the result
- of a web service calculation).
+ When launched as an Application, Jalview automatically tries to
+ maximise the amount of memory allocated to it (default settings are
+ to try and use up to 90% of physical memory available to it).
+ Sometimes it may require more memory, or if you are working in a
+ shared memory environment you may want to limit the maximum amount
+ of memory that it might use.
+ This has to be set at the time Jalview is launched because of the way
+ that Java runs on a computer - what is actually run is a program called
+ a Java virtual machine (a JVM) which executes the java program instructions.
+ The JVM has limits on the memory that can be allocated to the java program - and
+ you might need to increase them if you are working with particularly
+ large datasets.<br> If Jalview has not explicitly told you that
+ it has run out of memory, then a common sign is that a function that
+ normally works seems to have no effect when working with a larger
+ set of sequences (this might include open dialog boxes for saving
+ PNG files, or when interpreting the result of a web service
+ calculation).
</p>
<p>
<em>Jalview Memory Usage Monitor</em>: If you are concerned about
window's background.
</p>
<p>
- <em>Increasing the memory available to Jalview</em><br> The way
- you increase the memory settings for the JVM depends on which
- installation of Jalview you use:
+ <em>Increasing the memory available to Jalview</em><br/>
+ Since Jalview 2.11, the program automatically configures the JVM memory settings to set the maximum memory available to Jalview to be 90% of physical memory.
+ This default setting can be altered in a number of different ways, depending on how you prefer to launch Jalview and how specific you want to be with the maximum memory setting.
</p>
+
<ul>
- <li><em><font size="3">Web Start Version</font></em>
+ <li><em><font size="3">JVL file</font></em>
+ <p>
+ The easiest way to launch Jalview with a different percentage of physical memory available is to
+ create a text file with extension <em>.jvl</em> and with content that looks like
+ <pre>
+ jalview.jvmmempc=50
+ </pre>
+ Replace the value with the percentage of memory you wish to allocate to Jalview.
+ </p>
+ <p>
+ In Windows and in macOS you can then launch Jalview by double clicking on this file, and your memory setting will be used instead of the default value of 90.
+ </p>
<p>
- JavaWS sets the JVM parameters through special tags in the JNLP
- file. You can obtain a JNLP file with modified memory settings
- from our service with the following link (replace 2G with
- desired memory in G or M):<br /> <a
- href="http://www.jalview.org/services/launchApp?jvm-max-heap=2G">http://www.jalview.org/services/launchApp?jvm-max-heap=2G</a>
+ In Linux or other unix variants you can launch Jalview on the command line and provide your JVL file as an argument with
+ <pre>
+ /PATH_TO_JALVIEW/Jalview /path/to/file/mymemorysetting.jvl
+ </pre>
+
</p>
<p>
- Alternatively, if you want to create your own JNLP file then
- please download the latest JNLP file from <a
- href="http://www.jalview.org/webstart/jalview.jnlp">http://www.jalview.org/webstart/jalview.jnlp</a>
- and modify the max-heap-size parameter for the j2se tag in the
- <resources> element. e.g.
+ If you want to use a memory setting like this and open a file you can use both files as arguments in the command line, but you must put the <em>jvl</em> file first, e.g.
<pre>
-<j2se version="1.7+" initial-heap-size="500M" max-heap-size="1000M"/>
-</pre> In both cases, you should save your new jnlp file somewhere and then
- either point your web browser at the file's url, launch it from
- your file browser, or from a terminal window run javaws (located
- in your Java installation's bin directory) with the file location
- as its argument. The file's url is something like :<br> <pre>
-file://<full path to file>
-</pre> If Jalview doesn't start up, see <a href="#memsetting">below</a>.
- You'll have to edit the above settings in the JNLP file using a
- text editor, save it, and try starting Jalview with it once more.
- </p></li>
- <li><em><font size="3">Install Anywhere version</font></em>
- <p>You need to change the InstallAnywhere configuration
- settings for the application. These are found in different
- places depending upon which operating system you have :
- <ul>
- <li><em>Unix/Windows</em>
- <p>Take a look inside the Jalview program installation
- directory (this might be in C:\Program Files\Jalview on
- windows). You should find a file called 'Jalview.lax' in it
- - make a backup, and then add the following lines to the end
- of the original file :
- <pre>
-lax.nl.java.option.java.heap.size.max=1000m
-lax.nl.java.option.java.heap.size.initial=500m
-</pre> Case and (lack of) spaces are important here! Do not add any spaces
- after the m in each line, and do not put any spaces before
- 'lax'.<br> Also there MUST be a carriage return after the
- final line.
- <p></p></li>
- <li><em>Mac OSX</em>
- <p>
- The lines you need to change are in the <em>Info.plist</em>
- file inside the <em>Jalview.app/Contents</em> directory
- (which is where the installAnywhere installation was made) :
-
-
- <pre>
-<key&ht;VMOptions</key&ht;
-<array>
-! <string>-Xms2M</string>
-! <string>-Xmx64M</string>
-</array>
-</pre>Exchange the above two string tags for : <pre>
-<string>-Xms500M</string>
-<string>-Xmx1000M</string>
-</pre>
- <p></p></li>
- </ul>
- <li><font size="3"><em>In all cases</em></font><br> Save
- the file and try to start Jalview in the normal way. If it doesn't
- start, see below...</li>
+ /PATH_TO_JALVIEW/Jalview /path/to/file/mymemorysetting.jvl /path/to/alignments/myalignment.fa
+ </pre>
+
+
+ </p>
+ </li>
+
+
+ <li><em><font size="3"></font></em>
+ <p>
+ </p>
+ </li>
+
+
+
+
+ <li><em><font size="3"></font></em>
+ <p>
+ </p>
+ </li>
+
+
+
+
+ <li><em><font size="3"></font></em>
+ <p>
+ </p>
+ </li>
+
+
+
+
+ <li><em><font size="3"></font></em>
+ <p>
+ </p>
+ </li>
+
+
+
+
+ <li><em><font size="3"></font></em>
+ <p>
+ </p>
+ </li>
+
+
</ul>
- <p>
- <em>Please Note:</em> We do modify the default memory settings in
- Jalview from time to time, so you may find different numbers to
- those shown in the examples above.
- </p>
- <font size="3"><em>Jalview doesn't start... What do the
- memory settings mean ?<a name="memsetting"></a>
- </em></font>
- <p>The 1000m value corresponds to the maximum number of megabytes
- of space that java objects can occupy. The 500m is the initial heap
- size that java will run in - increasing this can speed up memory
- allocation if you know you will need 500 meg of memory to begin with
- (ie it should speed up loading large alignments).</p>
- <p>If, after setting the initial and maximum heap size to some
- large value, you cannot actually start Jalview, then the max and
- initial sizes are too big for your machine (there seems to be a
- physical limit related to physical RAM - email the usual address to
- enlighten us if you know better!). Our experiments found 1000m to be
- the biggest setting that could be used on a 1GB machine. Just try
- reducing the sizes until Jalview starts up properly!</p>
- <p>
- We increased the default memory in Jalview 2.10.5 to 1G. To launch
- Jalview with the pre 2.10.5 default memory allocation, use the <a
- href="http://www.jalview.org/webstart/jalview_256MB.jnlp">Jalview
- 256MB JNLP</a>.
- </p>
- <p> </p>
+
</body>
</html>