AMReX-Astro / AMReX-Astro/Castro

Implement GPU performance checker

Open
#798 1 comment 0 reactions 1 assignee View on GitHub

@maximumcats is already working on this.

Since Feb 29, 2020.

GPU performance
Dominant language
C++
Stars
340
Forks
105
Avg merge
3d 8h
Merged PRs (30d)
8

Description

We should have logic in the code that detects if we are likely going to have poor GPU performance, and aborts the run if so. The simplest logic here is just to check if all of the GPU memory is allocated. The user would get a warning message saying they should restart the run with more GPUs (or run a smaller problem). If the user really wants to run in this way, we'll implement an "expert mode" runtime option that allows them to override this constraint.

The only subtlety here is how to actually stop the run. Should it be a hard crash (i.e. amrex::Error()) or a graceful one (i.e. allow the timestep to complete, and write a checkpoint)? Many of us use job scripts that chain jobs at HPC centers -- how can we implement this in a way where those job scripts can easily detect that a run has been stopped for this reason and we should no longer keep chaining?

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.