diff options
author | Ross Brattain <ross.b.brattain@intel.com> | 2017-04-24 23:25:48 +0200 |
---|---|---|
committer | Ross Brattain <ross.b.brattain@intel.com> | 2017-08-14 16:22:51 -0700 |
commit | a4d2958ddb727c2aaf46956cbdbf7718bfd0be89 (patch) | |
tree | dcd1293eb6306fd1a955018c26d59e7e0293c864 /yardstick/common/utils.py | |
parent | fb57af27e97bbd27e5eeeeddc766518e3c700f3c (diff) |
PROX VNF and TG
PROX was added to samplevnf project
https://git.opnfv.org/samplevnf/tree/VNFs/DPPD-PROX
JIRA: YARDSTICK-638
Change-Id: If9875b1130c6bed87deb8720b0d8b28ede9289d9
Signed-off-by: Ross Brattain <ross.b.brattain@intel.com>
Diffstat (limited to 'yardstick/common/utils.py')
-rw-r--r-- | yardstick/common/utils.py | 54 |
1 files changed, 29 insertions, 25 deletions
diff --git a/yardstick/common/utils.py b/yardstick/common/utils.py index 759f43d7c..f2455be3a 100644 --- a/yardstick/common/utils.py +++ b/yardstick/common/utils.py @@ -297,7 +297,7 @@ def get_ip_version(ip_addr): return address.version -def ip_to_hex(ip_addr): +def ip_to_hex(ip_addr, separator=''): try: address = ipaddress.ip_address(six.text_type(ip_addr)) except ValueError: @@ -306,7 +306,11 @@ def ip_to_hex(ip_addr): if address.version != 4: return ip_addr - return '{:08x}'.format(int(address)) + + if not separator: + return '{:08x}'.format(int(address)) + + return separator.join('{:02x}'.format(octet) for octet in address.packed) def try_int(s, *args): @@ -319,6 +323,29 @@ def try_int(s, *args): class SocketTopology(dict): + @classmethod + def parse_cpuinfo(cls, cpuinfo): + socket_map = {} + + lines = cpuinfo.splitlines() + + core_details = [] + core_lines = {} + for line in lines: + if line.strip(): + name, value = line.split(":", 1) + core_lines[name.strip()] = try_int(value.strip()) + else: + core_details.append(core_lines) + core_lines = {} + + for core in core_details: + socket_map.setdefault(core["physical id"], {}).setdefault( + core["core id"], {})[core["processor"]] = ( + core["processor"], core["core id"], core["physical id"]) + + return cls(socket_map) + def sockets(self): return sorted(self.keys()) @@ -331,29 +358,6 @@ class SocketTopology(dict): proc in procs) -def parse_cpuinfo(cpuinfo): - socket_map = {} - - lines = cpuinfo.splitlines() - - core_details = [] - core_lines = {} - for line in lines: - if line.strip(): - name, value = line.split(":", 1) - core_lines[name.strip()] = try_int(value.strip()) - else: - core_details.append(core_lines) - core_lines = {} - - for core in core_details: - socket_map.setdefault(core["physical id"], {}).setdefault( - core["core id"], {})[core["processor"]] = ( - core["processor"], core["core id"], core["physical id"]) - - return SocketTopology(socket_map) - - def config_to_dict(config): return {section: dict(config.items(section)) for section in config.sections()} |