# You should account for at least ~20% overhead on top of this to account for non-heap Java RAM usage eg. off-heap allocations, JIT optimizations, JNI code, GC (especially G1) etc...
#
# Sun JDK 8, OpenJDK 11 and IBM JDK all treat the last -Xmx on the command line as the actual one, so we are going with that
#
# You can check this is true on your specific implementation like so:
numfmt --to-unit=Mi # newers versions (eg. 8.30) need Mi for correct unit conversion, but older versions (eg. 8.23) crash when given Mi as target unit (eg. 'Abort trap: 6') - if this happens to you, 'brew upgrade coreutils' to resolve it