Reducing memory usage

From Bisq Wiki
Revision as of 12:16, 12 June 2020 by Plebeian9000 (talk | contribs)
Jump to navigation Jump to search

One of the settings Java virtual machines (JVMs) use to calibrate how much physical memory to reserve at startup is MaxRAM, and there is a good chance your JVM's default MaxRAM configuration is too large.

To check the default MaxRAM setting, run this java command:

   java -XX:+UnlockDiagnosticVMOptions -XX:+PrintFlagsFinal -version | grep MaxRAM

Look for the MaxRAM value (bytes) in the output. An example:

   367: uint64_t MaxRAM = 137438953472 

This means the OpenJDK 11 JVM's MaxRAM setting is 128 GB, on a machine with only 16 GB RAM.

Experiments have shown running Bisq with a 4 GB MaxRAM setting reduces resident memory consumption by more than 50% (when starting a clean Bisq installation with an empty data directory). Setting MaxRAM to 2 GB reduces resident memory usage even more, but setting it any lower (1536m) will result in an OutOfMemoryError and crash the app.

As of version 1.3.2, Bisq is started with a MaxRAM setting of 4 GB. If you are using Bisq v1.3.1 or older, consider upgrading to the latest version to benefit from this change.