ebruneton / precomputed_atmospheric_scattering

This project provides a new implementation of our EGSR 2008 paper "Precomputed Atmospheric Scattering".
BSD 3-Clause "New" or "Revised" License
908 stars 120 forks source link

Test failures on newer Mesa #15

Closed 10110111 closed 6 years ago

10110111 commented 6 years ago

After Mesa commit 4009a9ead490ef1718e6fa83141aa086a43cd901 I get the following two failures of the integration_test (on Xeon E3-1226 v3 built-in GPU):

47 is not less than 46.7812
[ FAIL ] ModelTest RadianceSeparateTextures
46 is not less than 45.6379
[ FAIL ] ModelTest RadianceCombineTextures

Actual changes of the values of PSNR are 47.5398dB→46.7812dB for the first test and 46.0467dB→45.6379dB for the second one.

How do I interpret this? Are the "47" and "46" figures something strict which must be true for a good implementation of GLSL? Is it worth a bug report against Mesa?

ebruneton commented 6 years ago

The PSNR values 46 and 47 are just the rounded values of the actual PSNR I got on my machine. There is no guarantee that a different graphics card and/or driver will get similar results. That said, if the tests were passing with one driver version and are no longer passing with a new version, on the same machine, it seems a bit strange.

10110111 commented 6 years ago

Well, as I understand, the new driver version just introduced an "inexact" optimization, which leads to increased error. The particular change (see the commit diff) seems to be exact to me, I don't quite understand why it increases the errors, but I found the commit via git-bisect, and reverting it "fixes" the tests, so I'm reasonably sure it's the one. Anyway, if you think that failed tests on other machines than your is acceptable, then I'll just close the issue.

10110111 commented 6 years ago

FWIW, this issue is being tracked at Mesa bug tracker as bug 103616.