answer = input("Please enter the netmask [n.n.n.n]: ")
plen = ip_address(answer).netmask_bits()
return '{}/{}'.format(ipaddr, plen)
- except None:
+ except ValueError:
print("Please enter a valid IPv4 address.")
@staticmethod
vpp_main_core = node['cpu']['vpp_main_core']
else:
vpp_main_core = 0
- if vpp_main_core is not 0:
+ if vpp_main_core != 0:
cpu += ' main-core {}\n'.format(vpp_main_core)
# Get workers
# If the total mbufs is not 0 or less than the default, set num-bufs
logging.debug("Total mbufs: {}".format(total_mbufs))
- if total_mbufs is not 0 and total_mbufs > 16384:
+ if total_mbufs != 0 and total_mbufs > 16384:
devices += '\n num-mbufs {}'.format(total_mbufs)
return devices
other_cpus_end = other_cpus_start + \
node['cpu']['total_other_cpus'] - 1
other_workers = None
- if other_cpus_end is not 0:
+ if other_cpus_end != 0:
other_workers = (other_cpus_start, other_cpus_end)
node['cpu']['other_workers'] = other_workers
# then we shouldn't get workers
total_workers_node = 0
if len(ports_per_numa):
- total_workers_node = total_vpp_cpus / len(ports_per_numa)
+ total_workers_node = total_vpp_cpus // len(ports_per_numa)
total_main = 0
if reserve_vpp_main_core:
total_main = 1
total_mbufs = 0
- if total_main + total_workers_node is not 0:
+ if total_main + total_workers_node != 0:
for item in ports_per_numa.items():
numa_node = item[0]
value = item[1]
all_workers = []
if other_workers is not None:
all_workers = [other_workers]
- if vpp_main_core is not 0:
+ if vpp_main_core != 0:
all_workers += [(vpp_main_core, vpp_main_core)]
all_workers += vpp_workers
isolated_cpus = ''
iso_cpul = iso_cpu_str.split(',')
for iso_cpu in iso_cpul:
isocpuspl = iso_cpu.split('-')
- if len(isocpuspl) is 1:
+ if len(isocpuspl) == 1:
current_iso_cpus += 1
else:
first = int(isocpuspl[0])
print("Then to improve performance start reserving cores and "
"adding queues as needed.")
- max_vpp_cpus = 4
+ # Leave 1 for the general system
+ total_cpus -= 1
+ max_vpp_cpus = min(total_cpus, 4)
total_vpp_cpus = 0
if max_vpp_cpus > 0:
question = "\nHow many core(s) shall we reserve for " \
total_vpp_cpus = self._ask_user_range(question, 0, max_vpp_cpus, 0)
node['cpu']['total_vpp_cpus'] = total_vpp_cpus
- max_other_cores = (total_cpus - total_vpp_cpus) / 2
- question = 'How many core(s) do you want to reserve for ' \
- 'processes other than VPP? [0-{}][0]? '. \
- format(str(max_other_cores))
- total_other_cpus = self._ask_user_range(
- question, 0, max_other_cores, 0)
- node['cpu']['total_other_cpus'] = total_other_cpus
+ total_other_cpus = 0
+ max_other_cores = total_cpus - total_vpp_cpus
+ if max_other_cores > 0:
+ question = 'How many core(s) do you want to reserve for ' \
+ 'processes other than VPP? [0-{}][0]? '. \
+ format(str(max_other_cores))
+ total_other_cpus = self._ask_user_range(question, 0, max_other_cores, 0)
+ node['cpu']['total_other_cpus'] = total_other_cpus
- max_main_cpus = max_vpp_cpus + 1 - total_vpp_cpus
+ max_main_cpus = total_cpus - total_vpp_cpus - total_other_cpus
reserve_vpp_main_core = False
if max_main_cpus > 0:
question = "Should we reserve 1 core for the VPP Main thread? "
node['cpu']['cpus_per_node'] = cpus_per_node
# Ask the user some questions
- if ask_questions and total_cpus >= 8:
+ if ask_questions and total_cpus >= 4:
self._modify_cpu_questions(node, total_cpus, numa_nodes)
# Populate the interfaces with the numa node
if 'cpu' in node and 'total_mbufs' in node['cpu']:
total_mbufs = node['cpu']['total_mbufs']
- if total_mbufs is not 0:
+ if total_mbufs != 0:
print("Total Number of Buffers: {}".format(total_mbufs))
vpp = VppPCIUtil(node)
hpg = VppHugePageUtil(node)
hpg.show_huge_pages()
+ @staticmethod
+ def has_interfaces(node):
+ """
+ Check for interfaces, return tru if there is at least one
+
+ :returns: boolean
+ """
+ if 'interfaces' in node and len(node['interfaces']):
+ return True
+ else:
+ return False
+
@staticmethod
def min_system_resources(node):
"""
there is enough.
:returns: boolean
- :rtype: dict
"""
min_sys_res = True
# Show the current interfaces with IP addresses
current_ints = VPPUtil.get_int_ip(node)
- if current_ints is not {}:
+ if current_ints != {}:
print("\nThese are the current interfaces with IP addresses:")
for items in sorted(current_ints.items()):
name = items[0]