Разные реализации Java-машины (CorretoVM, OpenJDK, GraalVM, HotspotVM) — это разные сборки одного и того же кода, так как они представляют различные реализации виртуальной машины Java (JVM). 14
На языковом уровне исходный код компилируется в универсальный байт-код Java, а на уровне реализации JVM исполняет его, учитывая особенности конкретной операционной системы или архитектуры процессора. 1 При этом различные реализации JVM могут развиваться и сами по себе, например, в них появляются новые, более эффективные алгоритмы сборки мусора или оптимизации кода. 1
Однако стоит учитывать, что машинный код, сгенерированный JIT-компилятором из идентичных байт-кодов, идентичной версией Java и на одной и той же операционной системе, может отличаться. 10 Это зависит от физического оборудования, на котором запущена JVM, и входных данных, вводимых в программу. 10