Comments (7)
The issue only happens when EMBREE_RAY_PACKETS=On
from embree-aarch64.
I can confirm that NEON.update used to work and now fails.
For no particular reason, I've selected to track the introduction of FAILED for
std::vector<std::string> arguments = { "", "--no-colors", "--run .*SSE2.update.dynamic.DynamicFast.LowQuality.Intersect4.*", "--sequential" };
, which is 1 of 120 update tests now failing.
I can confirm that:
8246a54 PASSED
4ecf706 PASSED
9133976 PASSED
d6185d1 PASSED
5f3350f FAILED
ba6d997 FAILED
I briefly debugged into the failure but could not pinpoint the cause. There are minute numerical differences compared to SSE2 that eventually lead to different branching, but nothing particular stands point.
Any idea what might cause it?
from embree-aarch64.
I was able to pin-point the failure to a single line of code that was introduced with 5f3350f
I ran the 'verify' suite before with 316c2fb (left) and after (right) the reversal with packets enabled:
verify_before_sse2_with_packets.txt
verify_before_avx2_with_packets.crashlog.txt
verify_after_sse2__with_packets.txt
verify_after_avx2__with_packets.crashlog.txt
For SSE2 / NEON, all tests will pass.
Since the reversal will impact performance to a significant degree, I refrain from making such a merge request right away. I suggest to investigate the numerical behavior over the next days. Maybe we come up with a better solution.
I believe the "AVX2 emulation"-related crashes are caused by access to functions that are not present because of the absence of the "AVX" code path. We may have to improve the function dispatch for NEON2X in this regard. I will debug into this more closely.
from embree-aarch64.
Patch incoming
Fixed in #41
from embree-aarch64.
PR #44 has been merged and update
test in verify
all passes for every ISA configuration(NEON, AVX). So I think its ready to close this issue.
from embree-aarch64.
I agree, I also think this issue has been fixed. Many thanks to @Developer-Ecosystem-Engineering !
from embree-aarch64.
@maikschulze @Developer-Ecosystem-Engineering
I have updated README: 54a6ebc
from embree-aarch64.
Related Issues (20)
- Road to intel embree v3.9.0 and beyond HOT 14
- curve_intersector_virtual.cpp takes too much time to compile(aarch64-v3.8.0) HOT 6
- verify NEON seg faults HOT 2
- `verify` watertight test fails to pass HOT 1
- Improve the accuracy of minps, maxps, rcp, rsqrt in NEON HOT 16
- Use newer SSE2NEON HOT 1
- SubD GridSOA seg faults om aarch64 (v3.11.0) HOT 2
- Watertight test fails in `verify` HOT 2
- SSE2NEON mapping for _mm_sqrt_ps(0) does not return 0 HOT 3
- support libc++ build on aarch64 linux + clang
- Code Changes that impact x64 HOT 3
- Lots of `verify` test failures in v3.12.0 merge HOT 2
- Internal compilation error(implicit_conv_expr) when using gcc8 ~ 10. HOT 1
- verify crashes for AVX2/NEON2X with ray packets HOT 1
- Native aarch64 build on Travis CI HOT 4
- create releases HOT 5
- verify fails to execute on M1 macOS HOT 5
- FPS degradation in tutorial code with GUI on M1 macOS
- Possible assertion at checkPadding16 HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from embree-aarch64.