Ejemplo n.º 1
0
Archivo: vm.py Proyecto: OpenVZ/vcmmd
    def get_node_list(self):
        '''Get list of nodes where VM is running
        NOTE: only for memory
        '''
        try:
            ret = self._libvirt_domain.numaParameters()
        except libvirtError as err:
            raise Error(str(err))

        return parse_range_list(ret['numa_nodeset'])
Ejemplo n.º 2
0
 def __init__(self, **kv):
     self._kv = {}
     for k, v in kv.iteritems():
         if k not in _VEConfigFields:
             raise TypeError("unexpected keyword argument '%s'" % k)
         if k not in _VEConfigFields_string:
             self._kv[str(k)] = int(v)
         else:
             if k in ["nodelist", "cpulist"]:
                 self._kv[str(k)] = parse_range_list(str(v))
                 continue
             self._kv[str(k)] = str(v)
Ejemplo n.º 3
0
Archivo: numa.py Proyecto: OpenVZ/vcmmd
    def init(cls):
        if cls.__inited:
            return
        cls.nodes_ids = cls.get_nodes_ids()
        cls.cpu_list = {}
        for n in cls.nodes_ids[:]:
	    node_dir = cls.NUMA_NODE_SYS_PATH % n
            with open(node_dir + "cpulist") as f:
                cpu_list = parse_range_list(f.read())
                if not cpu_list:
                    cls.nodes_ids.remove(n)
                    continue
                cls.cpu_list[n] = cpu_list
        cls.__inited = True
Ejemplo n.º 4
0
 def get_node_list(self):
     return parse_range_list(self._read_file_str("mems"))
Ejemplo n.º 5
0
 def get_cpu_list(self):
     return parse_range_list(self._read_file_str("cpus"))
Ejemplo n.º 6
0
Archivo: numa.py Proyecto: OpenVZ/vcmmd
 def get_nodes_ids():
     with open("/sys/devices/system/node/online") as node_list:
         return parse_range_list(node_list.read())