diff options
author | Serhiy Pshyk <serhiyx.pshyk@intel.com> | 2018-10-04 10:21:33 +0100 |
---|---|---|
committer | Abhijit Sinha <abhijit.sinha@intel.com> | 2018-10-27 18:42:17 +0000 |
commit | 7c7a14132588f99c6291da9037dc61d0d8ea935a (patch) | |
tree | 3720e4b07c3490559b282417e3f1d8b74b5e2a04 /yardstick/common | |
parent | 820b81753dc50ccd8762806f2d5c8398c319c4a0 (diff) |
Setup hugepages on SA host(sriov, ovs_dpdk)
JIRA: YARDSTICK-1461
Change-Id: Ia1f5026eee989672aac57775ec9dd182df658fa4
Signed-off-by: Serhiy Pshyk <serhiyx.pshyk@intel.com>
Diffstat (limited to 'yardstick/common')
-rw-r--r-- | yardstick/common/utils.py | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/yardstick/common/utils.py b/yardstick/common/utils.py index 31885c073..205247947 100644 --- a/yardstick/common/utils.py +++ b/yardstick/common/utils.py @@ -499,6 +499,23 @@ def read_meminfo(ssh_client): return output +def setup_hugepages(ssh_client, size_kb): + """Setup needed number of hugepages for the size specified""" + + NR_HUGEPAGES_PATH = '/proc/sys/vm/nr_hugepages' + meminfo = read_meminfo(ssh_client) + hp_size_kb = int(meminfo['Hugepagesize']) + hp_number = int(abs(size_kb / hp_size_kb)) + ssh_client.execute( + 'echo %s | sudo tee %s' % (hp_number, NR_HUGEPAGES_PATH)) + hp = six.BytesIO() + ssh_client.get_file_obj(NR_HUGEPAGES_PATH, hp) + hp_number_set = int(hp.getvalue().decode('utf-8').splitlines()[0]) + logger.info('Hugepages size (kB): %s, number claimed: %s, number set: %s', + hp_size_kb, hp_number, hp_number_set) + return hp_size_kb, hp_number, hp_number_set + + def find_relative_file(path, task_path): """ Find file in one of places: in abs of path or relative to a directory path, |