Vengineerの戯言

人生は短いけど、長いです。人生を楽しみましょう!

AMD/Xilinx Nanotube とは?

はじめに

Xilinxgithub に、「The Nanotube Compiler and Framework」 なるものが公開されました。

github.com

上記の README.md には、

Nanotube is a collection of compiler passes, libraries, and an API to facilitate execution of EBPF XDP and similar networking code on an FPGA in a SmartNIC. The compiler takes EBPF XDP C code as input and outputs a packet processing pipeline in HLS C++. This HLS C++ code can then be synthesised using Vitis HLS and placed on an FPGA.

とあります。

EBPF XDP とは?

EBPF XDP を Google 君に聞いてみたら出てきました。

terassyi.net

XDPとはeXpress Data Pathの略でLinuxカーネル内で動作するeBPFベースの高性能なパケット処理技術です.

となると、この 「The Nanotube Compiler and Framework」にて、EBPF XDP C を HLS C++ に変換して、Vitis HLSにてFPGAマッピング。。。

EBPF のサンプルコード

github.com

おわりに

なんか、楽しそう。。。

参考記事

qiita.com

zenn.dev