docs: def vm_cputime(vm_=None, **kwargs):
      '''
      Return cputime used by the vms on this hyper in a
      list of dicts:
  
      :param vm_: domain name
      :param connection: libvirt connection URI, overriding defaults
  
          .. versionadded:: 2019.2.0
      :param username: username to connect with, overriding defaults
  
          .. versionadded:: 2019.2.0
      :param password: password to connect with, overriding defaults
  
          .. versionadded:: 2019.2.0
  
      .. code-block:: python
  
          [
              'your-vm': {
                  'cputime' <int>
                  'cputime_percent' <int>
                  },
              ...
              ]
  
      If you pass a VM name in as an argument then it will return info
      for just the named VM, otherwise it will return all VMs.
  
      CLI Example:
  
      .. code-block:: bash
  
          salt '*' virt.vm_cputime
      '''
      conn = __get_conn(**kwargs)
      host_cpus = conn.getInfo()[2]
  
      def _info(dom):
          '''
          Compute cputime info of a domain
          '''
          raw = dom.info()
          vcpus = int(raw[3])
          cputime = int(raw[4])
          cputime_percent = 0
          if cputime:
              # Divide by vcpus to always return a number between 0 and 100
              cputime_percent = (1.0e-7 * cputime / host_cpus) / vcpus
          return {
                  'cputime': int(raw[4]),
                  'cputime_percent': int('{0:.0f}'.format(cputime_percent))
                 }
      info = {}
      if vm_:
          info[vm_] = _info(_get_domain(conn, vm_))
      else:
          for domain in _get_domain(conn, iterable=True):
              info[domain.name()] = _info(domain)
      conn.close()
      return info