NGX on Linux

Hi there

I’m trying to get the NGX sample code to work on Linux, using the 450.57 driver and a Quadro RTX 6000.

With some minor fixes to the source it compiles and links but when run it fails with “NVSDK_NGX_Feature_ImageSuperResolution Unavailable on this System”.

I assume this is because there’s code in nvngx_dlisr.dll which is shipped with the (Windows) SDK (but not explicitly linked into the sample binary, it seems) but for which I don’t have a Linux equivalent.

Is there a Linux equivalent of this and other feature DLLs? If there isn’t, what is the point of having NGX support in the Linux driver?

Thanks

Phil

4 Likes

Hello,

Thank you for your great feature!

I installed a new driver too with the libnvidia-ngx library.
Is it already possible to run the NGX Super Resolution application on Linux?

Eylon

Hello,

After a lot of hacking, I managed to wrap nvngx_dlisr.dll into a Linux shared library that would be almost compatible with the provided libnvidia-ngx.so library (almost because we need to patch it to disable a custom nvidia signature checking mechanism).

This basically involved loading the original Windows DLL, wraping the calls to the cuDNN library (easy because they are imported) and cudart (far more difficult because cudart is statically linked into nvngx_dlisr.dll) and a few hacks around the Windows MSVCRT.

This is far from being practical to use in production, but the main point is: there is no technical reason that could justify why nvidia don’t ship this for Linux.