Proceedings of the 19th ACM Workshop on Hot Topics in Networks 2020
DOI: 10.1145/3422604.3425933
|View full text |Cite
|
Sign up to set email alerts
|

Elastic Switch Programming with P4All

Abstract: The P4 language enables a range of new network applications. However, it is still far from easy to implement and optimize P4 programs for PISA hardware. Programmers must engage in a tedious "trial and error" process wherein they write their program (guessing it will fit within the hardware) and then check by compiling it. If it fails, they repeat the process. In this paper, we argue that programmers should define elastic data structures that stretch automatically to make use of available switch resources. We p… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
2
1
1
1

Citation Types

0
9
0
1

Year Published

2021
2021
2024
2024

Publication Types

Select...
4
3

Relationship

2
5

Authors

Journals

citations
Cited by 11 publications
(10 citation statements)
references
References 24 publications
0
9
0
1
Order By: Relevance
“…While Lucid2 was motivated by the constraints of PISA architectures in general, and the Intel Tofino in particular, pipelined parallelism is a widely-used technique for improving the throughput of data-processing applications. Lucid2's design and type system may provide a guide for future researchers looking to deploy these ideas in the context of other network devices (Baldi [2020]; Kalkunte [2019]), other network programming languages (Gao et al [2020b,a]; Hogan et al [2020]; ), or other domains entirely, such as signal processing (Ebeling et al [1996])…”
Section: Discussionmentioning
confidence: 99%
See 2 more Smart Citations
“…While Lucid2 was motivated by the constraints of PISA architectures in general, and the Intel Tofino in particular, pipelined parallelism is a widely-used technique for improving the throughput of data-processing applications. Lucid2's design and type system may provide a guide for future researchers looking to deploy these ideas in the context of other network devices (Baldi [2020]; Kalkunte [2019]), other network programming languages (Gao et al [2020b,a]; Hogan et al [2020]; ), or other domains entirely, such as signal processing (Ebeling et al [1996])…”
Section: Discussionmentioning
confidence: 99%
“…More recently, there have been a number of efforts to make programming P4 switches easier. For example, Domino ), Chipmunk (Gao et al [2020a]), Lyra (Gao et al [2020b]), and P4All (Hogan et al [2020]) allow programmers to use high-level, imperative, C-like languages to describe switch computations. They then deploy program synthesis techniques to allocate those computations to stages in the pipelines of one or more hardware devices.…”
Section: Related Workmentioning
confidence: 99%
See 1 more Smart Citation
“…A noteworthy work (P4All [353]) proposed an extension to P4 where operators write elastic programs. Elastic programs are compact programs that stretch to make use of the hardware resources.…”
Section: H Programming Simplicitymentioning
confidence: 99%
“…The optimizations in Lucid's compiler are heuristics based on our experiences with hand-coding efficient P4-Tofino programs. Recent work suggests that sophisticated optimizations based on synthesis [10] or ILP [14] algorithms may do better. However, in general, finding an optimal PISA layout is NP complete [32].…”
Section: Language Limitationsmentioning
confidence: 99%