Универсальных «рекомендуемых» аргументов / настроек не существует. Настройки, которые могут быть хорошими для одного приложения или варианта использования, могут быть ужасными для другого.
Как правило, настройки JVM вообще не годятся отправная точка . Затем вы наблюдаете, измеряете, настраиваете, повторяете, пока производительность не станет приемлемой. (Или не беспокойтесь.)
Какие настройки используются, если мы не указываем значения памяти? Изменяются ли настройки памяти автоматически при изменении типа машины?
Значения размера кучи по умолчанию зависят от версии Java и платформы. Для последних версий Oracle / OpenJDK максимальный размер кучи по умолчанию составляет 1/4 от физической памяти, а начальный размер кучи по умолчанию составляет 1/64 от физической памяти; см.
Вы также можете использовать опцию -XX:+PrintFlagsFinal
для печати значений всех настроек JVM.