[Rev 03] RFR: 8088198: Exception thrown from snapshot if dimensions are larger than max texture size
Nir Lisker
nlisker at openjdk.java.net
Fri Jan 24 16:34:38 UTC 2020
On Fri, 24 Jan 2020 16:26:38 GMT, Frederic Thevenet <github.com+7450507+fthevenet at openjdk.org> wrote:
>> Here are the results when running JavaFX 14-ea+7.
>> The columns of the table correspond the width of the target snapshot, while the rows correspond to the height and the content of the cells is the average time* spent (in ms) in `Node::snapshot`
>> (*) each test is ran 10 times and the elapsed time is averaged after pruning outliers, using Grubbs' test.
>>
>> | | 1024 |2048 |3072 |4096 |5120 |6144 |7168 |8192 |
>> |---|---|---|---|---|---|---|---|---|
>> | 1024 | 6.304272 | 10.303935 | 15.052336 | 35.929304 | 23.860095 | 28.828812 | 35.315288 | 27.867205 |
>> | 2048 | 11.544367 | 21.156326 | 28.368750 | 28.887164 | 47.134738 | 54.354708 | 55.480251 | 56.722649 |
>> | 3072 | 15.503187 | 30.215269 | 41.304645 | 39.789648 | 82.255091 | 82.576379 | 96.618722 | 106.586547 |
>> | 4096 | 20.928336 | 38.768648 | 64.255423 | 52.608217 | 101.797347 | 132.516816 | 158.525192 | 166.872889 |
>> | 5120 | 28.693431 | 67.275306 | 68.090280 | 76.208412 | 133.974510 | 157.120373 | 182.329784 | 210.069066 |
>> | 6144 | 29.972591 | 54.751002 | 88.171906 | 104.489291 | 147.788597 | 185.185643 | 213.562819 | 228.643761 |
>> | 7168 | 33.668398 | 63.088490 | 98.756212 | 130.502678 | 196.367121 | 225.166481 | 239.328794 | 260.162501 |
>> | 8192 | 40.961901 | 87.067460 | 128.230351 | 178.127225 | 198.479068 | 225.806211 | 266.170239 | 325.967840 |
>
> And here are the results with the change in this PR, on the same machine under Windows 10:
>
> | | 1024 |2048 |3072 |4096 |5120 |6144 |7168 |8192 |
> |---|---|---|---|---|---|---|---|---|
> | 1024 | 6.957774 | 10.461498 | 14.721024 | 19.279638 | 47.508266 | 56.585089 | 64.522117 | 53.448326 |
> | 2048 | 10.990480 | 19.284461 | 28.235822 | 41.067555 | 92.818088 | 106.782334 | 120.907050 | 112.852554 |
> | 3072 | 15.642648 | 28.502151 | 59.541998 | 55.663658 | 130.654226 | 149.805330 | 205.212356 | 169.002232 |
> | 4096 | 19.882252 | 41.287722 | 59.493687 | 73.809264 | 169.212467 | 200.212097 | 247.934609 | 246.412543 |
> | 5120 | 49.986204 | 97.986781 | 126.127089 | 167.274104 | 217.063815 | 276.812929 | 307.276073 | 366.800463 |
> | 6144 | 66.546156 | 104.339809 | 150.171765 | 206.282107 | 272.486419 | 321.178983 | 365.822047 | 410.087087 |
> | 7168 | 66.894654 | 119.510866 | 176.002883 | 248.937222 | 314.721516 | 380.834398 | 430.858648 | 482.499047 |
> | 8192 | 67.040207 | 112.831977 | 161.852173 | 237.588749 | 319.667719 | 382.151556 | 437.810832 | 451.865266 |
> Here are the results when running JavaFX 14-ea+7.
> The columns of the table correspond the width of the target snapshot, while the rows correspond to the height and the content of the cells is the average time* spent (in ms) in `Node::snapshot`
> (*) each test is ran 10 times and the elapsed time is averaged after pruning outliers, using Grubbs' test.
>
> 1024 2048 3072 4096 5120 6144 7168 8192
> 1024 6.304272 10.303935 15.052336 35.929304 23.860095 28.828812 35.315288 27.867205
> 2048 11.544367 21.156326 28.368750 28.887164 47.134738 54.354708 55.480251 56.722649
> 3072 15.503187 30.215269 41.304645 39.789648 82.255091 82.576379 96.618722 106.586547
> 4096 20.928336 38.768648 64.255423 52.608217 101.797347 132.516816 158.525192 166.872889
> 5120 28.693431 67.275306 68.090280 76.208412 133.974510 157.120373 182.329784 210.069066
> 6144 29.972591 54.751002 88.171906 104.489291 147.788597 185.185643 213.562819 228.643761
> 7168 33.668398 63.088490 98.756212 130.502678 196.367121 225.166481 239.328794 260.162501
> 8192 40.961901 87.067460 128.230351 178.127225 198.479068 225.806211 266.170239 325.967840
Any idea why 4096x1024 and 1024x4096 are so different? Same for 8192x1024 and 1024x8192.
-------------
PR: https://git.openjdk.java.net/jfx/pull/68
More information about the openjfx-dev
mailing list