def _from_dict(cls, data_dict): # NOTE(sahid): Used as legacy, could be renamed in # _legacy_from_dict_ to the future to avoid confusing. cpuset = hardware.parse_cpu_spec(data_dict.get('cpus', '')) memory = data_dict.get('mem', {}).get('total', 0) cell_id = data_dict.get('id') pagesize = data_dict.get('pagesize') return cls(id=cell_id, cpuset=cpuset, memory=memory, pagesize=pagesize)
def _from_dict(cls, data_dict): cpuset = hardware.parse_cpu_spec( data_dict.get('cpus', '')) cpu_usage = data_dict.get('cpu_usage', 0) memory = data_dict.get('mem', {}).get('total', 0) memory_usage = data_dict.get('mem', {}).get('used', 0) cell_id = data_dict.get('id') return cls(id=cell_id, cpuset=cpuset, memory=memory, cpu_usage=cpu_usage, memory_usage=memory_usage, mempages=[], pinned_cpus=set([]), siblings=[])
def obj_from_db_obj(cls, db_obj): if 'patron_object.name' in db_obj: obj_topology = cls.obj_from_primitive(db_obj) else: # NOTE(sahid): This compatibility code needs to stay until we can # guarantee that all compute nodes are using RPC API => 3.40. cell = db_obj['cells'][0] ram_ratio = cell['mem']['limit'] / float(cell['mem']['total']) cpu_ratio = cell['cpu_limit'] / float( len(hardware.parse_cpu_spec(cell['cpus']))) obj_topology = NUMATopologyLimits(cpu_allocation_ratio=cpu_ratio, ram_allocation_ratio=ram_ratio) return obj_topology
def _from_dict(cls, data_dict): cpuset = hardware.parse_cpu_spec(data_dict.get('cpus', '')) cpu_usage = data_dict.get('cpu_usage', 0) memory = data_dict.get('mem', {}).get('total', 0) memory_usage = data_dict.get('mem', {}).get('used', 0) cell_id = data_dict.get('id') return cls(id=cell_id, cpuset=cpuset, memory=memory, cpu_usage=cpu_usage, memory_usage=memory_usage, mempages=[], pinned_cpus=set([]), siblings=[])
def obj_from_db_obj(cls, db_obj): if 'patron_object.name' in db_obj: obj_topology = cls.obj_from_primitive(db_obj) else: # NOTE(sahid): This compatibility code needs to stay until we can # guarantee that all compute nodes are using RPC API => 3.40. cell = db_obj['cells'][0] ram_ratio = cell['mem']['limit'] / float(cell['mem']['total']) cpu_ratio = cell['cpu_limit'] / float(len(hardware.parse_cpu_spec( cell['cpus']))) obj_topology = NUMATopologyLimits( cpu_allocation_ratio=cpu_ratio, ram_allocation_ratio=ram_ratio) return obj_topology