def print_vmstats(self) -> None: try: vm_stat = get_symbol_value("vm_stat") except MissingSymbolError: raise CommandError("Support for new-style vmstat is unimplemented.") from None print(" VM_STAT:") #TODO put this... where? nr_items = VmStat.nr_stat_items stats = [0] * nr_items for item in range(0, nr_items): # TODO abstract atomic? stats[item] = int(vm_stat[item]["counter"]) diffs = [0] * nr_items for zone in for_each_populated_zone(): zone.add_vmstat_diffs(diffs) self.__print_vmstat(stats, diffs) print() print(" VM_EVENT_STATES:") vm_events = VmStat.get_events() names = VmStat.get_event_names() just = max(map(len, names)) for name, val in zip(names, vm_events): print("%s: %d" % (name.rjust(just), val))
def print_vmstats(self): try: vm_stat = getValue("vm_stat") except AttributeError: raise gdb.GdbError("Support for new-style vmstat is unimplemented.") print " VM_STAT:" #TODO put this... where? nr_items = VmStat.nr_stat_items stats = [0L] * nr_items for item in range (0, nr_items): # TODO abstract atomic? stats[item] = long(vm_stat[item]["counter"]) diffs = [0L] * nr_items for zone in for_each_populated_zone(): zone.add_vmstat_diffs(diffs) self.__print_vmstat(stats, diffs) print print " VM_EVENT_STATES:" vm_events = VmStat.get_events() names = VmStat.get_event_names() just = max(map(len, names)) for name, val in zip(names, vm_events): print("%s: %d" % (name.rjust(just), val))
def __print_vmstat(self, vmstat: List[int], diffs: List[int]) -> None: vmstat_names = VmStat.get_stat_names() just = max(map(len, vmstat_names)) nr_items = VmStat.nr_stat_items vmstat = [sum(x) for x in zip(vmstat, diffs)] for i in range(0, nr_items): print("%s: %d (%d)" % (vmstat_names[i].rjust(just), vmstat[i], diffs[i]))