forked from ECP-WarpX/WarpX
-
Notifications
You must be signed in to change notification settings - Fork 3
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
HS development merge 8/21/2024 #146
Open
hklion
wants to merge
2,761
commits into
RevathiJambunathan:development
Choose a base branch
from
hklion:HSdevmerge_240821
base: development
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
HS development merge 8/21/2024 #146
hklion
wants to merge
2,761
commits into
RevathiJambunathan:development
from
hklion:HSdevmerge_240821
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
* Update spacecraft charging test * Apply suggestions from code review * Apply suggestions from code review * Make calculation of `rho_integral` faster * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci * Update Examples/Physics_applications/spacecraft_charging/PICMI_inputs_rz.py * Update checksum --------- Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
* Docs: update hybrid-pic description and parameters * also update docstring in picmi
* AMReX: Weekly Update * pyAMReX: Weekly Update * AMReX: Weekly Update --------- Co-authored-by: roelof-groenewald <[email protected]>
* Fix a number of compilation warnings * remove `m_` from non-member variables
* Clean up BeamRelevant with TypeMultiplier The BeamRelevant reduced diagnostics had a lot of code where `amrex::ReduceOps` were constructed from lists of types. It is hard to see immediately how many types are in that list. The `TypeMultiplier` utility can reduce this to make it more legible and this was done here. * Change length variable to constexpr size_t The variables `num_red_ops_*` are used for the TypeMultiplier and also for the length of the output vectors for the reduced diagnostics. This commit changes their type from `const int` to `constexpr size_t` because this is more appropriate for a vector length, and with constexpr we indicate that the value is constant and can be evaluated at compile time already.
* fix unfreed host buffer and missing iteration and series close in ParticleHistogram2D * More efficient resize Co-authored-by: Weiqun Zhang <[email protected]> --------- Co-authored-by: Axel Huebl <[email protected]> Co-authored-by: Weiqun Zhang <[email protected]>
Removing the GPUClock cost function due to the following reasons. Incomplete Implementation: The implementation is only added to selected kernels. The implementation is not generalized to work with varying occupancy of different kernels, even if it were used in all kernels. The implementation is verbose. Unused: Our host-side timer implementation was in the last years extended to synchronize kernels at minimal overhead cost. This and heuristic is actually used. Research scope shifted: In the last years, we realized that we do not need more precise scalar cost functions, but instead vector cost functions to build better load balance performance models from. Costly when used: The implementation uses an atomic add of each kernel, instead of, e.g., just using one per warp. This adds severe memory bandwidth strain. Costly, even if not used: The implementation adds about 4 registers unnecessary to all instrumented GPU kernels once compiled in (by default).
* AMReX: Weekly Update * pyAMReX: Weekly Update
Follow-up to ECP-WarpX#3137
* Evolve Loop: Simplify Introduce structure functions to simplify the number of calls in our main evolve loop. * Code Review (Dave) Thank you! :) * Update Timer Cost Rescaling * simplify return logic Co-authored-by: Luca Fedeli <[email protected]> * Rename: `HandleParticlesAtBoundaries` from `InjectRedistributeScapeParticles` * Fix Typo: scrape --------- Co-authored-by: Luca Fedeli <[email protected]> Co-authored-by: David Grote <[email protected]>
…Jambunathan/WarpX into HarrisSheetInXPMLParameters_DMRefPatch_RefineAddPlasma
* add thermal as particle boundary type * separate file for gaussian distribution function * parse and apply thermal boundary * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci * fix typo * fixing unused var * isAnyThermal as static fctn is warpx class, instead of particle boundaries struct * unused var for 1D, 2D, RZ * change API for u_th * add thermal for PEC * file name change * Update Source/Particles/ParticleBoundaries_K.H Co-authored-by: David Grote <[email protected]> * restructure rethermalize within ifdef for apply boundary * add CI test * doc * fix py file name * condition for 0 uth * typo * fix path for reduceddiags * no chksum too noisy * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci * addchksum * import os * Update Examples/Tests/particle_thermal_boundary/analysis_2d.py * Update Source/Particles/ParticleBoundaries_K.H --------- Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> Co-authored-by: David Grote <[email protected]> Co-authored-by: Remi Lehe <[email protected]>
…y CI test (ECP-WarpX#4136) * clang-tidy CI test: add performance-unnecessary-* checks * fixed issues * address issues found with clang-tidy * address issues found with clang-tidy * change name for clarity * fixed bug * address issues found with clang-tidy * fix issue found with clang-tidy * fix bug * remove file apparently added due to merge conflict * fix bug * fix bug * addressed all issues found with clang-tidy * fix issues found with clang-tidy * revert space deletion * fix variable name * fix issues found with clang-tidy * fix some residual issues found with clang-tidy * Update Source/Diagnostics/BTDiagnostics.H Co-authored-by: David Grote <[email protected]> --------- Co-authored-by: David Grote <[email protected]>
* AMReX: Weekly Update * pyAMReX: Weekly Update
* added instructions and script to run clang-tidy locally * make script executable * remove installation of blaspp and lapackpp from runClangTidy.sh script * improved documentation
… CI test (ECP-WarpX#4684) * Clang tidy CI test: add several clang-analyzer-* checks to clang tidy CI test * address issues found with clang-tidy * fix bug * fix spaces * simplify * avoid using potentially confusing v[counter++] syntax * disable clang-analyzer-optin.mpi.MPI-Checker * make thread_required constexpr in mpi_init * make thread_required constexpr in mpi_init * disable clang-analyzer-optin.performance.Padding * start using get_field_pointer * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci * introduce AMREX_ASSUME * update amrex * using get_field_pointer more * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci * use new function get_field_pointer * use new functions to get fields and field pointers everywhere * fix bug * bugfixing * add missing [[nodiscard]] and remove redundant [[nodiscard]] * address issue related to auto* const found with clang-tidy * fix bug * fix issue found with clang tidy * fixed bug * fix bug --------- Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
- use a TMPFS build directory instead of HOME: less quota strain, faster - update optimas install: from PyPI, install torch on CPU, too - rename venvs: ensure -cpu or -gpu is seen on the prompt when activated
…s with multi-J PSATD. (ECP-WarpX#4815)
* updated docs about focal distance
…pX#4648) * Allocate 2x rho * Copy rho * Allocate G * Implemented Green function * Filled values of the integrated Green function * Call computePhiIGF * Added test script and correct periodicity * Do not call the Poisson solver if the charge is 0 * Correct compilation errors * Perform copy back to phi * Correct a few bugs * Improve comparison with theory * Simplify implementation * Add relativistic factor * Use new distribution mapping * Use ParallelCopy for rho and phi * Use correct DistributionMapping * Cleaner implementation with nx,ny,nz * More compact syntax for BoxArrays * Avoid floating-point error * Fixes to avoid issues with photon containers and empty containers * Add more timers * Fix ParallelCopy usage * Use Taylor expansion for pathological terms * Use more accurate expression * Update Source/ablastr/fields/PoissonSolver.H * Correctly fill ghost cells of phi * Update Green function formula * start automated test * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci * add warpx.poisson_solver to test * moved computePhiIGF in separate file * updated test analysis * add user interface and checks * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci * fixed BC assert * add ifdefs * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci * removed unused import * fix bracket * fix checks * check 3D and PSATD * fix and add asserts * fix rho mult by eps0 * fix typo * update test * reset benchmark from azure * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci * fix clang-tidy tantrums * add literals * other checks * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci * forgot WarpX:: * forgot semicolons :| * docs and comments * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci * forgot semicolon again * Update Source/ablastr/fields/IntegratedGreenFunctionSolver.H Co-authored-by: Axel Huebl <[email protected]> * Update Source/ablastr/fields/IntegratedGreenFunctionSolver.H Co-authored-by: Axel Huebl <[email protected]> * Update Source/ablastr/fields/IntegratedGreenFunctionSolver.H Co-authored-by: Axel Huebl <[email protected]> * Update Source/ablastr/math/fft/WrapCuFFT.cpp Co-authored-by: Axel Huebl <[email protected]> * Update Source/ablastr/fields/IntegratedGreenFunctionSolver.H Co-authored-by: Axel Huebl <[email protected]> * Update Source/ablastr/fields/PoissonSolver.H Co-authored-by: Axel Huebl <[email protected]> * Update Source/ablastr/fields/PoissonSolver.H Co-authored-by: Axel Huebl <[email protected]> * false for device syncs * remove WarpX:: * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci * add maybe unused * fixed solver check * update test inputs * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci * Update Source/FieldSolver/ElectrostaticSolver.cpp Co-authored-by: Axel Huebl <[email protected]> * Update Source/WarpX.cpp Co-authored-by: Axel Huebl <[email protected]> * Update Source/FieldSolver/ElectrostaticSolver.cpp Co-authored-by: Axel Huebl <[email protected]> * Update Source/FieldSolver/ElectrostaticSolver.cpp Co-authored-by: Axel Huebl <[email protected]> * Update Source/FieldSolver/ElectrostaticSolver.cpp Co-authored-by: Axel Huebl <[email protected]> * Update Source/Utils/WarpXUtil.cpp Co-authored-by: Axel Huebl <[email protected]> * Update Source/Initialization/WarpXInitData.cpp Co-authored-by: Axel Huebl <[email protected]> * renamed solvers * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci * avoid rescaling rho twice * fix doxy string * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci * Simplify is_solver_multigrid * Update Docs/source/usage/parameters.rst Co-authored-by: Axel Huebl <[email protected]> * Update Docs/source/usage/parameters.rst Co-authored-by: Axel Huebl <[email protected]> * Update Examples/Tests/openbc_poisson_solver/inputs_3d Co-authored-by: Axel Huebl <[email protected]> * Update Docs/source/refs.bib Co-authored-by: Axel Huebl <[email protected]> * Update Source/FieldSolver/ElectrostaticSolver.cpp Co-authored-by: Axel Huebl <[email protected]> * adds cpp in ablastr/fields * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci * Add Missing Files * `BaseFab`: Fix Complex Type All complex types are equal, but some complex types are more equal than others. -- George Orwell * Cleaning: Includes * Cleaning: Const Refs and Doxygen * Update Source/Utils/WarpXAlgorithmSelection.cpp * Update Source/FieldSolver/ElectrostaticSolver.cpp * Fix .bib File Syntax * Update Regression/Checksum/benchmarks_json/openbc_poisson_solver.json --------- Co-authored-by: Remi Lehe <[email protected]> Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> Co-authored-by: Tools <[email protected]> Co-authored-by: Axel Huebl <[email protected]>
Small compile issues seen in ImpactX.
* AMReX: 24.04 * pyAMReX: 24.04 * WarpX: 24.04
* Fix outdated element-wise comparison based assertions * Fix `<` to `<=` Co-authored-by: Weiqun Zhang <[email protected]> --------- Co-authored-by: Weiqun Zhang <[email protected]>
…nXPMLParameters_DMRefPatch_RefineAddPlasma_smoothBufferFieldsremoved_mergewithHS absorbinglayer_refineplasma_initlevel0
* Add oneMKL FFT to AnyFFT wrapper for SYCL backend
* EB: Assert that its used Currently, users MUST use EB if it was compiled in. This will change with ECP-WarpX#4865 . * CI: No EB if not tested * Remove Test: `pml_x_yee_eb` This test does not yet test PML + EB. It just ran a regular test without EB, after compiling EB. * RZ supports EB :)
This likely can race in superbuilds of dependent projects.
Needed for headers such as `Python.H` from CPython.
* AMReX: Weekly Update * pyAMReX: Weekly Update * AMReX: `int` Index Type for Bins Binning functions are refactored from `unsigned int` to `int` in AMReX-Codes/amrex#3684 for performance reasons. This updates our usage to reflect the changes. * `ref_ratios.size()` -> `max_level` Address a breaking change in AMReX. * Update ThetaImplicitPicard_1d,SemiImplicitPicard_1d AMReX default change: `amr.max_grid_size` is 64 from 32 now. Since these tests are run with 2 MPI ranks, ensure we have at least one box per MPI rank. Instead of 20=40/2 set again to 32, to keep checksums the same.
There were only a few tests using `useOMP = 0`. We use one thread, so compiling OpenMP is fine. This likely had no effect, just cleaning.
…tests (ECP-WarpX#5148) * using last_fn to evaluate checksums for collisionXZ and collisionXYZ * reset CI rtol to default * update collision_rz analysis. * updating collisionZ analysis. * modified how to separate last_fn into prefix and last_it. * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci * updating checksums. --------- Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
* using new method for fusion reaction probability. * weights of colliding particles are reduced locally for fusion. * simplifying changes to NuclearFusionFunc.H * updating checksum. * removing DSMC check lines from ParticleCreationFunc.H * removed unused variables. * updaing 3D PB11 checksum. * alter comment. pushing again to test unexepected CI test failure. * fixed mistake in checksum update. * reducing duplicate coding.
* `__init__.py`: Intentionally Unused Imports Add no-quality-assurance (noqa) annotations. * Autofixes * Move Fixes ("Unsafe" - Checked & Edited) * Errors & Their Manual Fixes * Sphinx: Import has side-effect (keep) * Remove unused var * Add Used `dt` - Used in `eval` below * Address Review Comments from Dave * Remove outdated perf tests Removes unmaintained and outdated performance tests we ran on older HPC machines. We will reestablish something more maintainable with CTest and NESAP workflows through containers.
…onforGnumake add cpp for Make package
* AMReX: Weekly Update * pyAMReX: Weekly Update * PICSAR: Weekly Update
* initial changes to reaction weight calculation following ECP-WarpX#5133 * remove weight reduction logic in `SplitAndScatterFunc.H` Signed-off-by: roelof-groenewald <[email protected]> * update 1d DSMC example to be runable on NVIDIA GPU (uses `cupy`) * add `m_isSameSpecies` member variable to `DSMCFunc`; reduce code duplication * reset DSMC test checksum values --------- Signed-off-by: roelof-groenewald <[email protected]>
fix name of file in Make.package
Fix a few clear typos in the instructions of LXPLUS.
* Pre-Commits: Ruff Ruff is an extremely fast Python linter and code formatter. It replaces tools such as autoflake, flake8, pyflakes, or pylint. * [pre-commit.ci] auto fixes from pre-commit.com hooks Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> * Import Bugs: Missing and Shadowing - add missing imports - fix shadowing of import names with variables * Constant `c` already imported Fix "Redefinition of unused `c`". * Fix: E741 Ambiguous variable name: `l`/`I` * Fix: File is not always closed Properly close file after reading `warpx_used_inputs`. * Checksum import: Use Temporaries Suggestion by Dave. * f-string * Capacitive Discharge Analysis: Keep Block Format off --------- Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
No description provided.