You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
if desired, it can compile the same source code to multiple different implementations
The above line from README suggests this but I couldn't find examples/tutorials/other references regarding the process to do so. Would it be possible to add more information regarding this?
I would also like to generate multiple versions (scalar, avx512, avx2, sse, cuda) to benchmark them (since sometimes avx drops the clock speed and can actually hurt performance in multi-threaded applications). Would it be possible to do this in the same binary?
The text was updated successfully, but these errors were encountered:
then change the compiler options for each version you want to build in CMake
That would not be ideal (for my case, but a sound advice). Ideally, I would want a single binary to preserve existing pipeline (such as comparing results).
Is it possible to pass a "tag" to tell enoki which version to prefer using overloading? Something like how C++17's execution policy would be ideal. (Then I can use testing frameworks to run everything with type parametrization)
You can probably do it in a single binary. You can conditionally name each of the method symbols based on the compilation options and statically link against all of them.
The above line from README suggests this but I couldn't find examples/tutorials/other references regarding the process to do so. Would it be possible to add more information regarding this?
I would also like to generate multiple versions (scalar, avx512, avx2, sse, cuda) to benchmark them (since sometimes avx drops the clock speed and can actually hurt performance in multi-threaded applications). Would it be possible to do this in the same binary?
The text was updated successfully, but these errors were encountered: