Difference between revisions of "VPP/Alternative builds"
From fd.io
< VPP
m |
|||
Line 8: | Line 8: | ||
− | == | + | == arm aarch32 == |
* build configuration inherited from vpp-lite | * build configuration inherited from vpp-lite | ||
* [https://lists.fd.io/pipermail/vpp-dev/2016-April/000593.html vpp-dev email thread] | * [https://lists.fd.io/pipermail/vpp-dev/2016-April/000593.html vpp-dev email thread] | ||
Line 29: | Line 29: | ||
<nowiki> | <nowiki> | ||
cpu { | cpu { | ||
− | main-core | + | main-core 1 |
} | } | ||
heapsize 64M</nowiki> | heapsize 64M</nowiki> | ||
+ | |||
+ | * Tegra - Jetson TK1 | ||
+ | On Tegra, we may use DPDK, but we have to rebuild our own kernel (tested with 4.5.3) to enable hugepages. | ||
+ | Also, we must disable cpu idle. | ||
+ | <nowiki> | ||
+ | #!/bin/sh | ||
+ | for cpu in 0 1 2 3 ; do | ||
+ | for state in 0 1 ; do | ||
+ | echo 1 > /sys/devices/system/cpu/cpu$cpu/cpuidle/state$state/disable | ||
+ | done | ||
+ | done | ||
+ | </nowiki> | ||
* Finally, run as usual: | * Finally, run as usual: | ||
<nowiki>make run</nowiki> | <nowiki>make run</nowiki> |
Revision as of 07:32, 3 June 2016
vpp-lite
- A build without DPDK suitable for container deployment
- vpp-dev email thread
export PLATFORM=vpp_lite make build make run
arm aarch32
- build configuration inherited from vpp-lite
- vpp-dev email thread
- make install-dep fails as the OS is not recognized, so install dependencies manually:
apt-get install curl build-essential autoconf automake bison libssl-dev ccache \ debhelper dkms openjdk-8-jdk git libtool libganglia1-dev libapr1-dev dh-systemd \ libconfuse-dev git-review exuberant-ctags cscope
- Build:
export PLATFORM=arm32 make build
- raspbian default kernel does not enable userspace application access to the performance counters (this access is required by vpp to read the cycle counter)
- Download kernel module from github
- This requires kernel headers: if you updated your kernel with rpi-update, you may have to download the whole kernel sources to retrieve kernel headers (see rpi-source)
- build and test kmod (see included README)
- raspbian kernel does not have hugepage support: modify the startup.conf file to specify the amount of RAM to allocate
cpu { main-core 1 } heapsize 64M
- Tegra - Jetson TK1
On Tegra, we may use DPDK, but we have to rebuild our own kernel (tested with 4.5.3) to enable hugepages. Also, we must disable cpu idle.
#!/bin/sh for cpu in 0 1 2 3 ; do for state in 0 1 ; do echo 1 > /sys/devices/system/cpu/cpu$cpu/cpuidle/state$state/disable done done
- Finally, run as usual:
make run