UCX: An Open Source Framework for HPC Network APIs and Beyond

TitleUCX: An Open Source Framework for HPC Network APIs and Beyond
Publication TypeConference Proceedings
Year of Publication2015
AuthorsShamis, P.., M.. G. Venkata, M.. G. Lopez, M.. B. Baker, O.. Hernandez, Y.. Itigin, M.. Dubman, G.. Shainer, R.. L. Graham, L.. Liss, Y.. Shahar, S.. Potluri, D.. Rossetti, D.. Becker, D.. Poole, C.. Lamb, S.. Kumar, C.. Stunkel, G.. Bosilca, and A.. Bouteiller
Conference Name2015 IEEE 23rd Annual Symposium on High-Performance Interconnects
Pagination40-43
Date PublishedAug
PublisherIEEE
Conference LocationSanta Clara, CA, USA
ISBN Number978-1-4673-9160-3
Accession Number15573048
Keywordsapplication program interfaces, Bandwidth, Electronics packaging, Hardware, high throughput computing, highly-scalable network stack, HPC, HPC network APIs, I/O bound applications, Infiniband, input-output programs, Libraries, Memory management, message passing, message passing interface, Middleware, MPI, open source framework, OpenSHMEM, parallel programming, parallel programming models, partitioned global address space languages, PGAS, PGAS languages, Programming, protocols, public domain software, RDMA, system libraries, task-based paradigms, UCX, Unified Communication X
Abstract

This paper presents Unified Communication X (UCX), a set of network APIs and their implementations for high throughput computing. UCX comes from the combined effort of national laboratories, industry, and academia to design and implement a high-performing and highly-scalable network stack for next generation applications and systems. UCX design provides the ability to tailor its APIs and network functionality to suit a wide variety of application domains and hardware. We envision these APIs to satisfy the networking needs of many programming models such as Message Passing Interface (MPI), OpenSHMEM, Partitioned Global Address Space (PGAS) languages, task-based paradigms and I/O bound applications. To evaluate the design we implement the APIs and protocols, and measure the performance of overhead-critical network primitives fundamental for implementing many parallel programming models and system libraries. Our results show that the latency, bandwidth, and message rate achieved by the portable UCX prototype is very close to that of the underlying driver. With UCX, we achieved a message exchange latency of 0.89 us, a bandwidth of 6138.5 MB/s, and a message rate of 14 million messages per second. As far as we know, this is the highest bandwidth and message rate achieved by any network stack (publicly known) on this hardware.

DOI10.1109/HOTI.2015.13
Project Tags: 
External Publication Flag: