Managing Heterogeneous Architectures for High-speed Packet Processing
Ralph Duncan, Peder Jungck, Kenneth Andrew Ross · Apress eBooks · 2011
The centrality of networked communications to effective military action is a truism of this age. Against this background heterogeneous parallel architectures have been successfully applied to cyber domains as diverse as exascale computing, multimedia applications and network processing. High-speed communications are a natural match for such architectures, since they exhibit a high degree of parallelism and are amenable to multiple kinds of specialized processing. This paper reports our novel approach to developing communications applications for heterogeneous processors. Key aspects of the approach include extending high-level languages with domain-specific data types and operators, encapsulating the extensions within a virtual machine and implementing the operators with specialized processors. Expressing the virtual machine in microcode provides an effective way to orchestrate communications with the disparate kinds of processors used - and to replace them with new kinds of processors. Benefits include speed to meet real-time demands, portable high-level language code and an extensible virtual machine.