Apr
15
Wed
Best Practices for Using Proxy Applications as Benchmarks
Apr 15 @ 1:00 pm – 2:00 pm

The IDEAS Productivity project, in partnership with the DOE Computing Facilities of the ALCF, OLCF, and NERSC and the DOE Exascale Computing Project (ECP) has resumed the webinar series on Best Practices for HPC Software Developers, which we began in 2016.

As part of this series, we offer one-hour webinars on topics in scientific software development and high-performance computing, approximately once a month. The next webinar in the series was titled Best Practices for Using Proxy Applications as Benchmarks, and was presented by David Richards (Lawrence Livermore National Laboratory) and Joe Glenski (Hewlett Packard Enterprise). The webinar will took place on Wednesday, April 15, 2020 at 1:00 pm ET.

Abstract:

Proxy applications have many uses in software development and hardware/software co-design. Because most proxies are easy to build, run, and understand, they are especially appealing for use in benchmark suites and studies. This webinar examined the role of proxy apps as benchmarks and explained why run rules and a figure of merit are essential for a proxy application to function as an effective benchmark. The presenters showed how to evaluate the fidelity of benchmarks as a model for actual workloads and provided tips on creating problem specifications and other run rules. The presenters discussed what DOE facilities are looking for when they assemble benchmark suites for use in procurements. Finally, the presenters explained how system vendors use their benchmark suites and what practices they view as most (and least) effective.

Apr
24
Fri
Strategies for Working Remotely: Challenges Faced by Parents Who are Working Remotely, and Overcoming Them
Apr 24 @ 3:00 pm – 4:30 pm

The IDEAS ECP Productivity project has launched an informal working remotely panel series with a target of covering a new topic every other Friday.  The next installment in the series took place April 24th and was titled, “Challenges Faced by Parents Who are Working Remotely, and Overcoming Them”.

Abstract:  While working remotely is challenging enough, many are currently experiencing unique complexities involved with parenting, transitioning to online school at home, and working productively while practicing social distancing in response to COVID-19.  In the second installment of the IDEAS-ECP panel discussion series, we brought together four ECP staff members, a new staff member on-boarding with a National Lab, and a Montessori educator to share ideas and resources.  Panelists made brief introductory comments followed by open discussion.

You can find the the video of the panel discussion as well as additional resources that were shared during the webinar in the area below titled “Materials from the Webinar”.

May
13
Wed
Accelerating Numerical Software Libraries with Multi-Precision Algorithms
May 13 @ 1:00 pm – 2:00 pm

The IDEAS Productivity project, in partnership with the DOE Computing Facilities of the ALCF, OLCF, and NERSC and the DOE Exascale Computing Project (ECP) has resumed the webinar series on Best Practices for HPC Software Developers, which we began in 2016.

As part of this series, we offer one-hour webinars on topics in scientific software development and high-performance computing, approximately once a month. The May webinar was titled Accelerating Numerical Software Libraries with Multi-Precision Algorithms, and was presented by Hartwig Anzt (Karlsruhe Institute of Technology) and Piotr Luszczek (University of Tennessee). The webinar took place on Wednesday, May 13, 2020 at 1:00 pm ET.

Abstract:

With the rise of machine learning, more hardware manufacturers are introducing low-precision special function units in processor designs, often achieving up to an order or magnitude higher performance than in the IEEE double precision that is typically used as working precision in scientific computing. At the same time, a rapidly expanding landscape of mixed- and multi-precision methods generate high-quality solutions that leverage the higher compute power of reduced precision. This webinar introduced the concept of floating point formats and the IEEE standard. The speakers demonstrated how using an iterative or direct solver in lower precision impacts the solution quality. The speakers outlined several strategies that aim to preserve numerical stability and high solution quality while still computing, at least partially, in lower precision. The speakers presented several multi-precision algorithms that have proven particularly successful and elaborate on their realization and usage. The speakers also introduced open source production-quality multi-precision software packages and showed their integration and efficiency for scientific applications. The webinar focused on lessons learned and generally applicable strategies.

May
21
Thu
Strategies for Working Remotely: Making the Transition to Virtual Software Teams
May 21 @ 3:00 pm – 4:30 pm

In response to the COVID-19 pandemic and need for many to transition to unplanned remote work, the IDEAS-ECP project has launched the panel series Strategies for Working Remotely, which explores important topics in this area. The next panel discussion in the series was titled, “Making the Transition to Virtual Software Teams”.

Abstract: Scientific software teams are now working remotely and collaborating virtually in response to COVID-19 social distancing practices. In many cases, teams were co-located, and their transition unplanned. As working remotely has suddenly become a near-universal experience for staff members of research organizations, many software teams are now functioning as completely virtual teams—geographically dispersed and interacting only through electronic communication rather than in person.  In the third installment of this IDEAS-ECP panel discussion series, we brought together several staff members of DOE laboratories, who spoke about experiences in recent transitions from co-located and partially distributed software teams to fully virtual software teams. Topics included challenges, lessons learned, unforeseen benefits, and opportunities to look for from this experience. Panelists made brief introductory comments followed by open discussion.

Panelists:

  • Jay Jay Billings, ORNL
  • Mark Gates, University of Tennessee
  • Mahantesh Halappanavar, PPNL
  • Angela Herring, LANL
  • Axel Huebl, LBNL

Moderators:

  • Ashley Barker, ORNL
  • Elaine Raybourn, SNL
May
27
Wed
ALCF/ECP UPC++ Webinar
May 27 @ 12:00 pm – 3:00 pm

UPC++: An Asynchronous RMA/RPC Library for Distributed C++ Applications

UPC++ is a C++ library providing classes and functions that support Partitioned Global Address Space (PGAS) programming. The UPC++ API offers low-overhead one-sided RMA communication and Remote Procedure Calls (RPC), along with futures and promises. These constructs enable the programmer to express dependencies between asynchronous computations and data movement. UPC++ supports the implementation of simple, regular data structures as well as more elaborate distributed data structures where communication is fine-grained, irregular, or both. The library’s support for asynchrony enables the application to aggressively overlap and schedule communication and computation to reduce wait times.

UPC++ is highly portable and runs on platforms from laptops to supercomputers, with native implementations for HPC interconnects. As a C++ library, it interoperates smoothly with existing numerical libraries and on-node programming models (e.g., OpenMP, CUDA).

In this webinar, hosted by DOE’s Exascale Computing Project and the ALCF, we will introduce basic concepts and advanced optimization techniques of UPC++. We will discuss the UPC++ memory and execution models and walk through basic algorithm implementations. We will also look at irregular applications and show how they can take advantage of UPC++ features to optimize their performance.

This training requires registration so please click the “Tickets” link above to register.

Jun
2
Tue
Preparing applications for Aurora using the Intel DPC++ Compatibility Tool
Jun 2 @ 12:00 pm – 1:00 pm

Abstract

The Intel DPC++ Compatibility Tool has been designed to assist developers with the migration of existing CUDA codes to the newly developed DPC++ language. This presentation started by briefly introducing the tool and the workflow associated with migrating either a single source file or a larger codebase. Following the introduction, the presenters focused on the successful migration of a large kernel in the NWChemEx application, and described in detail each of the critical items changed in the process.

Organizers

  • Haritha Siddabathuni Som (ALCF)
  • Ray Loy (ALCF)
  • Yasaman Ghadar (ALCF)

Presentation materials

Jun
5
Fri
An Introduction to HDF5 in HPC Environments Supporting Materials Webinar
Jun 5 all-day

In this presentation, we introduce the concept and practices of data management based on HDF5. Our main goal is to let users with no previous HDF5 experience be productive in an HPC environment as quickly as possible. As a secondary goal, we want them to be aware of the resources that will let them take their mastery of HDF5 to the next level. Attendees with a working knowledge of C/C++, Fortran, or Python, plus basic MPI programming, will get the most out of this introduction.

We have organized this presentation into five sections. We begin with a few motivating examples and heuristics for mapping between ideas and their manifestations in storage structures. We will mention viable solutions without the use of HDF5, but point out their “atomistic” character as opposed to HDF5’s holistic approach. We then show the fastest known path, in terms of user effort /and/ run time, to transform in-memory structures into bytes in storage. Having seen HDF5 in action, we take a step back to reflect on our initial problem set and what HDF5 has to offer. We then make the transition into “proper” HPC with parallel HDF5. We will discuss the inevitable challenges of an environment in which there are many more moving parts above and below the HDF5 library. It’s all about finding balance, and we will present a few proven techniques without which no user of HDF5 should be.

In the last section of this presentation, we will survey the supporting ecosystem around HDF5 and preview the intermediate topics that will be covered in a future event.

 

Jun
17
Wed
SYCL – Introduction and Best Practices
Jun 17 @ 1:00 pm – 2:00 pm

The IDEAS Productivity project, in partnership with the DOE Computing Facilities of the ALCF, OLCF, and NERSC and the DOE Exascale Computing Project (ECP) has resumed the webinar series on Best Practices for HPC Software Developers, which we began in 2016.

As part of this series, we offer one-hour webinars on topics in scientific software development and high-performance computing, approximately once a month. The June webinar is titled SYCL – Introduction and Best Practices, and will be presented by Thomas Applencourt (Argonne National Laboratory).The webinar has been rescheduled: it will now take place on Wednesday, June 17, 2020 at 1:00 pm ET.

Abstract:

SYCL is a single-source heterogeneous programming model based on standard C++. It uses C++ templates and lambda functions for host and device code. SYCL builds on the underlying concepts of portability and efficiency of OpenCL that enable code for heterogeneous processors; however, it is less verbose than OpenCL. The single-source programming enables the host and kernel code for an application to be contained in the same source file, in a type-safe way and with the simplicity of a cross-platform asynchronous task graph. The webinar provided an overview of the SYCL concepts, compilation, and runtime. No prior knowledge of OpenCL was required for this webinar. The presenter reviewed the core concepts of SYCL, and walked through several code examples to highlight its key features and illustrate best practices. SYCL by design is hardware agnostic and offers the potential to be portable across many of DOE’s largest machines.

Jun
24
Wed
OpenMP Offload Capabilities in the oneAPI HPC Toolkit
Jun 24 @ 12:00 pm – 1:00 pm

Abstract

OpenMP provides portable, performant, and productive parallel programming interfaces for applications on a wide range of platforms and is one of the programming models offered in the oneAPI HPC Toolkit. This talk presented the key capabilities of the C/C++/Fortran compilers in oneAPI, especially those to exploit the Intel Xe GPUs to be in Aurora, the ALCF’s forthcoming exascale system. Use cases of HPC applications from the Aurora Early Science Program were discussed.

Organizers

  • Ray Loy (ALCF)
  • Yasaman Ghadar (ALCF)

Presentation materials

Jun
26
Fri
Parallel I/O with HDF5 and Performance Tuning Techniques
Jun 26 @ 12:00 pm – 1:00 pm

This webinar is designed for users who have had exposure to HDF5 and MPI I/O and would like to learn about doing parallel I/O with the HDF5 library. Our main goal is to make our users aware of how to avoid poor I/O performance when using parallel HDF5 library and equip them with the tools to investigate performance.

In the first part of this presentation, we will cover HDF5 parallel library design, application programming model, and demonstrate capabilities of the HDF5 parallel library. Then we will give an overview of parallel file systems effects on HDF5 performance and will discuss the tools useful for performance investigations. We will use examples from well-known codes and use cases from HPC science applications to demonstrate these tools, along with HDF5 tuning techniques such as collective metadata I/O, data aggregation, parallel compression, and other HDF5 tuning parameters.