SWSL: software synthesis for network lookup

  • Authors:
  • Sung Jin Kim;Lorenzo De Carli;Karthikeyan Sankaralingam;Cristian Estan

  • Affiliations:
  • University of Wisconsin-Madison, Madison, Wisconsin, USA;University of Wisconsin-Madison, Madison, Wisconsin, USA;University of Wisconsin-Madison, Madison, Wisconsin, USA;Broadcom Corporation, Santa Clara, California, USA

  • Venue:
  • ANCS '13 Proceedings of the ninth ACM/IEEE symposium on Architectures for networking and communications systems
  • Year:
  • 2013

Quantified Score

Hi-index 0.00

Visualization

Abstract

Data structure lookups are among the most expensive operations on routers' critical path in terms of latency and power. Therefore, efficient lookup engines are crucial. Several approaches have been proposed,based on either custom ASICs, general-purpose processors,or specialized engines. ASICs enable high performance but have long design cycle and scarce flexibility, while general-purpose processors present the opposite trade-off. Specialized programmable engines achieve some of the benefits of both approaches, but are still hard to program and limited either in terms of flexibility or performance. In this paper we investigate a different design point. Our solution,SWSL (SoftWare Synthesis for network Lookup) generates hardware logic directly from lookup applications written in C++. Therefore, it retains a simple programming model yet leads to significant performance and power gains. Moreover, compiled application can be deployed on either FPGA or ASIC, enabling a further trade-off between flexibility and performance. While most high-level synthesis compilers focus on loop acceleration, SWSL generates entire lookup chains performing aggressive pipelining to achieve high throughput. Initial results are promising: compared with a previously proposed solution, SWSL gives 2 - 4x lower latency and 3 - 4x reduced chip area with reasonable power consumption.