docs: def nvmlDeviceGetPowerManagementLimit(handle):
      r"""
      /**
       * Retrieves the power management limit associated with this device.
       *
       * For Fermi &tm; or newer fully supported devices.
       *
       * The power limit defines the upper boundary for the card's power draw. If
       * the card's total power draw reaches this limit the power management algorithm kicks in.
       *
       * This reading is only available if power management mode is supported.
       * See \ref nvmlDeviceGetPowerManagementMode.
       *
       * @param device                               The identifier of the target device
       * @param limit                                Reference in which to return the power management limit in milliwatts
       *
       * @return
       *         - \ref NVML_SUCCESS                 if \a limit has been set
       *         - \ref NVML_ERROR_UNINITIALIZED     if the library has not been successfully initialized
       *         - \ref NVML_ERROR_INVALID_ARGUMENT  if \a device is invalid or \a limit is NULL
       *         - \ref NVML_ERROR_NOT_SUPPORTED     if the device does not support this feature
       *         - \ref NVML_ERROR_GPU_IS_LOST       if the target GPU has fallen off the bus or is otherwise inaccessible
       *         - \ref NVML_ERROR_UNKNOWN           on any unexpected error
       */
      nvmlReturn_t DECLDIR nvmlDeviceGetPowerManagementLimit
      """
      c_limit = c_uint()
      fn = _nvmlGetFunctionPointer("nvmlDeviceGetPowerManagementLimit")
      ret = fn(handle, byref(c_limit))
      _nvmlCheckReturn(ret)
      return bytes_to_str(c_limit.value)