- Mar 05, 2025
-
-
- Jul 16, 2024
-
-
- Jul 11, 2024
-
-
- May 03, 2023
-
-
- Nov 14, 2022
-
-
- Sep 26, 2022
-
-
- Jun 13, 2022
-
-
- Mar 25, 2022
-
-
Andreas Klöckner authored
-
- Mar 03, 2022
-
-
- Mar 02, 2022
-
-
Matthias Diener authored
* use hash of comm_tag if not numeric * Drop comm_tag_to_mpi_tag * modulo tag_ub * flake8 * use actx mpi_comm Co-authored-by:
Andreas Klöckner <inform@tiker.net> * User persistent_dict hashing to guess a tag Co-authored-by:
Andreas Kloeckner <inform@tiker.net>
-
Matthias Diener authored
* Boundary lazy comm v2 * fixes * use pytato branch * use staple_distributed_send * add lazy option to wave-op-mpi * ci fix * initial actx support * _RankBoundaryCommunicationLazy: do not convert to/from numpy, flatten * Prototype MPIPytatoPyOpenCLArrayContext * Drop evt.wait in distributed actx * cross_rank_trace_pairs: set 'unique' tag per obj array component * Drop commented-out graph vis from mpi+lazy actx * add clone() * only use Lazy boundary comm when running with lazy actx * fix git branch * remove duplicate requirement * accept distributed+parallel actx * wave-op-mpi: add simple timing * fix MPISingleGridWorkBalancingPytatoArrayContex * fix spelling * initial lazy batched comm * select comm class based on actx * flake8 * use meshmode lazy actx * test: use random tag * undo random tag change * use random tag again * another tag fix * debug tracepair * add dbg * more dbg * Use structured tags for lazily-communicated array containers * MPISingleGridWorkBalancingPytatoArrayContext: Convert symbolic to numeric comm tags * more type annotation * support running eager comm as well * force SingleGridWorkBalancingPytatoArrayContext * wave-op-mpi: Fix name of MPI+Pytato array context * wave-op-mpi: Add missing mpi_communicator arg to DiscretizationCollection * Distributed actx: deduplicate data wrappers before partitioning * undo pytato branch * add loopy req * test with MPI * use serial actx if parallel not available * rework dependency chain * fix lint * make wave-op-mpi run without older lazy actx * adapt to recent arraycontext changes * use DistributedLazyArrayContext to simplify lazy detection * document tag arg * Simplify distributed-lazy array context usage (#218) * add get_reasonable_array_context_class * add get_reasonable_array_context_class * document tag in interior_trace_pairs * update MPI test infrastructure * restructure tests * Weak wave operator: add comm tag * Generalize MPI test orchestration for lazy * MPI test: use actx.compile * test fixes * fix sin() * Drop leap from test_mpi_communication * Add norm assert to test_mpi_communication * restore final_t * Introduce an eager-MPI array context with a sym->num tag map Co-authored-by:
Andreas Kloeckner <inform@tiker.net>
-
- Dec 06, 2021
-
-
Thomas H. Gibson authored
* Support array containers in core grudge DG ops * Convert wave example to use array containers * Update projection routine to support array containers * Convert mpi communication * Use DOFArray-based traversal routines * Containerize distributed (eager) MPI communication * Use array container in wave-op-mpi example * Clean up wave-op-mpi demo * Use non-recursive array traversal * Use map_array_container in trace pair exchange * Remove unused imports * Remove sketchy assert; shape differs when evaluating fluxes vs storing state * Refactor containerization routines * Fix suppressed logging error * Fix forward flattening map * Fix type check in projection routine * dofdesc-itize descriptors first in projection * Make flattening methods private and provide short docs * Clean up flatten/unflatten functions and document * Carefully track ordering of data in flattened array * Use container flatten/unflatten functions from arraycontext * Containerize elementwise reductions and add unit tests * Containerize nodal reductions and add unit tests * Update documentation to reflect container support * Catch scalars in op.norm * Remove flat_norm and use op.norm instead * Separate initialization and completion of send/recv * Fix documentation in operator module Co-authored-by:
Andreas Klöckner <inform@tiker.net> * Rename boundary communicator data/attributes * Comment on nonblocking MPI communication process in communicator class * Clean up comments related to rank-communication for trace pairs * Clean up/clarify documentation related to array containers * Update reduction unit tests * Documentation updates Co-authored-by:
Andreas Klöckner <inform@tiker.net> * Fix comment formatting * Containerize grad/div functions * Add checks for empty arrays in grad/div operators * Fix gradient op for vector-valued components * Correct div helper for handling empty and nested obj arrays * Clear up documentation and add clarifying notes * More shared code in array container support (#191) * Refactor grad/weak grad to use the same helper, simplify div empty handling * Factor out some redundant code in elementwise reductions Co-authored-by:
Andreas Klöckner <inform@tiker.net>
-
- Oct 25, 2021
-
-
Matt Smith authored
-
- Jun 30, 2021
-
-
- Jun 11, 2021
-
-
Thomas H. Gibson authored
* Update function: dt_non_geometric_factor -> dt_non_geometric_factors * Add timestep estimation helper function * Add clarifying remark about timestep estimation Co-authored-by:
Andreas Klöckner <inform@tiker.net> * Make wavespeed argument option * Drop dt estimator; provide characteristic lengthscales * Expand and update documentation Co-authored-by:
Andreas Klöckner <inform@tiker.net> * Allow HyperbolicOperator.max_characteristic_velocity to return local data * Add warning to dt_geometric_factors about non-volume discretizations * Add fudge factor to surface advection time step * Time step estimation: clean up freeze/thaw semantics * Wave models: clean up freeze/thaw * Variable coefficient wave model: do not nodal-reduce characteristic velocity * Add missing freeze(...) for dim=1 case * Add missing thaw in dt utils unit test * Fix variable coefficient wave example * Memoize characteristic lengths rather than geometric factors * Use actx from wave speed DOFArray in variable coefficient operator * Pass array context to estimate_rk4_timestep * Ensure application actx is passed through to timestep estimation * Update Operator method interfaces for timestepping * Always return thawed characteristic lengthscales Co-authored-by:
Andreas Klöckner <inform@tiker.net>
-
- Jun 05, 2021
-
-
Thomas H. Gibson authored
* Make nodal reductions mpi-aware * Add clarifying remark for nodal reductions Co-authored-by:
Andreas Klöckner <inform@tiker.net> * Use timestep estimation in mpi wave test Co-authored-by:
Andreas Klöckner <inform@tiker.net>
-
Thomas Gibson authored
-
- May 21, 2021
-
-
Thomas Gibson authored
-
- May 17, 2021
-
-
Thomas Gibson authored
-
- Apr 26, 2021
-
-
Matt Smith authored
Co-authored-by:
Andreas Klöckner <inform@tiker.net>
-
- Apr 25, 2021
-
-
Thomas Gibson authored
-
- Apr 16, 2021
-
-
Andreas Klöckner authored
-
- Dec 03, 2020
-
-
Alexandru Fikl authored
-
- Sep 30, 2020
-
-
Andreas Klöckner authored
-
- Sep 08, 2020
-
-
Alexandru Fikl authored
-
Alexandru Fikl authored
-
- Aug 26, 2020
-
-
Andreas Klöckner authored
For 687a28bf: Drop StrongWaveOperator, fix WeakWaveOperator, retool dagrt-fusion to use that directly
-
- Jun 24, 2020
-
-
Alexandru Fikl authored
-
- Jun 17, 2020
-
-
Andreas Klöckner authored
-
- Jun 16, 2020
-
-
Andreas Klöckner authored
-
- May 19, 2020
-
-
Alexandru Fikl authored
* uses logger instead of print * uses the provided `ctx_factory` instead of `create_some_context`
-
- May 17, 2020
-
-
Andreas Klöckner authored
-
- Aug 17, 2018
-
-
Andreas Klöckner authored
-
- Jul 09, 2018
-
-
Andreas Klöckner authored
-
- Jun 27, 2018
-
-
Andreas Klöckner authored
-
Andreas Klöckner authored
-
Andreas Klöckner authored
-
- May 10, 2018
-
-
Ellis Hoag authored
-
- Apr 30, 2018
-
-
Ellis Hoag authored
-