Correto VS Oracle на 32-битной Windows с -Xmx

Я проводил сравнение между Amazon Correto и Oracle JRE (Windows 32-bit) и заметил, что они выделяют максимум памяти по-разному.

Итак, я сделал этот пример кода и запустил его на разных JRE. Результаты, достижения:

  • Amazon Corretto 32 бита - jre1.8.0_202

    • Без -Xmx
      • Runtime.getRuntime (). MaxMemory(): 652476416
    • С -Xmx1024m
      • Runtime.getRuntime (). MaxMemory (): 954466304
    • С -Xms1024m
      • Runtime.getRuntime (). MaxMemory (): 1029177344
  • Amazon Corretto 64 бит - jre1.8.0_202

    • Без -Xmx
      • Runtime.getRuntime (). MaxMemory (): 947388416
    • С -Xmx1024m
      • Runtime.getRuntime (). MaxMemory(): 954728448
    • С -Xms1024m
      • Runtime.getRuntime (). MaxMemory (): 1029177344
  • Oracle 32 бита - jre1.8.0_202

    • Без -Xmx
      • Runtime.getRuntime (). MaxMemory(): 259522560
    • С -Xmx1024m
      • Runtime.getRuntime (). MaxMemory (): 1037959168
    • С -Xms1024m
      • Runtime.getRuntime (). MaxMemory(): 1037959168
  • Oracle 64 бит - jre1.8.0_202

    • Без -Xmx
      • Runtime.getRuntime (). MaxMemory (): 947388416
    • С -Xmx1024m
      • Runtime.getRuntime (). MaxMemory(): 954728448
    • С -Xms1024m
      • Runtime.getRuntime (). MaxMemory (): 1029177344

Вот код:

public class Main {
   /**
    * @param args
    */
   public static void main( String[] args ) {
     System.out.println( "Runtime.getRuntime().maxMemory(): " + Runtime.getRuntime().maxMemory() ); // JOSE_RENATO Remover
   }
}

Итак, почему Oracle JRE 32 бита выделяет больше памяти при использовании параметра -Xmx?

И почему это поведение отличается на 64-битной версии?

0 ответов

Другие вопросы по тегам