RFR: 8238954: Improve performance of tiled snapshot rendering

Frederic Thevenet github.com+7450507+fthevenet at openjdk.java.net
Tue Mar 10 10:31:52 UTC 2020


On Tue, 10 Mar 2020 06:05:53 GMT, Ambarish Rapte <arapte at openjdk.org> wrote:

>> I finally got a chance to do some more extensive testing when running this patch with the es2 pipeline on Linux.
>> It works as expected, and from what I saw, using a IntARGB pixelBuffer when no WritableImage is provided avoids
>> swapping around pixel components, like under d3d. I've also verified than the patch's behaviour is correct when a
>> writable image is provided as a parameter to Node.snapshot, whether the underlying image is actually a PlatformImage or
>> a wrapper for a PixelBuffer, which corrects another limitation of the previous implementation.
>
> On My windows10 machine, I can observe 20 to 30 % reduction in time to take snapshot.
> Can you please capture the time the way you did [here](https://github.com/openjdk/jfx/pull/68#issuecomment-578192074)
> for previous PR

### 14-ea+9

--------
|    | 1024 |2048 |3072 |4096 |5120 |6144 |7168 |8192 |9216 |
|---|---|---|---|---|---|---|---|---|---|
| 1024 | 5.607827 | 9.380503 | 13.835523 | 17.514362 | 21.776304 | 27.918815 | 36.929480 | 35.647317 | 74.274598 |
| 2048 | 11.271960 | 17.774451 | 26.468146 | 34.555745 | 42.699573 | 52.027568 | 74.481450 | 68.349699 | 135.902502 |
| 3072 | 13.953309 | 26.320822 | 42.652327 | 51.534650 | 65.202531 | 78.406419 | 103.512338 | 109.125337 | 214.305998 |
| 4096 | 17.776236 | 35.800101 | 57.483720 | 70.221125 | 98.024908 | 106.510784 | 109.940266 | 150.731465 | 265.632840 |
| 5120 | 22.756799 | 44.809926 | 69.324931 | 85.589418 | 106.649450 | 137.122404 | 146.470563 | 149.845737 | 371.508604
| | 6144 | 26.218716 | 53.103478 | 78.157447 | 122.467283 | 129.644202 | 162.408603 | 160.861559 | 172.865197 |
460.078507 | | 7168 | 31.095109 | 60.251328 | 91.299751 | 133.693702 | 143.813523 | 154.496892 | 171.049670 |
186.519441 | 527.541763 | | 8192 | 34.609033 | 71.258569 | 107.084557 | 143.252194 | 163.108854 | 165.619014 |
178.134480 | 220.085044 | 514.600669 | | 9216 | 69.133873 | 135.713363 | 198.200679 | 277.606301 | 355.598066 |
480.710904 | 450.875668 | 577.701980 | 623.690198 |

![14-ea+9](https://user-images.githubusercontent.com/7450507/76303509-29a3ce80-62c2-11ea-8b79-befe446b39e3.png)

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

PR: https://git.openjdk.java.net/jfx/pull/112


More information about the openjfx-dev mailing list