mitsuba-renderer / drjit

Dr.Jit — A Just-In-Time-Compiler for Differentiable Rendering
BSD 3-Clause "New" or "Revised" License
586 stars 43 forks source link

Missing overload for Arm Neon intrinsics #63

Open flanggut opened 2 years ago

flanggut commented 2 years ago

Hi! I am evaluating if it is worth switching some code from enoki to drjit. I noticed that currently there is no packet overload for Neon intrinsics, i.e. something corresponding to enokis array_neon.h. Are you planning on adding this at a later point, or would you welcome some PRs adding this back?

Speierers commented 2 years ago

In Dr.Jit we swtiched to JIT compiled LLVM kernel that can be executed in parallel on CPU. This sorts of replaces the packet mode of Enoki for efficient vectorization.

This being said Dr.Jit still exposes the packets type as we find those convient in some cases. I am not sure onto why we dropped the support for Neon intrinsics. @wjakob will probably know better.

wjakob commented 2 years ago

Hi -- this fell under the table at some point because it didn't quite seem important enough given the strong focus on dynamic compilation. We would definitely be interested in a ported version of the NEON intrinsic backend.