RFR: 8305578: X11GraphicsDevice.pGetBounds() is slow in remote X11 sessions

Phil Race prr at openjdk.org
Fri Apr 7 20:41:43 UTC 2023


On Wed, 5 Apr 2023 08:19:50 GMT, Maxim Kartashev <mkartashev at openjdk.org> wrote:

> Getting bounds of a `GraphicsDevice` and insets of a screen are fairly frequent operations. When working over the network (remote X session), those can take several *seconds* to complete, introducing repeated freezes even when typing in an editor feels only slightly sluggish.
> 
> On the other hand, neither bounds nor insets change very often - if at all - during the lifetime of an application. So caching their values seems like a natural solution to the problem. The caches need to be reset only when there's a possibility of change in the screens configuration.
> 
> A similar patch has been living in [JetBrains Runtime](https://github.com/JetBrains/JetBrainsRuntime/) for well over a year.

Multiple seconds seems out of bounds (so to speak :-)), for network latency of an X11 round trip.
if it were that slow, I'd expect everything to be unusable, and that's not what you are saying.
So I'd like to hear about a deeper dive into what precisely is slow.
Although very old, it reminded me of this bug : https://bugs.openjdk.org/browse/JDK-4369234
Meanwhile I'll kick off some testing.

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

PR Comment: https://git.openjdk.org/jdk/pull/13346#issuecomment-1500622715



More information about the client-libs-dev mailing list