Exploiting Task-Level Concurrency in a Programmable Network Interface
Date
Journal Title
Journal ISSN
Volume Title
Publisher
Abstract
Programmable network interfaces provide the potential to extend the functionality of network services but lead to instruction processing overheads when compared to application-specific network interfaces. This paper aims to offset those performance disadvantages by exploiting task-level concurrency in the workload to parallelize the network interface firmware for a programmable controller with two processors. By carefully partitioning the handler procedures that process various events related to the progress of a packet, the system can minimize sharing, achieve load balance, and efficiently utilize on-chip storage. Compared to the uniprocessor firmware released by the manufacturer, the parallelized network interface firmware increases throughput by 65% for bidirectional UDP traffic of maximum-sized packets, 157% for bidirectional UDP traffic of minimum-sized packets, and 32-107% for real network services. This parallelization results in performance within 10-20% of a modern ASIC-based network interface for real network services.
Description
Advisor
Degree
Type
Keywords
Citation
H. Kim, V. S. Pai and S. Rixner, "Exploiting Task-Level Concurrency in a Programmable Network Interface," 2003.