AMD-Xilinx baru-baru ini membuka sumber kompiler Nanotube berbasis LLVM mereka yang dapat digunakan untuk beberapa tujuan jaringan yang bagus pada FPGA.
Kompiler AMD-Xilinx Nanotube mengambil kode eBPF XDP C dan dibangun di atas tumpukan kompiler LLVM kemudian dapat menghasilkan pipa pemrosesan paket di HLS C++ yang dapat berjalan di Xilinx FPGA.
"Nanotube adalah kumpulan pass kompiler, pustaka, dan API untuk memfasilitasi eksekusi EBPF XDP dan kode jaringan serupa pada FPGA di SmartNIC. Kompiler mengambil kode EBPF XDP C sebagai input dan mengeluarkan pipa pemrosesan paket di HLS C++. Kode C++ HLS ini kemudian dapat disintesis menggunakan Vitis HLS dan ditempatkan pada FPGA.
Kompiler melakukan berbagai transformasi pada program; dimulai dengan terjemahan panggilan EBPF ke panggilan ke fungsi API Nanotube serupa. Itu kemudian melakukan beberapa tahap mengubah kode secara struktural dan ke tingkat API yang berbeda.
...
Pustaka Nanotube mengimplementasikan akses dan peta paket dalam implementasi yang ramah sintesis, artinya akan ditempatkan dalam aplikasi dan akan menciptakan perangkat keras yang efisien dalam sintesis tingkat tinggi. "Sebagai bagian dari repositori kompiler Nanotube, ada contoh basis kode yang dikembangkan oleh Facebook/Meta.Contoh ini dijuluki "Katran" dan berfungsi sebagai penyeimbang beban jaringan lapisan 4 berkinerja tinggi yang berjalan pada FPGA Xilinx.Contoh untuk menampilkan kompiler Nanotube ini adalah kode berlisensi eBPF GPLv2.
Mereka yang ingin mempelajari lebih lanjut tentang kompiler AMD-Xilinx Nanotube sumber terbuka ini dapat menemukannya di GitHub.
Itulah berita seputar AMD-Xilinx Menerbitkan Compiler "Nanotube" Open-Source, semoga bermanfaat. Disadur dari Phoronix.com.