-
Notifications
You must be signed in to change notification settings - Fork 52
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
DepthCameraTest.DepthCameraBoxes/ogre2 failing on macOS #369
Comments
Ugh. This bug was supposed to be fixed with #339 The root of the problem is that the value on memory in floating point representation was very close to 0 (e.g. blue = 0xff while everything else including alpha is 0x00 is 3.57331e-43f) so GPU was flushing it to 0.0f. Full analysis on #332 This is probably HW / driver specific so full info on your OS version and HW model is appreciated |
These tests ran in one of our CI machines: https://build.osrfoundation.org/computer/mac-t1000.catalina/ Maybe 🧑🌾 @scpeters can help digging into why it's still failing on that machine. |
Yes, it only seems to fail on that machine. Here is some info about the operating system and hardware: Some info from
|
Same failure again on t1000: https://build.osrfoundation.org/job/ignition_rendering-ci-ign-rendering5-homebrew-amd64/19/ |
I forgot to comment on this ticket:
This GPU has multiple HW bugs which drivers have to workaround. I'm not surprised it randomly fails on macOS on this HW given that Apple isn't paying much attention to GL drivers. Unfortunately this bug is nearly unfixable for that system. Perhaps a full rewrite on how data is stored could fix it (i.e. stop reinterpret casting ints to floats, that'd be a great start); but there are other bugs in Apple's GL implementation as well when dealing with UINT/SINT formats (vs UNORM/SNORM formats) |
👨🌾 This test and #253 started failing recently on Citadel. Here it was working fine: ignition_rendering-ci-ign-rendering3-homebrew-amd64#72 The problem may be triggered by new versions of the dependency packages for the job. For now we'll disable the tests on Citadel (Backporting #405) and attach the logs of these jobs to this issue so they can be investigated later. FYI: @Crola1702 |
This bug will be fixed for good in Garden once PR #785 gets merged. It may be possible to backport the changes to Fortress. Update: PR #797 is a backport to Fortress. Update 2: This bug cannot be fixed in Citadel, and Edifice is already EOL. AFAICT this ticket should be closed after the PRs are merged. |
This PR adds a heightmap test. Almost all issues in #546 are covered. Only Thermal Camera is not covered. Fixes #332 (again) for macOS and possibly any OS/HW/Driver combination. Fixes #369 Signed-off-by: Matias N. Goldberg <[email protected]> Co-authored-by: Ian Chen <[email protected]>
Fixes #332 (again) for macOS and possibly any OS/HW/Driver combination. Fixes #369 For a very long time macOS (and possibly other OS/HW/Driver combination) would fail the tests because the shader code was doing (simplified, in C to convey the explanation): ``` uint32_t valueToStore = r << 24 | g << 16 | b << 8 | a; float output; output = (float*)&valueToStore; return output; ``` In ticket #332 I made a deep analysis and found out that given the wrong conditions, the bit pattern would result in either a denormal or a NaN in floating point; which risks being flushed to 0 (or set all types of NaN to the same type bit pattern of NaN). Although the ticket was closed and tagged as "fixed", on some OS/HW/Driver combinations (e.g. macOS + Metal) this error would reappear. This isn't just a mere test failure. This is an actual bug. Running DepthCamera in macOS could result in wrong readings. This PR fixes the problem for good by using RGBA32_UINT instead of RGBA32_FLOAT; and having uints be reinterpreted to floats and back when needed; which is well-defined and much more stable as far as GPU shader compilers go. The same fix is also part of PR #785 which targets Garden and includes other changes. This PR is a backport specific for Fortress. Signed-off-by: Matias N. Goldberg <[email protected]>
Environment
Source (latest Citadel 9341eb2 and Ediface 44a1948)
Description
Example ign-rendering5 failure: https://build.osrfoundation.org/job/ignition_rendering-ci-ign-rendering5-homebrew-amd64/17/testReport/(root)/DepthCamera_DepthCameraTest/DepthCameraBoxes_ogre2/
Example ign-rendering3 failure: https://build.osrfoundation.org/job/ignition_rendering-ci-ign-rendering3-homebrew-amd64/44/testReport/junit/(root)/DepthCamera_DepthCameraTest/DepthCameraBoxes_ogre2/
Output
The output is long and repeats). Here is the first bunch of output before it starts repeating:
The text was updated successfully, but these errors were encountered: