Abstract

FPGAs have traditionally been successful in accelerating stream processing applications where the amount and type of work performed on each record&#x2014;e.g., image, packet&#x2014;do not depend on the record&#x0027;s contents. On the other hand, accelerating &#x2018;input-dependent&#x2019; stream processing on FPGAs presents a much more challenging problem where different records in the stream can require widely different operations. It is inefficient and unnecessary to support all operations at the same throughput when the distributions of the operations are skewed. In this paper, we examine the application of the &#x201C;make the common case fast&#x201D; strategy to efficiently accelerate &#x2018;input-dependent&#x2019; stream processing on FPGAs. In particular, we study the use of <i>fast-slow path</i> and <i>early-exit</i> techniques in the design of an FPGA-accelerated network intrusion prevention system (IPS). To avoid overfitting when common-case behavior is varied, we further examine <i>compile-time re-tuning</i> and <i>runtime adaptation</i> techniques. A quantitative analysis shows that fast-slow path and early-exit techniques can save an order of magnitude of resources compared to a common-case unaware IPS design. Compile-time re-tuning to specific conditions further achieves 30&#x0025; &#x2013; 94&#x0025; BRAM savings relative to a generalized design. Adding runtime adaptation improves the zero-loss throughput by 1.43 &#x2013; 2.75 &#x00D7; compared to a fixed design.

Full Text
Paper version not known

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call