NVML nvmlInit_v2() was blocked

I write a gpu info lib with nvml, dynamic load the nvml.dll to execute nvml api.
here is demo:

 const auto nvmlModuleName = "nvml.dll";
    m_nvmlModule = ::LoadLibraryA(nvmlModuleName);
    if (m_nvmlModule == nullptr) {
        auto lastError = ::GetLastError();
            qDebug().noquote() << "Loading " << nvmlModuleName
                               << " failed with error code: " << lastError;
    qDebug().noquote() << "Successfully loaded " << nvmlModuleName;

   m_nvmlInit_v2 =  GetProcAddress(m_nvmlModule, "nvmlInit_v2")));// get nvmlInit_v2 function point by GetProcAddress.

    if (m_nvmlInit_v2 == nullptr)
        qDebug().noquote() << "NVML loaded but initialization failed";
    else {
        auto result = m_nvmlInit_v2(); //Block here
        if (result == NVML_SUCCESS)
        qDebug().noquote() << "NVML loaded but initialization failed with : " << result;

This code works , but some time m_nvmlInit_v2() will be blocked in some platform with nvidia gpu(no drive too).
as blow:

any help will be appreciate!

Dear @user107981

I have moved this issue to the NVML section for better traction.

Thank you.