UCX Programming Interface for Remote Function Injection and Invocation

10/12/2021
by   Luis E. Peña, et al.
0

Network library APIs have historically been developed with the emphasis on data movement, placement, and communication semantics. Many communication semantics are available across a large variety of network libraries, such as send-receive, data streaming, put/get/atomic, RPC, active messages, collective communication, etc. In this work we introduce new compute and data movement APIs that overcome the constraints of the single-program, multiple-data (SPMD) programming model by allowing users to send binary executable code between processing elements. Our proof-of-concept implementation of the API is based on the UCX communication framework and leverages the RDMA network for fast compute migration. We envision the API being used to dispatch user functions from a host CPU to a SmartNIC (DPU), computational storage drive (CSD), or remote servers. In addition, the API can be used by large-scale irregular applications (such as semantic graph analysis), composed of many coordinating tasks operating on a data set so big that it has to be stored on many physical devices. In such cases, it may be more efficient to dynamically choose where code runs as the applications progresses.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
08/04/2021

Two-Chains: High Performance Framework for Function Injection and Execution

Some important problems, such as semantic graph analysis, require large-...
research
08/01/2022

Bring the BitCODE – Moving Compute and Data in Distributed Heterogeneous Systems

In this paper, we present a framework for moving compute and data betwee...
research
02/12/2021

SOAR: A Synthesis Approach for Data Science API Refactoring

With the growth of the open-source data science community, both the numb...
research
08/22/2023

Recommending Analogical APIs via Knowledge Graph Embedding

Library migration, which re-implements the same software behavior by usi...
research
09/14/2017

Weld: Rethinking the Interface Between Data-Intensive Applications

Data analytics applications combine multiple functions from different li...
research
02/25/2020

Safe and Efficient Remote Application Code Execution on Disaggregated NVM Storage with eBPF

With rapid improvements in NVM storage devices, the performance bottlene...
research
04/06/2022

P4RROT: Generating P4 Code for the Application Layer

Throughput and latency critical applications could often benefit of perf...

Please sign up or login with your details

Forgot password? Click here to reset