Cross-Platform Transpilation of Packet-Processing Programs using Program Synthesis

Xiangyu Gao, Jiaqi Gao, Karan Kumar Gangadhar, Ennan Zhai, Srinivas Narayana, Anirudh Sivaraman

Research output: Chapter in Book/Report/Conference proceedingConference contribution

Abstract

The proliferation of programmable network devices offers a wide range of device options for developers of packet processing programs. However, there are several differences in programming language usage, hardware resource constraints, and hardware architecture across these devices. Programmers must understand multiple programming languages and hardware designs to write programs for various devices. We propose an alternative: leveraging program synthesis to build a transpiler, Polyglotter, that outputs programs for target hardware devices from input programs written for source hardware devices. This can reduce the efforts required to write algorithms across platforms. Our evaluation results show that, compared to traditional program rewriting methods, Polyglotter can quickly produce correct results with efficient use of hardware resources. We also outline several directions for future work in such transpilers.

Original languageEnglish (US)
Title of host publicationAPNET 2024 - Proceedings of the 8th Asia-Pacific Workshop on Networking
PublisherAssociation for Computing Machinery
Pages74-80
Number of pages7
ISBN (Electronic)9798400717581
DOIs
StatePublished - Aug 3 2024
Event8th Asia-Pacific Workshop on Networking, APNET 2024 - Sydney, Australia
Duration: Aug 3 2024Aug 4 2024

Publication series

NameACM International Conference Proceeding Series

Conference

Conference8th Asia-Pacific Workshop on Networking, APNET 2024
Country/TerritoryAustralia
CitySydney
Period8/3/248/4/24

Keywords

  • Programmable switches
  • code generation
  • finite state machine
  • packet processing pipelines;
  • program synthesis
  • programmable parser

ASJC Scopus subject areas

  • Human-Computer Interaction
  • Computer Networks and Communications
  • Computer Vision and Pattern Recognition
  • Software

Fingerprint

Dive into the research topics of 'Cross-Platform Transpilation of Packet-Processing Programs using Program Synthesis'. Together they form a unique fingerprint.

Cite this