同步操作将从 OpenCloudNeXt/DHL 强制同步,此操作会覆盖自 Fork 仓库以来所做的任何修改,且无法恢复!!!
确定后同步将在后台操作,完成时将刷新页面,请耐心等待。
This guide helps you build and install DHL.
First of all, DHL only supports running on Linux system yet.
Our testbed is based on Centos 7.4 with kernel version of 3.10.0-693.17.1.el7
.
For the time being, we haven't tested on other Linux distributions, e.g. Ubuntu, but it won't matter.
FPGA requirement
By now, DHL only provides PMD driver for Xilinx VC709 board. If you own a VC709 board, you can experience the advantages of DHL with a real-world FPGA acceleration test. Otherwise, you can use the Vitual Channel to replace FPGA borad to experience the DHL framework.
In future, we are going to develop the PMD driver for Amazon Aws F1 instance. So everyone can experience the charm of DHL framework in cloud.
Download source code of DHL
git clone https://github.com/OpenCloudNeXt/DHL.git
Download DPDK
Make sure you are at the directory containing DHL, not in the DHL directory
You can download tar package of DPDK, like the latest stable dpdk-17.11.2 or latest major dpdk-18.02.1.
xz -d dpdk-18.02.1.tar.xz
tar -xvf dpdk-18.02.1.tar
Alternatively, you can use the latest under-developing version of DPDK.
git clone git://dpdk.org/dpdk
Set environment variable DPDK_VERSION which is the name of the DPDK directory, based on which DPDK version you downloaded.
echo export DPDK_VERSION=dpdk-18.02.1 >> ~/.bashrc
#echo export DPDK_VERSION=dpdk-17.11.2 >> ~/.bashrc
#echo export DPDK_VERSION=dpdk >> ~/.bashrc
Set environment variable RTE_SDK to the path of the DPDK library. Make sure that you are in the DPDK directory.
echo export RTE_SDK=$(pwd)/${DPDK_VERSION} >> ~/.bashrc
Set environment variable RTE_TARGET to the target architecture of your system.
echo export RTE_TARGET=x86_64-native-linuxapp-gcc >> ~/.bashrc
Set environment variable DPDK_INSTALL_DIR to the path that will hold the compiled DPDK SDK. Make sure you are in the directory containing DPDK, not in the DPDK directory.
echo export DPDK_INSTALL_DIR=$(pwd)/${DPDK_VERSION}-install >> ~/.bashrc
Set environment variable DHL_SDK to the path of the DHL repository.
echo export DHL_SDK=$(pwd)/DHL >> ~/.bashrc
source your shell rc file to set the environment variables:
source ~/.bashrc
Run the compile_dpdk script to compile DPDK,
and it will install compiled DPDK SDK in $(DPDK_INSTALL_DIR)
.
cd ${DHL_SDK}/scripts
./compile_dpdk.sh
Configure hugepages
we recommend using 1GB hugepage size to maxmize the performance as recommended by DPDK.
For 1GB pages, it is not possible to reserve the hugepage memory after the system has booted. We need to set the hugepages option to the kernel.
vim /boot/grub2/grub.cfg
add these options after the linux16 /vmlinuz-*.*.*
command line.
default_hugepagesz=1G hugepagesz=1G hugepages=4
using hugepages with DPDK
mkdir /mnt/huge_1GB
mount -t hugetlbfs nodev /mnt/huge_1GB
The mount point can be made permanent across reboots, by adding the following line to the /etc/fstab file:
nodev /mnt/huge_1GB hugetlbfs pagesize=1GB 0 0
you need to reboot the system to bring the 1GB hugepages into effect.
This step can be delayed to the end after you compile the DHL sourde code.
Compile DHL ,including libdhl_fpga, fpga_drivers, dhl_manager and other libraries
cd ${DHL_SDK}
make
Comiple example NFs
cd ${DHL_SDK}\examples
make
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。