code: def nvmlDeviceGetClockInfo(handle, type):
      r
      c_clock = c_uint()
      fn = _nvmlGetFunctionPointer("nvmlDeviceGetClockInfo")
      ret = fn(handle, _nvmlClockType_t(type), byref(c_clock))
      _nvmlCheckReturn(ret)
      return bytes_to_str(c_clock.value)
docs: r"""
      /**
       * Retrieves the current clock speeds for the device.
       *
       * For Fermi &tm; or newer fully supported devices.
       *
       * See \ref nvmlClockType_t for details on available clock information.
       *
       * @param device                               The identifier of the target device
       * @param type                                 Identify which clock domain to query
       * @param clock                                Reference in which to return the clock speed in MHz
       *
       * @return
       *         - \ref NVML_SUCCESS                 if \a clock 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 clock is NULL
       *         - \ref NVML_ERROR_NOT_SUPPORTED     if the device cannot report the specified clock
       *         - \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 nvmlDeviceGetClockInfo