Fwd: Re: Marlin-Renderer and JavaFX

Laurent Bourgès bourges.laurent at gmail.com
Sat Oct 15 12:05:33 UTC 2016


I am pleased to announce the new MarlinFX project I released 2 days ago
(GPL v2):

MarlinFX is the JavaFX port of the Marlin renderer (scanline rasterizer
integrated in OpenJDK9) aimed to be faster than Open/Native Pisces (notably
for very complex paths: merge sort + optimized array copies and cleanup).

I tested in on both linux & windows 64bits (server JVM) and it is at least
as fast as OpenPisces or faster (javafx shape rasterization is single
threaded up to now but marlin scales very well). Of course, it is always
faster than native pisces on my machines.

For the DemoFX sierpinski test:
- native pisces = 130fps
- open pisces = 150fps
- marlin-fx = 325fps
This test renders a very complex path so marlin-fx rocks in hard rendering
See https://github.com/chriswhocodes/DemoFX

Another DemoFX test (stars):
- open pisces:
stars = 170 fps
- marlin-fx:
stars = 259 fps
This test case is very simple: see

Setup: laptop zbook-15 (i7 4800 + nvidia Quadro K610M) on ubuntu 16.4 +
Oracle JDK 1.8.0_b102 (javafx) - VSYNC: OFF

Of course, there is lot of potential improvements in the JavaFX pipeline...
(multi-threading, inner/outer strokes...)

Finally I made a first step, and more benchmarks or test cases are needed
(I could port my MapBench tool) to get some realistic data.

Then how to go next, as there is no way to plug in such marlinFX in JavaFX

Could you have a look at the code (on my github) ?
I can make a webrev between openjfx and open jdk 9 if you prefer.


More information about the openjfx-dev mailing list