Precedence
Autor: | Christopher Leet, Shenshen Chen, Yang Richard Yang, Kai Gao |
---|---|
Rok vydání: | 2019 |
Předmět: |
010302 applied physics
Flexibility (engineering) Computer science Pipeline (computing) 02 engineering and technology Parallel computing computer.software_genre 01 natural sciences 020202 computer hardware & architecture Pipeline transport Application-specific integrated circuit 0103 physical sciences 0202 electrical engineering electronic engineering information engineering Table (database) Compiler Routing (electronic design automation) Throughput (business) computer |
Zdroj: | SOSR |
DOI: | 10.1145/3314148.3314348 |
Popis: | The rise of the programmable switching ASIC has allowed switches to handle the complexity and diversity of modern networking programs while meeting the performance demands of modern networks. Exploitation of the flexibility of these switches, however, has exploded routing program size: recently proposed programs contain more than 100 [11] or even 1000 [10] tables. Realizing these programs in a programmable switch requires finding layouts with minimal depth: if a layout has more match-action stages than a switch's pipeline provides, the switch must recirculate, cutting throughput. Even if a layout fits a switch's pipeline, since most commercial pipelines cannot allocate memory freely to stages, non-compact pipelines can result in underloaded stages and significant memory underutilization. While inter-table control and data dependencies critically limit the ability of compilers to lay out tables compactly, no switch architecture which can fully resolve dependencies has been proposed. To address this problem, we introduce precedence, an extension of the RMT switching ASIC, which enables tables linked by dependencies to be executed in parallel or even out-of-order. Precedence can resolve nearly 70% of switch.p4 [11]'s dependencies (a real-world routing program), reduce its pipeline depth by 48%, and only modestly increases silicon area. |
Databáze: | OpenAIRE |
Externí odkaz: |