Previews for shared buffer PR

Johan Vos johan at lodgon.com
Sat Jul 6 17:05:07 UTC 2019


I agree it would be good to create a new EA version for this feature. I
think for this case, it would probably be good if Ambarish could rebase his
fork to master, so that we can create a release that includes the changes
both in master and in the PR.

- Johan

Op za 6 jul. 2019 om 18:55 schreef Kevin Rushforth <
kevin.rushforth at oracle.com>:

> There might be other issues with the early access. The shared NIO buffer
> feature should be behavior-neutral if you don't use it. So either there
> is some other issue with it, or there is a bug.
>
> Given the number of changes since that early access, both in the JavaFX
> 13 code base and in the PR itself, it seems worth making a new early
> access for people to try. I'll also do some local testing both with GTK
> 2 and GTK3.
>
> -- Kevin
>
>
> On 7/5/2019 10:35 PM, Ty Young wrote:
> >
> >
> > On 6/7/19 4:40 AM, Johan Vos wrote:
> >> The PR discussed in https://github.com/javafxports/openjdk-jfx/pull/472
> ,
> >> addressing https://bugs.openjdk.java.net/browse/JDK-8167148 provides
> >> a very
> >> much wanted feature. It is important that things are done in the
> >> right way
> >> so that the code can be maintained in the long-term future.
> >> Therefore, feedback on this PR is extremely important before we can
> >> consider merging it. Once this PR is merged, there is no easy way
> >> back. It
> >> is possible to add more functionality, hence my preference is to only
> >> implement the functionality that is safe and stable, while allowing
> >> other
> >> functionality to be added later or by third-party extensions. (e.g.
> >> (avoiding) copying from/to GPU)
> >>
> >> To make it easier to give feedback, we've build early access versions of
> >> SDK's including this PR. Note that the PR is not merged, hence not
> >> available in the regular EA downloads!
> >>
> >> If you want to give it a try, download the SDK's from the URL's below.
> >> There is a test in tests/manual/graphics/PixelBufferPerformanceTest (
> >>
> https://github.com/arapte/openjdk-jfx/blob/JDK-8167148-NIO-ByteBuffer/tests/manual/graphics/PixelBufferPerformanceTest.java)
>
> >>
> >> that should get you started.
> >>
> >>
> https://download2.gluonhq.com/openjfx/forks/pixelbuffer/openjfx-13-pixelbuffer-ea+9_linux-x64_bin-jmods.zip
> >>
> >>
> https://download2.gluonhq.com/openjfx/forks/pixelbuffer/openjfx-13-pixelbuffer-ea+9_linux-x64_bin-sdk.zip
> >>
> >>
> https://download2.gluonhq.com/openjfx/forks/pixelbuffer/openjfx-13-pixelbuffer-ea+9_osx-x64_bin-jmods.zip
> >>
> >>
> https://download2.gluonhq.com/openjfx/forks/pixelbuffer/openjfx-13-pixelbuffer-ea+9_osx-x64_bin-sdk.zip
> >>
> >>
> https://download2.gluonhq.com/openjfx/forks/pixelbuffer/openjfx-13-pixelbuffer-ea+9_windows-x64_bin-jmods.zip
> >>
> >>
> https://download2.gluonhq.com/openjfx/forks/pixelbuffer/openjfx-13-pixelbuffer-ea+9_windows-x64_bin-sdk.zip
> >>
> >>
> >> - Johan
> >
> >
> > FYI this SDK causes a hard system crash when GTK is set to 2 and/or
> > prism.forceUploadingPainter is set to true. I don't feel like
> > purposefully crashing my system to see which of the various
> > combinations is the issue so forgive me for not providing a more
> > narrowed down cause.
> >
> > GTK 2 is still necessary as there are still lingering GTK3 bugs that
> > have yet to be fixed even in current JavaFX 13.
> >
> > prism.forceUploadingPainter is a prism setting that fixes buffer
> > resets and other various GUI glitching under Linux(an issue I tried
> > reporting a long time ago) which affects ALL JavaFX applications under
> > Linux but dramatically increases GPU utilization by 2x-2.5x when doing
> > any kind of application interaction(resizing, scrolling, etc). Is
> > there a reason this isn't enabled by default under Linux besides
> > performance? Where is the documentation for this and other settings? I
> > randomly ran into this from
> > http://werner.yellowcouch.org/log/javafx-8-command-line-options/ and
> > was surprised noone really knows about it nor is it documented
> > anywhere that I can see.
> >
> >
> > Even with GTK 3 this results in a null pointer exception:
> >
> >
> > java.lang.NullPointerException
> >     at
> >
> javafx.graphics/com.sun.prism.es2.ES2SwapChain.createGraphics(ES2SwapChain.java:223)
> >     at
> >
> javafx.graphics/com.sun.prism.es2.ES2SwapChain.createGraphics(ES2SwapChain.java:40)
> >     at
> >
> javafx.graphics/com.sun.javafx.tk.quantum.PresentingPainter.run(PresentingPainter.java:87)
> >     at
> >
> java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)
> >     at
> >
> java.base/java.util.concurrent.FutureTask.runAndReset(FutureTask.java:305)
> >     at javafx.graphics/com.sun.javafx.tk.RenderJob.run(RenderJob.java:58)
> >     at
> >
> java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
> >     at
> >
> java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
> >     at
> >
> javafx.graphics/com.sun.javafx.tk.quantum.QuantumRenderer$PipelineRunnable.run(QuantumRenderer.java:125
> >
> >
> > Please don't merge this into JDK13 or at least provide a switch to
> > disable it. This is extremely busted on Linux.
> >
> >
> > Can the source code for this entire JavaFX build please be linked?
> >
>
>


More information about the openjfx-dev mailing list