Name: Davis Herring
Pronouns:
Biography:
Davis Herring has been a staff scientist at Los Alamos National Laboratory since 2011 after receiving his Ph.D. in Applied Science from the University of California, Davis. His work has focused on developing computational tools and libraries that make scientific simulation software and HPC system hardware more accessible to practicing computational scientists. He currently serves as the technical lead for FleCSI, a Free Software C++ library for writing scientific software with distributed task parallelism as well as on-node parallelism. He is also one representative for LANL on the ISO C++ committee.
Institution/Lab: Los Alamos National Laboratory
Website: http://www.flecsi.org/
SRP Collaboration Topic/Title: FleCSI Task Generalization
Field or research area: parallel library programming
Please select all the topical areas that apply to your project:
Computer Science (i.e., architectures, compilers/languages, networks, workflow/edge, experiment automation, containers, neuromorphic computing, programming models, operating systems, sustainable software); High-Performance Computing
Brief Abstract:
Task-based parallelism imposes constraints on units of computational work to allow them to be dynamically scheduled for optimum hardware utilization. More sophsticated models for launching tasks can relax certain of these constraints and afford applications more expressive power in writing their tasks. Furthermore, additional information provided by the application can be used to optimize the execution of tasks with unusual semantics (e.g., that need filesystem access). We plan to explore the space of task semantics, identify which generalizations can be efficiently supported in FleCSI, and extend it to provide those which are most valuable for practical applications.
Desired relevant skills, background, or interests:
C++ programming parallel programming (in any or all of MPI, CUDA, Kokkos, OpenMP, or kernel threads) high-performance computing environments computational methods
Other comments:
FleCSI utilizes, directly or indirectly, various sophisticated programming techniques, in parallel or otherwise. We expect that training in these techniques would be part of the collaboration.
Do any special requirements apply? International OK
Other, specify:
Keywords:
C++; high-performance computing; task-based parallelism; distributed parallelism; shared-memory parallelism; GPU computation; computational physics methods
Lightning Talk Title: Generalized Task-Based Parallelism in FleCSI