Neon: A Multi-GPU Programming Model for Grid-based Computations

IPDPS - IEEE International Parallel & Distributed Processing Symposium
2022

Neon: A Multi-GPU Programming Model for Grid-based Computations

Abstract

We present Neon, a new programming model for grid-based computation with an intuitive, easy-to-use interface that allows domain experts to take full advantage of single-node multi-GPU systems. Neon decouples data structure from computation and back end configurations, allowing the same user code to operate on a variety of data structures and devices. Neon relies on a set of hierarchical abstractions that allow the user to write their applications as if they were sequential applications, while the runtime handles distribution across multiple GPUs and performs optimizations such as overlapping computation and communication without user intervention. We evaluate our programming model on several applications: a Lattice Boltzmann fluid solver, a finite-difference Poisson solver and a finite-element linear elastic solver. We show that these applications can be implemented concisely and scale well with the number of GPUs—achieving more than 99% of ideal efficiency.

Related Publications

Loading...

Related Projects

  • Systems Design & Simulation

    While traditional programming practices have produced a wide range of relatively independent simulation methods, predictive models of extremely complex natural and artificial systems will require a more scalable, more collaborative approach to modeling. This project strives for software that will help researchers develop, debug, document, share, and integrate simulation code.

Welcome ${RESELLERNAME} Customers

Please opt-in to receive reseller support

I agree that Autodesk may share my name and email address with ${RESELLERNAME} so that ${RESELLERNAME} may provide installation support and send me marketing communications.  I understand that the Reseller will be the party responsible for how this data will be used and managed.

Email is required Entered email is invalid.

${RESELLERNAME}