Skip to content

oidn::newDevice returns NULL handle when oidn::DeviceType::HIP is used #262

@StudenteChamp2

Description

@StudenteChamp2

I am upgrading OIDN to 2.3.3 to have support for both AMD and Nvidia GPUs on Windows 11.
When i create a CPU device it works
m_device = oidn::newDevice(oidn::DeviceType::CPU);

When i create a Cuda device it works too:
m_device = oidn::newDevice(oidn::DeviceType::CUDA);

BUT creating a HIP device fails:
m_device = oidn::newDevice(oidn::DeviceType::HIP);

oidn::newDevice(oidn::DeviceType::HIP) returns a NULL handle. See following image:
Image

When the newDevice line is passed the log says that the corresponding DLL is loaded then unloaded
(Win32): Loaded '<path_to_my_app>\x64\Debug\OpenImageDenoise_device_hip.dll'. Module was built without symbols.
(Win32): Unloaded '<path_to_my_app>\x64\Debug\OpenImageDenoise_device_hip.dll'

My hardware: Nvidia GeForce RTX 3060 Laptop GPU.
Tested on my integrated AMD Radeon Graphics it fails too.

Maybe HIP is for AMD cards only and my card is old? But it is contrary to the doc i found
https://github.com/ROCm/HIP

Thanks for helping :)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions