Skip to content

2024.09.05 Meeting Notes

Philipp Grete edited this page Sep 5, 2024 · 2 revisions

Agenda

  • Individual/group updates
  • Kokkos 4.4.00
  • par dispatch
  • Review non-WIP PRs

Individual/group updates

LR

  • finalized PR that now cleans up uses face fields vars as fluxes (rather than associated)
    • Metadata now contains shared pointer to other Metadata (so that custom flags can be enrolled for flux fields and more, e.g., non-one-copy flux vars)
    • ready for final review (particularly wrt set of choice for default flags)
  • looking at adding AMR support to CG solvers (and for multiple variables)

BP

  • KHARMA now work with latest Parthenon release
  • KHARMA main develop branch should be in sync with Parthenon develop soon

JM

  • added two example codes. PR is open
    • calc of pi (MC estimate using particles) and ellipsis calculation
    • target: pedagogical example of modern Parthenon use -Phoebus is running on Venado
    • reasonable perf on large meshblocks, not so good performance with small ones
    • but some parts are not using MeshData yet
  • Gordon Bell (now would be the time to start -- put on agenda for next meeting)
    • small meshblock performance
    • use case (non sparse)
    • focus on shared memory (rather than
  • got bit again by Params and pinput need to be in sync across ranks
    • might take a stab at high level error checking
    • long term perspective: turn into interactive tutorial
  • signed up for TACC hackathon (Oct 15-24)

PM

  • Artemis planet formation code seeing issues with many blocks (few hundreds, say 60 64^4) per GPU
    • using packs all over the place, but vars are separate
    • down to 50% scaling efficiency at 32 GPUs
    • current best guess is that there are too many messages (between same ranks)

AR

  • fighting with older cuda interface
  • implementing CT in Flash (converting Fortran base to C++)

PG

  • working on updating/integrating various feature branches in AthenaPK
  • bring AthenaPK up to speed with develop
    • discovered bug in phdf.Get() with flatten=True
  • working with BW on updating CI container to Cuda 12
    • having issues with Ascent integration (otherwise works)
  • discovered OpenPMD API/standard <-> Parthenon implementation incompatibility (wrt using / in Attribute names)
    • after checking with opmd devs will use replacement character (non math or other common character) as and updated API with additional interfaces to support this kind of use case is not quite there yet.

Kokkos 4.4.00

  • should we bump sooner than later?
  • yes

par dispatch

  • all tests pass now (and integration works in Flash)
  • some design choices are left open (there's a lot of template machinery)
  • latest update now contains loop patterns in single function (which make is more parseable) using indexer
  • missing inner_loop reductions
  • simd functionality now works, too
  • main advantages
    • uniform support for bounds and all patterns
    • new cleaner/shortened interface
    • simplified simd loops (also for single outer parallelism)
  • potential disadvantages
    • added complexity
    • should check compile times
    • should check performances (due to use of indexers)

nonWIP PR

  • Unify par_dispatch, par_for_outer & par_for_inner overloads #1142 (see discussion above). JM, LR will review (and iterate). PG will review in 2.5 weeks.
  • Allow for accessing flux Metadata from Metadata::WithFluxes Metadata #1161 PM approved. PG and JM will do final review

next meeting tentatively 19 Sep (JM will lead)

Clone this wiki locally