VPP requires 1G pagesizes on ThunderX nodes, so switch from 2M to 1G
when DPDK is used.
While at it, extend the Fuel j2 macro to accomodate different naming
of virtual function network devices based on the driver used (vfio).
Change-Id: Ic29ce04867955282b6f988ed69a44b316ffdc994
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
{{ nic }}{% if vlan | int > 0 %}.{{ vlan }}{% endif %}
{%- endmacro -%}
{{ nic }}{% if vlan | int > 0 %}.{{ vlan }}{% endif %}
{%- endmacro -%}
-{%- macro vpp_interface_str(speed, pci_addr) -%}
+{%- macro vpp_interface_str(speed, pci_addr, driver = '') -%}
{%- set p = pci_addr.replace('.', ':').split(':') -%}
{%- set p = pci_addr.replace('.', ':').split(':') -%}
- {%- set s = 'GigabitEthernet%d/%d/%d' | format(p[-3] | int(0, 16),
- p[-2] | int(0, 16),
- p[-1] | int(0, 16)) -%}
- {% if '40g' in speed %}Forty{% elif '10g' in speed %}Ten{% endif %}{{ s }}
+ {%- set s = 'Ethernet%d/%d/%d' | format(p[-3] | int(0, 16),
+ p[-2] | int(0, 16),
+ p[-1] | int(0, 16)) -%}
+ {%- if 'vfio' in driver -%}
+ VirtualFunction{{ s }}
+ {%- else -%}
+ {% if '40g' in speed %}Forty{% elif '10g' in speed %}Ten{% endif %}Gigabit{{ s }}
+ {%- endif -%}
compute_kernel_isolcpu: *nova_cpu_pinning_common_arm
dpdk:
nova_cpu_pinning: "12-47"
compute_kernel_isolcpu: *nova_cpu_pinning_common_arm
dpdk:
nova_cpu_pinning: "12-47"
- compute_hugepages_size: 2M
- compute_hugepages_count: 8192
- compute_hugepages_mount: /mnt/hugepages_2M
+ compute_hugepages_size: 1G
+ compute_hugepages_count: 16
+ compute_hugepages_mount: /mnt/hugepages_1G
compute_kernel_isolcpu: *nova_cpu_pinning_common_arm
compute_dpdk_driver: vfio
compute_ovs_pmd_cpu_mask: "0x300"
compute_kernel_isolcpu: *nova_cpu_pinning_common_arm
compute_dpdk_driver: vfio
compute_ovs_pmd_cpu_mask: "0x300"
compute_kernel_isolcpu: *nova_cpu_pinning_common
dpdk:
nova_cpu_pinning: "12-47"
compute_kernel_isolcpu: *nova_cpu_pinning_common
dpdk:
nova_cpu_pinning: "12-47"
- compute_hugepages_size: 2M
- compute_hugepages_count: 8192
- compute_hugepages_mount: /mnt/hugepages_2M
+ compute_hugepages_size: 1G
+ compute_hugepages_count: 16
+ compute_hugepages_mount: /mnt/hugepages_1G
compute_kernel_isolcpu: *nova_cpu_pinning_common
compute_dpdk_driver: vfio
compute_ovs_pmd_cpu_mask: "0x300"
compute_kernel_isolcpu: *nova_cpu_pinning_common
compute_dpdk_driver: vfio
compute_ovs_pmd_cpu_mask: "0x300"
compute_kernel_isolcpu: *nova_cpu_pinning_common_a
dpdk:
nova_cpu_pinning: "4-47"
compute_kernel_isolcpu: *nova_cpu_pinning_common_a
dpdk:
nova_cpu_pinning: "4-47"
- compute_hugepages_size: 2M
- compute_hugepages_count: 8192
- compute_hugepages_mount: /mnt/hugepages_2M
+ compute_hugepages_size: 1G
+ compute_hugepages_count: 16
+ compute_hugepages_mount: /mnt/hugepages_1G
compute_kernel_isolcpu: *nova_cpu_pinning_common_a
compute_dpdk_driver: vfio
compute_ovs_pmd_cpu_mask: "0xc"
compute_kernel_isolcpu: *nova_cpu_pinning_common_a
compute_dpdk_driver: vfio
compute_ovs_pmd_cpu_mask: "0xc"
compute_kernel_isolcpu: *nova_cpu_pinning_common
dpdk:
nova_cpu_pinning: "12-47"
compute_kernel_isolcpu: *nova_cpu_pinning_common
dpdk:
nova_cpu_pinning: "12-47"
- compute_hugepages_size: 2M
- compute_hugepages_count: 8192
- compute_hugepages_mount: /mnt/hugepages_2M
+ compute_hugepages_size: 1G
+ compute_hugepages_count: 16
+ compute_hugepages_mount: /mnt/hugepages_1G
compute_kernel_isolcpu: *nova_cpu_pinning_common
compute_dpdk_driver: vfio
compute_ovs_pmd_cpu_mask: "0x300"
compute_kernel_isolcpu: *nova_cpu_pinning_common
compute_dpdk_driver: vfio
compute_ovs_pmd_cpu_mask: "0x300"
compute_kernel_isolcpu: *nova_cpu_pinning_common
dpdk:
nova_cpu_pinning: "12-47"
compute_kernel_isolcpu: *nova_cpu_pinning_common
dpdk:
nova_cpu_pinning: "12-47"
- compute_hugepages_size: 2M
- compute_hugepages_count: 8192
- compute_hugepages_mount: /mnt/hugepages_2M
+ compute_hugepages_size: 1G
+ compute_hugepages_count: 16
+ compute_hugepages_mount: /mnt/hugepages_1G
compute_kernel_isolcpu: *nova_cpu_pinning_common
compute_dpdk_driver: vfio
compute_ovs_pmd_cpu_mask: "0x300"
compute_kernel_isolcpu: *nova_cpu_pinning_common
compute_dpdk_driver: vfio
compute_ovs_pmd_cpu_mask: "0x300"