-
Notifications
You must be signed in to change notification settings - Fork 466
Build more information
NOTE: DPDK building needs SSE3/SSE4.x instruction set support and you might get a Build Error similar as follows,
"In file included from ../../src/dpdk_lib18/librte_pmd_ixgbe/ixgbe_rxtx_vec.c:41:0: /usr/lib/gcc/x86_64-linux-gnu/4.8/include/tmmintrin.h:31:3:** error: #error "SSSE3 instruction set not enabled"** # error "SSSE3 instruction set not enabled" ../../src/dpdk_lib18/librte_pmd_ixgbe/ixgbe_rxtx_vec.c: In function ‘_recv_raw_pkts_vec’:
SSE3/SSE4.x should be present/enabled in you PC by default, except
- 1.If its an age old PC
- 2.Its a VM without SSE3/SSE4.x enabled.
Suggestions:
-
For 1. Google your CPU for SSE3/SSE4.x support, else try Qemu-kvm(it has capability to emulate those instruction sets,Mind you! It will impact performance of the VM ,if emulated)
-
For 2. The below steps will help only when using Qemu-Kvm or Oracle VBox
Qemu-Kvm: When creating VM add flag "-cpu host", This will pass all the know instruction sets known to the Host and also the instruction sets that Qemu can emulate to the Guest VM. To pass only required features to the guests KVM CPU TUNING
Oracle-VBox: Enable CPU flags (SSE 4.1 / SSE 4.2) in VirtualBox virtual machine. To provide SSE 4.1 / SSE 4.2 support to guest OS, the host CPU has to support these instruction sets. Starting with Oracle VirtualBox 4.3.8, it is possible to enable these instructions for certain guest OSes using the following commands:
$ VBoxManage setextradata "VM name" VBoxInternal/CPUM/SSE4.1 1
$ VBoxManage setextradata "VM name" VBoxInternal/CPUM/SSE4.2 1