8169001: Remove launcher's built-in ergonomics

Kumar Srinivasan kumar.x.srinivasan at oracle.com
Mon Nov 7 18:47:48 UTC 2016


Hello,

Please review the fix for:
https://bugs.openjdk.java.net/browse/JDK-8169001

Webrev at:
http://cr.openjdk.java.net/~ksrini/8169001/webrev.00/

Background:
> Launcher ergonomics was introduced last decade to help determine
> if the execution system is "Server Class", this was necessary to
> choose server VM on platforms that supported both client and server
> VMs (primarily for Solaris and Linux 32-bit).
>
> The algorithm involves computing and detecting the number of CPUs
> and the amount of memory on the target system. All modern computers
> systems with hyper-threading cause the ergonomics to choose server.
>
> JDK9 Platforms that have only server vm.
>
> ./linux-x64/lib/amd64/server/libjvm.so
> ./linux-arm64-vfp-hflt/lib/aarch64/server/libjvm.so
> ./solaris-sparcv9/lib/sparcv9/server/libjvm.so
> ./solaris-x64/lib/amd64/server/libjvm.so
> ./windows-x86/bin/server/jvm.dll
> ./windows-x64/bin/server/jvm.dll
>
> JDK9 Platforms that have more than one vm variant:
> ./linux-arm32-vfp-hflt/lib/arm/client/libjvm.so (default)
> ./linux-arm32-vfp-hflt/lib/arm/minimal/libjvm.so
>
> ./linux-x86/lib/i386/server/libjvm.so (default)
> ./linux-x86/lib/i386/minimal/libjvm.so
>
>
> In the cases where multiple VMs are supported the ergnomics
> has no effect, and the default platforms are chosen by the
> jvm.cfg. Thus the launcher ergonomics is obsolete and redundant.

Thanks
Kumar



More information about the core-libs-dev mailing list