# The other half of the old rule: memory. The old heuristic wanted at least 2 CPUs AND about 1792 MB. # With 2 CPUs the CPU half of the rule is satisfied, so only the memory limit differs between these runs. === amazoncorretto:26 --cpus=2 --memory=1g $ docker run --rm --cpus=2 --memory=1g amazoncorretto:26 java -cp /app GcReport java.version = 26.0.2.1 availableCpus = 2 maxHeapMB = 255 collector beans = Copy, MarkSweepCompact UseG1GC = false (origin DEFAULT) UseSerialGC = true (origin ERGONOMIC) UseParallelGC = false (origin DEFAULT) === amazoncorretto:27 --cpus=2 --memory=1g $ docker run --rm --cpus=2 --memory=1g amazoncorretto:27 java -cp /app GcReport java.version = 27 availableCpus = 2 maxHeapMB = 256 collector beans = G1 Young Generation, G1 Concurrent GC, G1 Old Generation UseG1GC = true (origin ERGONOMIC) UseSerialGC = false (origin DEFAULT) UseParallelGC = false (origin DEFAULT) === amazoncorretto:26 --cpus=2 --memory=2g $ docker run --rm --cpus=2 --memory=2g amazoncorretto:26 java -cp /app GcReport java.version = 26.0.2.1 availableCpus = 2 maxHeapMB = 512 collector beans = G1 Young Generation, G1 Concurrent GC, G1 Old Generation UseG1GC = true (origin ERGONOMIC) UseSerialGC = false (origin DEFAULT) UseParallelGC = false (origin DEFAULT) === amazoncorretto:27 --cpus=2 --memory=2g $ docker run --rm --cpus=2 --memory=2g amazoncorretto:27 java -cp /app GcReport java.version = 27 availableCpus = 2 maxHeapMB = 512 collector beans = G1 Young Generation, G1 Concurrent GC, G1 Old Generation UseG1GC = true (origin ERGONOMIC) UseSerialGC = false (origin DEFAULT) UseParallelGC = false (origin DEFAULT)