English
Related papers

Related papers: An Open-Source P416 Compiler Backend for Reconfigu…

200 papers

P4 is a high-level language for programming protocol-independent packet processors. P4 works in conjunction with SDN control protocols like OpenFlow. In its current form, OpenFlow explicitly specifies protocol headers on which it operates.…

Networking and Internet Architecture · Computer Science 2014-05-19 Pat Bosshart , Dan Daly , Martin Izzard , Nick McKeown , Jennifer Rexford , Cole Schlesinger , Dan Talayco , Amin Vahdat , George Varghese , David Walker

Machine learning and data analytics applications increasingly suffer from the high latency and energy consumption of conventional von Neumann architectures. Recently, several in-memory and near-memory systems have been proposed to remove…

Hardware Architecture · Computer Science 2023-09-13 Hamid Farzaneh , João Paulo Cardoso de Lima , Mengyuan Li , Asif Ali Khan , Xiaobo Sharon Hu , Jeronimo Castrillon

Pattern matching is a powerful tool which is part of many functional programming languages as well as computer algebra systems such as Mathematica. Among the existing systems, Mathematica offers the most expressive pattern matching.…

Symbolic Computation · Computer Science 2017-05-03 Manuel Krebber

By extending the traditional store-and-forward mechanism, network coding has the capability to improve a network's throughput, robustness, and security. Given the fundamentally different packet processing required by this new paradigm and…

Networking and Internet Architecture · Computer Science 2019-09-06 Diogo Gonçalves , Salvatore Signorello , Fernando M. V. Ramos , Muriel Médard

In-network caching promises to improve the performance of networked and edge applications as it shortens the paths data need to travel. This is by storing so-called hot items in the network switches on-route between clients who access the…

Networking and Internet Architecture · Computer Science 2022-03-10 Roy Friedman , Or Goaz , Dor Hovav

Existing open-source modeling frameworks dedicated to energy systems optimization typically utilize (mixed-integer) linear programming ((MI)LP) formulations, which lack modeling freedom for technical system design and operation. We present…

In recent years the computing landscape has seen an in- creasing shift towards specialized accelerators. Field pro- grammable gate arrays (FPGAs) are particularly promising as they offer significant performance and energy improvements…

Distributed, Parallel, and Cluster Computing · Computer Science 2015-11-24 Raghu Prabhakar , David Koeplinger , Kevin Brown , HyoukJoong Lee , Christopher De Sa , Christos Kozyrakis , Kunle Olukotun

This paper describes an implementation of the well-known consensus protocol, Paxos, in the P4 programming language. P4 is a language for programming the behavior of network forwarding devices (i.e., the network data plane). Moving consensus…

Distributed, Parallel, and Cluster Computing · Computer Science 2015-11-17 Huynh Tu Dang , Marco Canini , Fernando Pedone , Robert Soulé

Reconfigurable computing refers to the use of processors, such as Field Programmable Gate Arrays (FPGAs), that can be modified at the hardware level to take on different processing tasks. A reconfigurable computing platform describes the…

Hardware Architecture · Computer Science 2007-05-23 Darran Nathan , Kelvin Lim Mun Kit , Kelly Choo Hon Min , Philip Wong Jit Chin , Andreas Weisensee

Getting the best performance from the ever-increasing number of hardware platforms has been a recurring challenge for data processing systems. In recent years, the advent of data science with its increasingly numerous and complex types of…

Programmable switches have emerged as powerful and flexible alternatives to fixed-function forwarding devices. But because of the unique hardware constraints of network switches, the design and implementation of compilers targeting these…

Hardware Architecture · Computer Science 2020-10-29 Michael D. Wong , Aatish Kishan Varma , Anirudh Sivaraman

Various kinds of applications take advantage of GPUs through automation tools that attempt to automatically exploit the available performance of the GPU's parallel architecture. Directive-based programming models, such as OpenACC, are one…

Distributed, Parallel, and Cluster Computing · Computer Science 2023-01-30 Kazuaki Matsumura , Simon Garcia De Gonzalo , Antonio J. Peña

A composable infrastructure is defined as resources, such as compute, storage, accelerators and networking, that are shared in a pool and that can be grouped in various configurations to meet application requirements. This freedom to 'mix…

Distributed, Parallel, and Cluster Computing · Computer Science 2021-03-22 Kauotar El Maghraoui , Lorraine M. Herger , Chekuri Choudary , Kim Tran , Todd Deshane , David Hanson

P4 is an emergent packet-processing language with which the user can describe how the packets are to be processed in a switching element. This paper presents a way to implement complex operations that are not natively supported in P4. In…

Networking and Internet Architecture · Computer Science 2018-03-23 Jeferson Santiago da Silva , François-Raymond Boyer , Laurent-Olivier Chiquette , J. M. Pierre Langlois

Heterogeneity has become a mainstream architecture design choice for building High Performance Computing systems. However, heterogeneity poses significant challenges for achieving performance portability of execution. Adapting a program to…

Programming Languages · Computer Science 2023-03-17 Giorgis Georgakoudis , Konstantinos Parasyris , Chunhua Liao , David Beckingsale , Todd Gamblin , Bronis de Supinski

It is time-consuming and error-prone to implement inference procedures for each new probabilistic model. Probabilistic programming addresses this problem by allowing a user to specify the model and having a compiler automatically generate…

Motivated by the increasing shift to multicore computers, recent work has developed language support for responsive parallel applications that mix compute-intensive tasks with latency-sensitive, usually interactive, tasks. These…

Programming Languages · Computer Science 2020-04-07 Stefan K. Muller , Kyle Singer , Noah Goldstein , Umut A. Acar , Kunal Agrawal , I-Ting Angelina Lee

Applications in science and engineering often require huge computational resources for solving problems within a reasonable time frame. Parallel supercomputers provide the computational infrastructure for solving such problems. A…

Distributed, Parallel, and Cluster Computing · Computer Science 2007-05-23 Rajesh Sudarsan , Calvin J. Ribbens

Configurable software verification is a recent concept for expressing different program analysis and model checking approaches in one single formalism. This paper presents CPAchecker, a tool and framework that aims at easy integration of…

Programming Languages · Computer Science 2009-02-03 Dirk Beyer , M. Erkan Keremoglu

Programmable packet processors and P4 as a programming language for such devices have gained significant interest, because their flexibility enables rapid development of a diverse set of applications that work at line rate. However, this…

Networking and Internet Architecture · Computer Science 2018-04-05 Ali Kheradmand , Grigore Rosu