我們可以在 OpenWrt linux 操作系統上運行 DPDK 應用程序嗎? (Can we run DPDK application on OpenWrt linux os?)


問題描述

我們可以在 OpenWrt linux 操作系統上運行 DPDK 應用程序嗎? (Can we run DPDK application on OpenWrt linux os?)

我們開發了一個 DPDK 應用程序,它在 Centos 操作系統上運行良好。

我們現在需要在具有簡單 OpenWrt 的路由器上運行它。 p>

從 DPDK 開發人員指南中,他們提到它可以在任何 LINUX 上運行,但他們已經在

  • FreeBSD 10
  • Fedora 20 版上測試和編譯
  • Ubuntu 14.04 LTS
  • Wind River Linux 6
  • Red Hat Enterprise Linux 6.5
  • SUSE Enterprise Linux 11 SP3

OpenWrt 機器是否也支持 DPDK 應用程序?您的信息將對我有很大幫助。

感謝 Abhinay


參考解法

方法 1:

there are some others trying this ‑ see https://lists.openwrt.org/pipermail/openwrt‑devel/2015‑January/030341.html

方法 2:

DPDK mostly depends on a few things:

  • Hugepage (Linux Kernel support) to get around TLB bottleneck
  • UIO (Linux Kernel support) for user space poll mode driver to get good I/O performance
  • Fine core affinity control (pthread and Linux Kernel sysfs /sys/devices/system/cpu/cpuX, isolcpus)

Since I don't have any OpenWRT system around, I would suggest that you try compile it on OpenWRT first, making sure it has all the things needed by DPDK, e.g. UIO support, supported NIC, etc. Once you make sure it compiles, first test with testpmd to see if it works. If it runs, great. Then you can verify testpmd with "set fwd=txonly" and connect the port to another machine to see it you can receive any traffic.

方法 3:

After a lot of request DPDK now officially supports openwrt https://doc.dpdk.org/guides/howto/openwrt.html

(by AbhinaycodecatsWei ShenVipin Varghese)

參考文件

  1. Can we run DPDK application on OpenWrt linux os? (CC BY‑SA 2.5/3.0/4.0)

#intel #openwrt #linux #dpdk #router






相關問題

x86 彙編程序崩潰,可能忽略了簡單的錯誤 (x86 assembly procedure crashes, possibly overlooking simple error)

英特爾虛擬化問題 (Android Studio) (Intel Virtualization Problems (Android Studio))

Intel 芯片組 - GPIO 編程 (Intel chipset - GPIO programming)

如何編譯 gcc 、 intel 靜態庫? (How to compile wth gcc , intel static libraries?)

我們可以在 OpenWrt linux 操作系統上運行 DPDK 應用程序嗎? (Can we run DPDK application on OpenWrt linux os?)

如何將內存中的 96 位加載到 XMM 寄存器中? (How to load 96 bits from memory into an XMM register?)

英特爾 PIN 二進制檢測工具中的 16 個通用寄存器如何表示 (How are the 16 General Purpose Registers represented in Intel PIN binary instrumentation tool)

Delphi 的 x86 代碼生成器框架 (x86 code generator framework for Delphi)

處理器:如何獲取有關英特爾至強的緩存信息 (Processor : How to get cache information about intel xeon)

任何人都試圖為另一個操作系統編譯 Intel xf86_video_intel (Anyone tried to compile Intel xf86_video_intel for another OS)

飛地字段不工作,但沒有錯誤 (Enclave field not working, but there is no error)

是否可以在 Intel SDE 中結合 CPUID 和指令集仿真參數 (Is it possible to combine CPUID and Instruction set emulation arguments in Intel SDE)







留言討論