RFR: 8286597: Implement PollerProvider on AIX [v11]

Tyler Steele tsteele at openjdk.org
Wed May 24 18:01:24 UTC 2023


On Wed, 24 May 2023 12:40:42 GMT, Vyom Tewari <vtewari at openjdk.org> wrote:

>> src/java.base/aix/classes/sun/nio/ch/PollsetPoller.java line 42:
>> 
>>> 40:     private final int setid;
>>> 41:     private final long pollBuffer;
>>> 42:     private static final int POLL_BUFFER_SIZE = 16;
>> 
>> 16 seems very low. On the other platforms the equivalent is sized to read up to 256 or 512 events in one syscall but maybe there is a reason to choose this small number? You might need to run Helidon Nima or some other server using virtual threads to see the impact on this.
>> 
>> The name used on other platforms for the constant is "MAX_EVENTS_TO_POLL" to better reflect the usage.
>
> I agree with Alan, when I was in IBM, I re-implemented the same for IBM Z/OS and my initial buffer size was very low. The product team complains that first 512 clients connections  were slow. I increased buffer size to 512( MAX_POLL_EVENTS = 512;) and problem got resolved. Although  Z/OS implementation was based on “select and poll” API which is different than your AIX implementation and my be, buffer size is not applicable to AIX.

Thanks for your feedback. I have changed this to reference the existing MAX_POLL_EVENTS constant which is set to 512.

-------------

PR Review Comment: https://git.openjdk.org/jdk/pull/13452#discussion_r1204576367


More information about the nio-dev mailing list