diff options
-rw-r--r-- | conf/02_vswitch.conf | 6 | ||||
-rw-r--r-- | vswitches/ovs_dpdk_vhost.py | 11 |
2 files changed, 16 insertions, 1 deletions
diff --git a/conf/02_vswitch.conf b/conf/02_vswitch.conf index 48bf5964..a9202c84 100644 --- a/conf/02_vswitch.conf +++ b/conf/02_vswitch.conf @@ -45,6 +45,12 @@ VSWITCH_VANILLA_KERNEL_MODULES = ['openvswitch'] # directory where hugepages will be mounted on system init HUGEPAGE_DIR = '/dev/hugepages' +# Sets OVS PMD core mask to 2 for CPU core 1 affinitization +VSWITCH_PMD_CPU_MASK = '2' +VSWITCH_AFFINITIZATION_ON = 1 + +VSWITCH_FLOW_TIMEOUT = '30000' + # list of tuples of format (path, module_name), which will be inserted # using 'insmod' on system init diff --git a/vswitches/ovs_dpdk_vhost.py b/vswitches/ovs_dpdk_vhost.py index 3ff41260..154d5357 100644 --- a/vswitches/ovs_dpdk_vhost.py +++ b/vswitches/ovs_dpdk_vhost.py @@ -65,7 +65,16 @@ class OvsDpdkVhost(IVSwitch): bridge = OFBridge(switch_name) bridge.create() bridge.set_db_attribute('Open_vSwitch', '.', - 'other_config:max-idle', '60000') + 'other_config:max-idle', + settings.getValue('VSWITCH_FLOW_TIMEOUT')) + + if settings.getValue('VSWITCH_AFFINITIZATION_ON') == 1: + # Sets the PMD core mask to VSWITCH_PMD_CPU_MASK + # for CPU core affinitization + bridge.set_db_attribute('Open_vSwitch', '.', + 'other_config:pmd-cpu-mask', + settings.getValue('VSWITCH_PMD_CPU_MASK')) + bridge.set_db_attribute('Bridge', bridge.br_name, 'datapath_type', 'netdev') self._bridges[switch_name] = bridge |