Video details

PGAS in C++: A Portable Abstraction for Distributed Data Structures - Benjamin Brock - CppCon 2021

English --- Writing programs that run on clusters of computers is notoriously tedious and error-prone, particularly for applications like genomics, sparse linear algebra, and graph analytics, which often require fine-grained, irregular communication.
In this talk, I'll argue that the Partitioned Global Address Space (PGAS) programming model, which allows remote access to a portion of the memory space on remote processes in a distributed program, is an effective model for implementing portable, high-level C++ data structures that automatically distribute data, while taking advantage of the high-performance RDMA network primitives available in most supercomputer and data center environments.
I'll discuss how our distributed data structures library BCL builds upon the concept of a global pointer to build a collection of high-performance, high-level data structures, including hash tables, queues, and dense and sparse matrices, that can be used across a variety of communication libraries, including MPI, OpenSHMEM, and GASNet-EX. I'll touch on the some of the important issues that arise in implementing distributed data structures, such as synchronization, remote reference objects, and support for GPUs.
--- Benjamin Brock
Ben Brock is a PhD student at UC Berkeley, where he works on building libraries, tools, and algorithms for high-performance computing. His main work focuses on building a cross-platform library of data structures for distributed applications, with a focus on sparse linear algebra and graph algorithms. Ben is also a member of the GraphBLAS Languages Committee and is involved in drafting the C++ GraphBLAS API Specification.
--- Videos Filmed & Edited by Bash Films:
YouTube Channel Managed by Digital Medium Ltd
The CppCon YouTube Channel Is Sponsored By: JetBrains :