Skip to content

Fix -m #1257

Merged
pgrete merged 3 commits intodevelopfrom
dempsey/mesh_test
Jun 10, 2025
Merged

Fix -m #1257
pgrete merged 3 commits intodevelopfrom
dempsey/mesh_test

Conversation

@adamdempsey90
Copy link
Copy Markdown
Collaborator

Currently, the -m option will correctly spit out the mesh information, but then crash here https://github.com/parthenon-hpc-lab/parthenon/blob/develop/src/mesh/mesh.cpp#L755 inside Mesh::Initialize. But, I think it's okay to just exit immediately after the mesh data has been written to disk, so this PR adds that exit in.

An alternative is to have ParthenonInitPackagesAndMesh return a ParthenonStatus and let the host code decide what to do.

PR Summary

PR Checklist

  • Code passes cpplint
  • New features are documented.
  • Adds a test for any bugs fixed. Adds tests for new features.
  • Code is formatted
  • Changes are summarized in CHANGELOG.md
  • Change is breaking (API, behavior, ...)
    • Change is additionally added to CHANGELOG.md in the breaking section
    • PR is marked as breaking
    • Short summary API changes at the top of the PR (plus optionally with an automated update/fix script)
  • CI has been triggered on Darwin for performance regression tests.
  • Docs build
  • (@lanl.gov employees) Update copyright on changed files

Copy link
Copy Markdown
Collaborator

@Yurlungur Yurlungur left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

Copy link
Copy Markdown
Collaborator

@pgrete pgrete left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for the straightforward fix.

I've extensively been using -m and always looked away when it crashed 😄

@pgrete pgrete enabled auto-merge (squash) June 10, 2025 07:49
@pgrete pgrete merged commit acaa758 into develop Jun 10, 2025
37 checks passed
lroberts36 pushed a commit that referenced this pull request Jun 18, 2025
* Exit cleanly if -m is set after Mesh is constructed but before initialize

* Update CHANGELOG.md
@Yurlungur Yurlungur deleted the dempsey/mesh_test branch June 20, 2025 19:51
pgrete added a commit that referenced this pull request Sep 10, 2025
* start

* seemingly works

* format

* remove intermediate prints

* print some solutions

* small

* remove comments

* Increase MPI timeout counter by 10x (#1243)

* cleanup output and add option of outputting a specific stage

* docs

* changelog and formatting

* oops swarms are only in Base

* formatting

* lukes nicer cleanup

* add compute asymmetry script

* Add shebang to movie2d

* document how to change output cadence from restart

* changelog

* CC

* CC

* add discussion of SMR to AMR doc

* changelog

* typo thanks patrick

* Try to move all LogicalLocation related logic to class methods

* fix bugs

* make sure colorbar label generated

* add resport_asymmetry

* Update doc/sphinx/src/outputs.rst

Co-authored-by: Philipp Grete <pgrete@hs.uni-hamburg.de>

* Update doc/sphinx/src/outputs.rst

Co-authored-by: Philipp Grete <pgrete@hs.uni-hamburg.de>

* Add checks for `parthenon/mesh/multigrid = true` when using multigrid block lists (#1241)

* add checks and move things to being private

* changelog

* [Bugfix]: Propagate flux `Metadata` correctly in `SparsePool` (#1249)

* propagate flux metadata correctly in SparsePool

* changelog

* [Trivial] Fix leftover reference to old coords interface (#1251)

* Fix leftover reference to old coords interface

* Fix doc formatting

* Release 25.05 (#1252)

* Release 25.05

* Update CHANGELOG.md

* Add support for uint64 swarm vars and add default ids (#1253)

* Add support for uint64 swarm vars and enforce ids

* Provide known name for id field in xdmf. Always write ids

* Allow disabling unique ids for particles (old default behavior)

* Update Changelog

* Fix doc format

* Allow writing of swarm xdmf for rst outputs

* Fix unsafe/errornous casting

* Add comment on use of nonpersistnet ids in traces

* New CUDA CI+development Docker container (#1162)

* update CI Docker container

Update to CUDA 12.6, Ubuntu 24.04, and Clang 19.

* update OpenMPI

* revert to OpenMPI 4.1.4

* add ADIOS2+openPMD

* add c-blosc ubuntu package

* fix Dockerfile.nvcc

* fix dockerfile

* install python headers

* install cmake from apt (required for aarch64)

* remove duplicate cmake dep

* disable ascent build

* add newer ascent version

* disable ascent build; fix openpmd build

* downgrade to CUDA 12.0

* fix ascent build path

* fix bug in build_ascent.sh

* remove unneeded patches

* ascent complains if MFEM is not built

* control cuda support for ascent with env var

* add MAKEOPTS=--output-sync=target

* add comment to Dockerfile

* Downgrade numpy

* Fix ADIOS2 and OpenPMD versions

* Directly use Ascent script with small patch

* Use Cuda12.1 container and drop to local user

* add emacs and vi

* set build_jobs=`nproc` to avoid OOM kill

* add developer tools for Codespaces/VSCode

* add devcontainer.json

* update to CUDA 12.8 and VTK-m 2.3

* update image ref

* fetch BLT

* extract BLT into correct dir

* avoid uid 1000

* build and publish Docker image based on Dockerfiles in repo

* Update CI image to be used

* Fix python version used for linting

* Bump opmd to stable release

* Add changelog

* Use updated clang for compiler check

* remove docker-publish action

* Fix C++20 build

* Attempt to fix Parthenon Ascent dep

* Try Ben's BLT build fix

* Fix Ascent build

* Include opmd in rocm image

* Use actual image

---------

Co-authored-by: Philipp Grete <pgrete@hs.uni-hamburg.de>

* Fix -m  (#1257)

* Exit cleanly if -m is set after Mesh is constructed but before initialize

* Update CHANGELOG.md

* remove kokkos warning

* add core dump output format

* check that only one core dump file is requested

* changelog

* update docs and delete accidentally added files

* output postfix -> .chdf

* make sure to slurp in fluxes

* add a 5

* CC

* more CC

* example CC

* comment that ghost zones exist

* seemingly working timeout capability

* seemingly working

* add timing option

* format

* changelog

* Remove old receive try test

* remove comm buffer hang check

* use task collection for internal mesh communication

* Add timeout parameter to doc

* format

* Update src/mesh/mesh.cpp

* Update src/tasks/tasks.hpp

* Fix auto-docs and typo

* respond to Philipp's comments

* check the task collection return status

---------

Co-authored-by: Philipp Grete <pgrete@hs.uni-hamburg.de>
Co-authored-by: Jonah Miller <jonahm@lanl.gov>
Co-authored-by: Jonah Miller <jonah.maxwell.miller@gmail.com>
Co-authored-by: Ben Wibking <ben@wibking.com>
Co-authored-by: Adam M. Dempsey <adempsey@lanl.gov>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants