Skip to content

Commit 9219ba4

Browse files
authored
Update CHANGES for 26.04 (#5264)
1 parent 388b0db commit 9219ba4

File tree

1 file changed

+150
-0
lines changed

1 file changed

+150
-0
lines changed

CHANGES.md

Lines changed: 150 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,153 @@
1+
# 26.03
2+
3+
## Highlights:
4+
5+
* Fix a number of bugs found by AIs.
6+
- Fix facediv_int z indexing (#5239)
7+
- FilFC: Fix a copy-paste typo (#5240)
8+
- ParReduce: Fix comments (#5238)
9+
- Fix assertions in particle IO to include runtime int comps (#5205)
10+
- Filter transform fix (#5192)
11+
- Fix empty vector dereference in HDF5 particle IO (#5195)
12+
- Fix Dual Grid restart with HDF5 format (#5137)
13+
- Make sure number of neighbor particles is preserved on swap (#5186)
14+
- Fix HDF5 handle leaks in early exits (#5187)
15+
- Fix InitFromBinary for the case that NP % NReaders != 0 (#5184)
16+
- Fix resource leaks in ParticleContainer::RestartHDF5 (#5185)
17+
- SUNDIALS: remove MemoryHelper's move operator= (#5178)
18+
- SUNDIALS: Fix a memory leak in N_VDestroy_MultiFab (#5176)
19+
- SUNDIALS: Fix memory leak in N_VWL2Norm_MultiFab (#5177)
20+
- Fix typo in N_VConstrMask_MultiFab (#5175)
21+
- HDF5: Fix missing GPU device-to-host_copy in writing plotfile (#5174)
22+
- Fix BaseFab::contains (#5171)
23+
- Fix assertion in bisect (#5169)
24+
- Fix bug in `bisect` (#5167)
25+
- Fix restart where you lose a level and NReaders > NProcs() (#5074)
26+
- Fix caching mechanism for neighbor particle mask (#5080)
27+
- FileSystem::Remove: Fix return value (#5136)
28+
- Mask: Fix writeOn/readFrom for multiple components (#5117)
29+
- BndryRegister: Make sure assertion does not access out-of-bound memory (#5112)
30+
- FillPatcher: Robustify assertions (#5120)
31+
- VisMF: Avoid UB-prone assertions on potentially empty strings (#5133)
32+
- AmrLevel::FillPatch: Fix assertion (#5127)
33+
34+
* Implement pure-SoA HDF5 particle IO (#5204)
35+
36+
* Add external GPU stream override support (#5199)
37+
Expose APIs to install and reset a user-managed GPU stream, document the
38+
new behavior, and add a GPU test covering the external-stream execution
39+
path.
40+
41+
* Parser: fix self assignment of locals (#5189)
42+
When a local variable appeared on both sides of an assignment (e.g., `r
43+
= x*x + y*y; r = sqrt(r);`), the parser would compile the RHS while the
44+
new `r` slot was already active, so the RHS saw the uninitialized
45+
version of `r`. We now compile the RHS first and only add/update the
46+
local slot after, so self-referential assignments evaluate correctly.
47+
48+
* Add FillBoundaryAndSync(Vector) (#5138)
49+
This is similar to FillBoundary(Vector). It can reduce latency when
50+
FillBoundaryAndSync is needed for multiple FabArrays/MultiFabs. In the
51+
future, we could further optimize it by more aggressive GPU kernel
52+
fusion and MPI aggregation.
53+
Also add FillBoundary_nowait(Vector), FillBoundary_finish(Vector),
54+
FillBoundaryAndSync_nowait(Vector), and
55+
FillBoundaryAndSync_finish(Vector).
56+
57+
* ParmParse: Add TOML-like features (#4950)
58+
Add new TOML-like features:
59+
- Multi-line string using `"""`.
60+
- Array using square brackets.
61+
- Table using [table] as header.
62+
63+
## Other major changes:
64+
65+
* FFT: Fix one-d mode in 2D & 3D builds (#5225)
66+
67+
* Avoid invalid in AMReX_MFInterp_3D_C.H (#5215)
68+
69+
* Geometry: Exceptions (#5219)
70+
71+
* Add section on using LLMs to CONTRIBUTING.md (#5211)
72+
73+
* Avoid undefined behavior in Random_int by having it always return 0 for n = 0. (#5206)
74+
75+
* Clean up RedistributeCPU (#4529)
76+
77+
* ParmParse::add: Improve TOML compatibility (#5196)
78+
79+
* Fix tracer particle Timestamp to respect indices argument (#5194)
80+
81+
* Managed Arena: Do not pre-allocate if managed memory is not supported. (#5183)
82+
83+
* ParmParse: Preserve quotes when printing strings (#5188)
84+
85+
* Fix hidden direction support for multilevel composite solves (#5141)
86+
87+
* ParmParse: accept true/false t/f for int keys (#5150)
88+
89+
* ParmParse: Fix printing TOML array (#5180)
90+
91+
* BLBackTrace: Fix null terminator (#5173)
92+
93+
* ParmParse: Support query/get a specific element from TOML array. (#5149)
94+
95+
* Parser optimization by Claude (#5146)
96+
97+
* Add Gpu::isStreamActive function (#5139)
98+
99+
* ParmParse: Refactor countval for TOML arrays (#5143)
100+
101+
* Move PETSc Initialize and Finalize to amrex::Initialize and Finalize (#5098)
102+
103+
* Hypre: No need to call hypre if local row count is zero (#5104)
104+
105+
* HypOptParse: Remove operator()(key, func) (#5105)
106+
107+
* LineDistFcnElement2d::single_seg_cpdist: Fix degenerate case (#5106)
108+
109+
* COMM_PROFILING: Fix size bug (#5135)
110+
111+
* Boundary: Fix forward declarations (#5114)
112+
113+
* EB: Assert there is no int overflow (#5111)
114+
115+
* Marching Cubes: Fix GPU memcpy (#5110)
116+
117+
* Update Fortran BC type module (#5113)
118+
119+
* BndryData: Robustify reuse check (#5116)
120+
121+
* StateDescriptor: Remove deprecated functions (#5126)
122+
123+
* MultiMask: Fix initval for multiple components (#5118)
124+
125+
* Fujitsu MPI: Fix potential null-dereference (#5122)
126+
127+
* AmrMesh: Validate input (#5119)
128+
129+
* Hypre: Remove unimplemented 1d functions to avoid confusion (#5103)
130+
131+
* Rename the `NonManagedVector` to `NonManagedDeviceVector` (#5124)
132+
133+
* ParallelDescriptor: Avoid the non-standard variable-length array (#5130)
134+
135+
* ReadAndBcastFile: Use the correct I/O process when sub-communicator is used. (#5131)
136+
137+
* OpenBCSolver: Make `define` safer (#5129)
138+
139+
* EB: Validate lookup status in getLevel/getGeometry (#5107)
140+
141+
* Nosync broadly (#4957)
142+
143+
* FFT: Use ParallelContext's communicator (#5088)
144+
145+
* FFT::Clear: Clear the map after the stored plans are destroyed (#5089)
146+
147+
* PETSc: Use PetscInt (#5090)
148+
149+
* PETSc: Fix potential memory leak (#5097)
150+
1151
# 26.03
2152

3153
## Highlights:

0 commit comments

Comments
 (0)