Proposed JEP - Deprecate the Windows x86-32 Port

Thomas Stüfe thomas.stuefe at gmail.com
Tue Feb 28 16:04:24 UTC 2023


On Mon, Feb 27, 2023 at 8:15 PM Alan Bateman <Alan.Bateman at oracle.com>
wrote:

>
>
> On 27/02/2023 11:04, George Adams wrote:
>
> Hi all,
>
>
>
> I’ve been asked to socialize my proposed JEP to deprecate the Windows
> x86-32 port on this mailing list.
>
>
>
> A link to the draft JEP can be found here:
> https://bugs.openjdk.org/browse/JDK-8303167
>
>
>
> In summary, the main motivation for this JEP is that there is currently no
> implementation of JEP 436 (Virtual Threads) <https://openjdk.org/jeps/436> for
> 32-bit platforms and without a vendor stepping forward to implement this
> it's unlikely that OpenJDK will be able to continue supporting 32-bit
> architectures. Another motivation is that Windows 10 (the last Windows
> operating system to support a 32-bit installation) will reach EOL on
> October 14, 20251.
>
> When you build JDK 19+ to target windows-x86 then it will use an
> alternative implementation of virtual thread that creates a kernel thread
> for each virtual thread. So it doesn't scale but it's good enough for Zero
> and ports that are a bit behind.
>
> That said, it's a good topic to bring up. I don't expect dropping
> windows-x86 will remove the burden of keeping the x86_32 port working, to
> do that would require dropping linux-x86 too. So maybe the discussion
> should be broadened to ask if the time is approaching to remove the x86_32
> port? At one point, one of the arguments to keep linux-x86 working was
> reconditioning older computers but I don't know if this is still the case.
> I see a mail to jdk-dev from Mark Yagnatinsky that talks about JNI libs or
> drivers that are 32-bit only. There isn't much context but it would be
> surprising for something that is actively maintained to not have a 64-bit
> build in 2023. He also mentions limiting resources but that may be a case
> where an OS container should be used. It might be that you expand the
> Motivation in draft JEP to cover these points.
>
> -Alan
>
>
I would be unhappy if x86 were to go. There is a place for 32-bit JVMs for
small java apps. A 32-bit JVM can have a considerably lower footprint than
its 64-bit pendant if the app is dominated by native memory. I recently
measured the footprint for 32-bit vs 64-bit JVMS on a 64-bit Linux host and
in some cases there was > 70% overhead. I can dig up the results if there
is interest.

Also, we want to keep arm, right? The arm port is important for a lot of
SBCs out there. Keeping x86 means more testing for 32-bit. I don't think
many people test on arm.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://mail.openjdk.org/pipermail/jdk-dev/attachments/20230228/32efcd7b/attachment.htm>


More information about the jdk-dev mailing list