RenderKit / oidn

Intel® Open Image Denoise library
https://www.openimagedenoise.org/
Apache License 2.0
1.74k stars 160 forks source link

Building for Windows on ARM #143

Closed steplong closed 1 year ago

steplong commented 1 year ago

I'm trying to building for Windows on ARM, but it looks like mkl-dnn is built for x64. How were the sources chosen in oidn/cmake/oidn_dnnl.cmake? It looks like there are more sources in mkl_dnn/src/cpu/x64. I also modified CMakeLists.txt:

diff --git a/CMakeLists.txt b/CMakeLists.txt
index 96ca5d1..583eeb6 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -85,6 +85,8 @@ if(OIDN_ARCH STREQUAL "X64")
 endif()
 if(APPLE AND OIDN_ARCH STREQUAL "ARM64")
   list(APPEND OIDN_NEURAL_RUNTIMES "BNNS")
+elseif(OIDN_ARCH STREQUAL "ARM64")
+  list(APPEND OIDN_NEURAL_RUNTIMES "DNNL")
atafra commented 1 year ago

Sorry, OIDN does not have generic ARM support yet, only Apple Silicon. It's not possible to compile for Windows/Linux on ARM.

steplong commented 1 year ago

Hi, what would be needed to add generic ARM support?

atafra commented 1 year ago

It would be a complex task. It's on our roadmap but we're currently focusing on implementing GPU support.

StefanBruens commented 1 year ago

Can you please reopen this one? It is not actually completed, but having it in "Closed" state makes it harder to find.

Maybe you can also improve the README.md - it mentions oneDNN, but that does not (no longer) exclude other architectures, and Apple Silicon apparently does not use oneDNN.