Skip to content

Commit

Permalink
Initial attempt to move HPC-BP webinar artifacts to Jekyll site
Browse files Browse the repository at this point in the history
Most of these had been in the Wordpress site media library.  Converted events are in the events-draft collection until we confirm that we've got everything.
  • Loading branch information
bernhold committed Oct 28, 2023
1 parent 91ad078 commit 09f5b5b
Show file tree
Hide file tree
Showing 226 changed files with 4,165 additions and 0 deletions.
45 changes: 45 additions & 0 deletions _events-draft/hpcbp-001-all-codes.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
---
startdate: "2016-05-04"
time: "01:00 pm - 02:00 pm EDT"
type: Webinar
series:
- "HPC Best Practices Webinars"
activities:
- "IDEAS-Classic"
link-id: webinar001
#
presenters:
- name: Anshu Dubey
affiliation: Argonne National Laboratory
github-id: adubey64
bio: "Anshu Dubey is a Computer Scientist in the Mathematics and Computer Science Division at Argonne National Laboratory and a Senior Scientist in the Department of Computer Science at the University of Chicago. She is the chief software architect for FLASH, a multiphysics multiscale HPC software that is used by several science and engineering domains as their community code. She is interested in all aspects of HPC scientific software with special emphasis on design, productivity, and sustainability issues."
#
webinar-id: 1
date: 2016-05-04T13:00-0500
title: "What All Codes Should Do: Overview of Best Practices in HPC Software Development"
presenter-ids: [dubey-anshu]
artifacts:
- label: Recording
format: YouTube
yt-video-id: YJi05p4n1Gc
- label: Slides
format: PDF
url: /assets/artifacts/hpcbp/webinar001-160504-dubey-overview.pdf
#
location: online
#
---
Scientific code developers have increasingly been adopting software
processes derived from the mainstream (non-scientific) community.
Software practices are typically adopted when continuing without them
becomes impractical. However, many software best practices need
modification and/or customization, partly because the codes are used
for research and exploration, and partly because of the combined
funding and sociological challenges. This presentation will describe
the lifecycle of scientific software and important ways in which it
differs from other software development. We will provide a
compilation of software engineering best practices that have generally
been found to be useful by science communities, and we will provide
guidelines for adoption of practices based on the size and the scope
of the project.

44 changes: 44 additions & 0 deletions _events-draft/hpcbp-002-hpc-software.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
---
startdate: "2016-05-18"
time: "01:00 pm - 02:00 pm EDT"
type: Webinar
series:
- "HPC Best Practices Webinars"
activities:
- "IDEAS-Classic"
link-id: webinar002
#
presenters:
- name: Barry Smith
affiliation: Argonne National Laboratory
github-id: BarrySmith
#
webinar-id: 2
date: 2016-05-18T13:00-0500
title: "Developing, Configuring, Building, and Deploying HPC Software"
presenter-ids: [smith-barry]
artifacts:
- label: Recording
format: YouTube
yt-video-id: pnH7JycpfiY
- label: Slides
format: PDF
url: /assets/artifacts/hpcbp/webinar002-MakeConfigureIDE.pdf
#
location: online
#
---
The process of developing HPC software requires consideration of
issues in software design as well as practices that support the
collaborative writing of well-structured code that is easy to
maintain, extend, and support. This presentation will provide an
overview of development environments and how to configure, build, and
deploy HPC software using some of the tools that are frequently used
in the community. We will also discuss ways in which these and other
tools are best utilized by various categories of scientific software
developers, ranging from small teams (for example, a faculty member
and graduate students who are writing research code intended primarily
for their own use) through moderate/large teams (for example,
collaborating developers spread among multiple institutions who are
writing publicly distributable code intended for use by others in the
community).
44 changes: 44 additions & 0 deletions _events-draft/hpcbp-003-vc-ci.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
---
startdate: "2016-06-02"
time: "01:00 pm - 02:00 pm EDT"
type: Webinar
series:
- "HPC Best Practices Webinars"
activities:
- "IDEAS-Classic"
link-id: webinar003
#
presenters:
- name: Jeff Johnson
affiliation: Lawrence Berkeley National Laboratory
github-id: jnjohnsonlbl
#
webinar-id: 3
date: 2016-06-02T13:00-0500
title: "Distributed Version Control and Continuous Integration Testing"
presenter-ids: [johnson-jeff]
artifacts:
- label: Recording
format: YouTube
yt-video-id: cqH-PIRpnRo
- label: Slides
format: PDF
url: /assets/artifacts/hpcbp/webinar003-HPC-Session3.pdf
#
location: online
#
---
Recently, many tools and workflows have emerged in the software
industry that have greatly enhanced the productivity of development
teams. GitHub, a site that hosts projects in Git repositories, is a
popular platform for open source and closed source projects. GitHub
has encoded several best practices into easily followed procedures
such as pull requests, which enrich the software engineering
vocabularies of non-professionals and professionals alike. GitHub
also provides integration to other services (for example, continuous
integration such as Travis CI, which allows code changes to be
automatically tested before they are merged into a master development
branch). This presentation will discuss how to set up a project on
GitHub, illustrate the use of pull requests to incorporate code
changes, and show how Travis CI can be used to boost confidence that
changes will not break existing code.
41 changes: 41 additions & 0 deletions _events-draft/hpcbp-004-testing-documentation.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
---
startdate: "2016-06-15"
time: "01:00 pm - 02:00 pm EDT"
type: Webinar
series:
- "HPC Best Practices Webinars"
activities:
- "IDEAS-Classic"
link-id: webinar004
#
presenters:
- name: Alicia Klinvex
affiliation: Sandia National Laboratories
github-id: amklinv
#
webinar-id: 4
date: 2016-06-15T13:00-0500
title: "Testing and Documenting your Code"
presenter-ids: [klinvex-alicia]
artifacts:
- label: Recording
format: YouTube
yt-video-id: kAC0N84JaHA
- label: Slides
format: PDF
url: /assets/artifacts/hpcbp/webinar004-testing-klinvex.pdf
#
location: online
#
---
Software verification and validation are needed for high-quality and
reliable scientific codes. For software with moderate to long
lifecycles, a strong automated testing regime is indispensable for
continued reliability. Similarly, comprehensive and comprehensible
documentation is vital for code maintenance and extensibility. This
presentation will provide guidelines on testing and documentation that
can help to ensure high-quality and long-lived HPC software. We will
present methodologies, with examples, for developing tests and
adopting regular automated testing. We also will provide guidelines
for minimum, adequate, and good documentation practices depending on
the available resources of the development team.
40 changes: 40 additions & 0 deletions _events-draft/hpcbp-005-hpc.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
---
startdate: "2016-07-14"
time: "01:00 pm - 02:00 pm EDT"
type: Webinar
series:
- "HPC Best Practices Webinars"
activities:
- "IDEAS-Classic"
link-id: webinar005
#
presenters:
- name: Katherine Riley
affiliation: Argonne Leadership Comptuting Facility
github-id: kmriley
#
webinar-id: 5
date: 2016-07-14T13:00-0500
title: "How the HPC Environment is Different from the Desktop (and Why)"
presenter-ids: [riley-katherine]
artifacts:
- label: Recording
format: YouTube
yt-video-id: rNHd6rbvxro
- label: Slides
format: PDF
url: /assets/artifacts/hpcbp/webinar005-supercomputers.pdf
#
location: online
#
---
High performance computing has transformed how science and engineering
research is conducted. Answering a question in 30 minutes that used
to take 6 months can quickly change the way one asks questions. Large
computing facilities provide access to some of the world’s largest
computing, data, and network resources in the world. Indeed, the DOE
complex has the highest concentration of supercomputing capability in
the world. However, by nature of their existence, making use of the
largest computers in the world can be a challenging and unique
task. This talk will discuss how supercomputers are unique and explain
how that impacts their use.
49 changes: 49 additions & 0 deletions _events-draft/hpcbp-006-parallel-io.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
---
startdate: "2016-07-28"
time: "01:00 pm - 02:00 pm EDT"
type: Webinar
series:
- "HPC Best Practices Webinars"
activities:
- "IDEAS-Classic"
link-id: webinar006
#
presenters:
- name: Feiyi Wang
affiliation: Oak Ridge Leadership Computing Facility
github-id: fwang2
bio: "Feiyi Wang received his Ph.D. in Computer Engineering from North
Carolina State University (NCSU). Before he joined Oak Ridge National
Laboratory as research scientist, he worked at Cisco Systems and
Microelectronic Center of North Carolina (MCNC) as a lead developer
and principal investigator for several DARPA-funded projects. His
current research interests include high performance storage system,
parallel I/O and file systems, fault tolerance and system simulation,
and scientific data management and integration. Dr. Wang is a Joint
Faculty Professor at EECS Department of University of Tennessee and a
senior member of IEEE."
#
webinar-id: 6
date: 2016-07-28T13:00-0500
title: "An Introduction to High-Performance Parallel I/O"
presenter-ids: [wang-feiyi]
artifacts:
- label: Recording
format: YouTube
yt-video-id: amknrPhFs-8
- label: Slides
format: PDF
url: /assets/artifacts/hpcbp/webinar006-2016_HPC_IO_Intro.pdf
#
location: online
#
---
Parallel data management is a complex problem at large-scale HPC
environments. The HPC I/O stack can be viewed as a multi-layered cake
and presents an high-level abstraction to the scientists. While this
abstraction shields the users from many of the I/O system details, it
is very hard to obtain parallel I/O performance or functionality
without understanding the end-to-end hierarchical I/O stack in today’s
modern complex HPC environments. This talk will introduce the basic
parallel I/O concepts and will provide guidelines on obtaining better
I/O performance on large-scale parallel platforms.
47 changes: 47 additions & 0 deletions _events-draft/hpcbp-007-performanceanalysis.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
---
startdate: "2016-08-09"
time: "01:00 pm - 02:00 pm EDT"
type: Webinar
series:
- "HPC Best Practices Webinars"
activities:
- "IDEAS-Classic"
link-id: webinar007
#
presenters:
- name: Jack Deslippe
affiliation: Lawrence Berkeley National Laboratory
github-id: jdeslip
#
webinar-id: 7
date: 2016-08-09T13:00-0400
title: Basic Performance Analysis and Optimization – An Ant Farm Approach
presenter-ids: [deslippe-jack]
artifacts:
- label: Recording
format: YouTube
yt-video-id: -qxJf6YJ3fc
- label: Slides
format: PDF
url: /assets/artifacts/hpcbp/webinar007-160809-deslippe-antfarm.pdf
#
location: online
#
---
How is optimizing HPC applications like an Ant Farm? Attend this
presentation to find out. We’ll discuss the basic concepts around
optimizing code for the HPC systems of today and tomorrow. These
systems require codes to effectively exploit both parallelism between
nodes and an ever growing amount of parallelism on-node. We’ll discuss
profiling strategies, tools (for profiling and debugging) and common
issues with both internode communication and on-node parallelism. We
will give an overview of traditional optimizations areas in HPC
applications like parallel IO and MPI strong and weak scaling as well
as topics relevant for modern GPU and many-core systems like
threading, SIMD/AVX, SIMT and effectively using cache and memory
hierarchies. The “Ant Farm” approach places a heavy emphasis on the
roofline performance model and encouraging users to understand the
compute, bandwidth and latency sensitivity of their applications and
kernels through a series of easy to perform experiments and an easy to
follow flow chart. Finally, we’ll discuss what we expect to change in
the optimization process as we move towards exascale computers.
77 changes: 77 additions & 0 deletions _events-draft/hpcbp-008-python.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,77 @@
---
startdate: "2017-06-07"
time: "01:00 pm - 02:00 pm EDT"
type: Webinar
series:
- "HPC Best Practices Webinars"
activities:
- "IDEAS-ECP"
link-id: webinar008
#
presenters:
- name: Rollin Thomas
affiliation: National Energy Research Scientific Computing Center
github-id: rcthomas
bio: "Rollin Thomas is a Big Data Architect in the Data
and Analytics Services group. Prior to joining NERSC in 2015, he was a
Staff Scientist in the Computational Research Division.  He has worked
on numerical simulations of supernova atmospheres, observation and
analysis of supernova spectroscopy data, and data management for
supernova cosmology experiments. Rollin has served as a member of the
Nearby Supernova Factory, is a builder on the Dark Energy Survey, and
is a full member of the Large Synoptic Survey Telescope Dark Energy
Science Collaboration.  He holds a B.S. in physics from Purdue
University and a Ph.D. in astrophysics from the University of
Oklahoma."
- name: William Scullin
affiliation: Argonne National Laboratory
github-id: wscullin
bio: "William Scullin is an Assistant Computational
Scientist Argonne Leadership Computing Facility. He is a HPC systems
expert and computational generalist with a strong background in
systems administration who enables science through skillful
utilization of some of the largest supercomputers on Earth. He was an
active developer and evangelist of Python software and tools to
improve system and scientific productivity in HPC environments."
- name: Matt Belhorn
affiliation: Oak Ridge National Laboratory
github-id: mpbelhorn
bio: "Matt Belhorn is an HPC support specialist,
providing technical support and training to researchers employing the
OLCF’s leadership-class public research compute resources. Matt has a
research background in experimental high-energy particle physics. He
was a long-time collaborator of the Belle and BelleII CP-violation
experiments located at the Japanese High-Energy Accelerator Research
Organization (KEK). His research efforts include contributions to the
design and construction of BelleII’s Imaging Time-of-Propagation
(iTOP) counter. Matt developed his interest in high-performance
computing while analyzing the physics of spontaneous
particle-antiparticle oscillations."
#
webinar-id: 8
date: 2017-06-07T13:00-0400
title: "Python in HPC"
presenter-ids: [thomas-rollin, scullin-william, belhorn-matt]
artifacts:
- label: Recording
format: YouTube
yt-video-id: lSrfZHu3BZw
- label: Slides
format: PDF
url: /assets/artifacts/hpcbp/webinar008-IDEAS-Python-in-HPC-Thomas-Scullin-Belhorn.pdf
- label: Q&A
format: PDF
url: /assets/artifacts/hpcbp/PythoninHPCGoogleDoc.pdf
#
location: online
#
---
Python’s powerful elegance has driven its adoption at HPC centers for
job orchestration, visualization, exploratory data analysis, and even
simulation. But maximizing performance from Python applications can
be challenging especially on supercomputing architectures. This
webinar will explain those challenges with a practical emphasis on
using Python at NERSC, ALCF, and OLCF. We will outline a variety of
performance optimization strategies, tools for measuring and
addressing performance problems, and establish best practices for
Python in HPC.
Loading

0 comments on commit 09f5b5b

Please sign in to comment.