Doctoral thesis

Building blocks for leveraging in-network computing

    22.07.2020

126 p

Thèse de doctorat: Università della Svizzera italiana, 2020

English With the end of Moore's law and Dennard scaling, applications no longer enjoy performance improvements by simply waiting for the next generation of CPUs. This has led to the rise of domain-specific computing. As developers try to squeeze more performance out of applications, they have offloaded application functionality to specialized hardware, such as GPUs, FPGAs and ASICs. Programming these devices presents a trade-off between generality and performance. Recently there has been the emergence of new types of specialized hardware for networking. Similarly to other domain-specific computing devices, they are not straightforward to program and require adapting applications, but provide significant performance improvements. Although these devices were intended for network applications, they have been used for offloading other types of applications, in what is called in-network computing (INC). INC presents many opportunities to applications because it provides high-performance computing that is centrally located in the network. However, there are many challenges for leveraging INC. Although INC devices are programmable, there are some limitations that are not present in general purpose CPUs, including computing expressiveness, resource availability (e.g., memory) and interfacing to applications. This thesis addresses the challenge of leveraging INC for application-network co-design. Not all applications are suitable for INC; in some cases, only parts of applications can benefit from INC. The hypothesis is that application performance can be improved by moving some functionality into reusable INC building blocks. At a high level, this thesis makes the following contributions: it characterizes the types of applications that can benefit from INC; it describes the building blocks that applications can use to leverage INC; it suggests the right abstractions and level of granularity for INC; it describes INC data structures and implementation techniques; and, finally, it evaluates INC by implementing five systems for applications from different domains. Overall, this thesis revisits the separation of concerns between the application and the network, showing that co-design is not only possible, but also beneficial.
Language
  • English
Classification
Computer science
License
License undefined
Identifiers
Persistent URL
https://susi.usi.ch/usi/documents/319147
Statistics

Document views: 41 File downloads:
  • 2020INFO012.pdf: 48