Background

David is a Distinguished R&D Staff Member and leader of the team which supports the Programming Environment and Tools for the Oak Ridge Leadership Computing Facility (OLCF).

David’s personal research interests focus on programming environments for computational science and engineering (CSE) on high-performance parallel computers (HPC), interpreted broadly. These interests are motivated and informed by the fact that David started his career as a practicing computational chemist before switching his research program to computer science. Throughout his career, David has continued to work closely with a wide variety of CSE application areas, lately primarily fusion energy and nuclear (fission) energy.

Within the OLCF, David leads a team of researchers who are responsible for the programming languages, runtimes, communication middleware, performance and correctness tools, and related aspects of the environment. This work entails close interactions with OLCF users, standards bodies, and tool developers and vendors, and is informed by R&D activities.

David also coordinates ORNL’s memberships in numerous standard bodies and other technical bodies, including the ISO C++ and Fortran programming languages, OpenACC and OpenMP programming APIs, the MPI Forum, and the SPEC benchmarking organization.

Education

1986
University of Illinois
Chemistry
Bachelor of Science (B.S.)
1993
University of Florida
Chemistry
Doctor of Philosophy (Ph.D.)

R&D Activities Contributions

Exascale Computing Project – Open MPI for Exascale (OMPI-X) - The OMPI-X project ensures that the Message Passing Interface (MPI) standard, and its specific implementation in Open MPI meet the needs of the ECP community…

Exascale Computing Project – Scaling OpenMP with LLVm for Exascale performance and portability (SOLLVE) - OpenMP, the de facto directive-based standard for on-node programming provides a convenient and flexible mechanism to exploit the substantial compute power within the nodes of…

Exascale Computing Project – Interoperable Design of Extreme-scale Application Software (IDEAS) - The IDEAS Project is intent on improving scientific productivity by qualitatively changing scientific software developer productivity, enabling a fundamentally different attitude to creating and supporting…

Center for Accelerated Application Readiness (CAAR) - In preparation for next-generation supercomputer Summit, the Oak Ridge Leadership Computing Facility (OLCF) selected 13 partnership projects into its Center for Accelerated Application Readiness (CAAR)…

SPEC High-Performance Group - The Standard Performance Evaluation Corporation (SPEC) High-Performance Group (HPG) develops benchmarks that represent large, real applications, in scientific and technical computing, Active benchmark suites include…

Programming Language C++ - C++ is a high-productivity, high-performance general programming language that is seeing increased usage in modern HPC code bases and is seeing rapid evolution by the…

OpenACC Application Programming Interface - OpenACC is a user-driven directive-based performance-portable parallel programming model. It is designed for scientists and engineers interested in porting their codes to a wide-variety of…

OpenMP Architecture Review Board - The OpenMP API supports multi-platform shared-memory parallel programming in C/C++ and Fortran. The OpenMP API defines a portable, scalable model with a simple and flexible…

MPI Forum - The MPI Forum is the community-based organization that establishes the standards for the widely-used Message Passing Interface (MPI). ORNL has been involved in the MPI…

Open MPI - The Open MPI Project is an open source Message Passing Interface implementation that is developed and maintained by a consortium of academic, research, and industry…

Highlights