-
Notifications
You must be signed in to change notification settings - Fork 133
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
Release/7.1.0 sync main with develop #511
Merged
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
ROCm 6.0 removed the deprecated macros __HIP_PLATFORM_HCC__ and __HIP_PLATFORM_NVCC__. The macros __HIP_PLATFORM_AMD__ and __HIP_PLATFORM_NVIDIA__ should be used instead otherwise WRAP_SIZE is undefined. --------- Signed-off-by: Ashesh Sharma <ashesh.sharma@hpe.com>
Update `HIP_PLATFORM` default to `amd` as the previous default, `hcc`, is no longer recognized in ROCm 5.7.0 or newer. The new default is also valid in older version of ROCm (at least back to version 4.3.1). --------- Co-authored-by: Daniel R. Reynolds <reynolds@smu.edu>
Fixes broken links in the documentation identified with the `--nitpicky` option of `sphinx-build`. --------- Co-authored-by: David J. Gardner <gardner48@llnl.gov>
Correct `versionadded` in SUNAdaptController docs --------- Co-authored-by: David J. Gardner <gardner48@llnl.gov>
* Combine the package "Changes in" sections into a single shared RST changelog. * Move the most recent changes to a separate file that can be included in the Introduction chapter of each package with the rest of the changelog (including the recent changes) as an appendix. * Use the `intersphinx` package to make links to other package functions and sections work with the combined changelog i.e., references to other package functions and sections will link to the online documentation. This should help with converting the latex example docs to RST. Note, that `:ref:` must be used when referring to Chapters/Sections as `:numref:` does not work in this case. * Sync `CHANGELOG.md` and `Changelog.rst` to make them consistent * Add a `Makefile` to build all the RST docs at once * Add a script to start a new release cycle, copies recent changes into the changelog and clears the recent changes file. * Builds the docs for PRs --------- Co-authored-by: Balos, Cody, J <balos1@llnl.gov>
Fixes inclusion of manyvector examples when cmake option is disabled Co-authored-by: David Gardner <gardner48@llnl.gov>
Changed the CMake version compatibility mode for SUNDIALS to `AnyNewerVersion` instead of `SameMajorVersion`. --------- Co-authored-by: David Gardner <gardner48@llnl.gov>
Fixed a bug in some Fortran examples where `c_null_ptr` was passed as an argument to a function pointer instead of `c_null_funptr`.
Add a section to the install guide on how to build sundials on Frontier. --------- Co-authored-by: Daniel R. Reynolds <reynolds@smu.edu> Co-authored-by: David Gardner <gardner48@llnl.gov>
* Move high level description of SUNDIALS to docs landing page * Remove file tree figure from docs (addresses #443) * Remove organization section in shared docs
This fixes compilation warnings I had with `gcc` 8.5 using `-Wall`. Many of the static functions in `sundials_hashmap.h` were unused by files that included the header. After discussion with @balos1 moving the implementations into a .c file made more sense than adding the `inline` keyword to all the functions. --------- Co-authored-by: David Gardner <gardner48@llnl.gov> Co-authored-by: Cody Balos <balos1@llnl.gov>
Add missing arkFree if arkCreate fails Add missing ARKStepFree if ARKStepCreate fails Add missing ERKStepFree if ERKStepCreate fails ---------- Co-authored-by: David Gardner <gardner48@llnl.gov>
Added CMake infrastructure that enables externally maintained addons to be optionally built with SUNDIALS. --------- Co-authored-by: David Gardner <gardner48@llnl.gov>
…#456) Fixes a bug where an MRI method would use the (likely corrupted) result of an inner stepper which returned with a recoverable error. Once adaptivity is supported, this could be handled similarly to ARK methods. --------- Co-authored-by: David Gardner <gardner48@llnl.gov>
Replaces #375 which has become too outdated to easily merge develop into.
Fixed a bug that caused error messages to be cut off in some cases. Fixes #461 --------- Co-authored-by: David Gardner <gardner48@llnl.gov>
Fixes memory leak when multiple error handlers are attached. Fixes #446 --------- Co-authored-by: David Gardner <gardner48@llnl.gov>
Fix a CMake bug that causes an MPI linking error in some C++ examples. Fixes #464
Create a shared UI for all ARKODE steppers. --------- Co-authored-by: Cody Balos <balos1@llnl.gov> Co-authored-by: David Gardner <gardner48@llnl.gov>
Cleaned up ARKODE source code files so that function declarations/implementations are in more logical locations (following the restructuring of ARKODE's user-interface). --------- Co-authored-by: David Gardner <gardner48@llnl.gov>
- Adds new 1st-3rd order MRI methods. Most are from the literature, but the rest are trivial to derive, e.g., Euler-based schemes. - Adds some of the base ERK and IRK method tables too. Note that some cannot be equipped with reasonable embeddings. - Fixes an MRI reallocation bug when switching coupling coefficients to one with more stages - Fixes a workspace size bug for MRIStep - Makes `MRIStepSetOrder` consistent with `ARKStepSetOrder` and `ERKStepSetOrder` so that a negative value sets the default order and a positive value out of range prints an error (when method initialization occurs not when `SetOrder` is called). --------- Co-authored-by: Daniel R. Reynolds <reynolds@smu.edu> Co-authored-by: David Gardner <gardner48@llnl.gov>
ARKodeSPRKTable_Create did not allocate coefficient arrays
Fix copy-paste error in order condition 6s
) For MinGW, setting the library prefix is not necessary and setting the library suffix to d.lib is incorrect. The static library suffix is .a for MinGW. Prepending those values to the list of library prefixes and suffixes might not actually cause an issue if no libraries are found that match those patterns. But slight ABI differences between MSVC and MinGW could lead to unexpected behavior when mixing binaries of both targets. This was already discussed in #407 (comment). But apparently that change got lost in one of the rebases in that PR. --------- Signed-off-by: Markus Mützel <markus.muetzel@gmx.de>
`long int` is 32 bits wide on systems that use an LLP64 data model (e.g., Windows). Use a type for which the C standard guarantees that it is 64-bit instead (i.e., `int64_t`). See the error in CI for PR #432. Signed-off-by: Markus Mützel <markus.muetzel@gmx.de> Co-authored-by: Cody Balos <balos1@llnl.gov>
…h events (#479) Addresses https://hpc.llnl.gov/technical-bulletins/bulletin-568 and also limits our github action workflows to only run on push to certain branches.
MSYS2 follows a rolling release model. I.e., most of its packages are quite new most of the time. Adding the SuiteSparse libraries in the CI tests for MSYS2 might help to detect potentially API changes early. Signed-off-by: Markus Mützel <markus.muetzel@gmx.de> Co-authored-by: Cody Balos <balos1@llnl.gov> Co-authored-by: David Gardner <gardner48@llnl.gov>
#455) Description --- Disambiguate shared and static libs `.lib` files on Windows using MSVC Suffix library output name with `_static` when building both static and shared libs on Windows Closes #454 --------- Co-authored-by: Markus Mützel <markus.muetzel@gmx.de> Co-authored-by: Cody Balos <balos1@llnl.gov>
This fixes dll search on conda where dlls are expected to be installed in prefix/bin (pretty standard layout) static or import libs still go to prefix/lib Signed-off-by: Julien Schueller <schueller@phimeca.com> Co-authored-by: Cody Balos <balos1@llnl.gov>
…ons (#481) Co-authored-by: David Gardner <gardner48@llnl.gov> Co-authored-by: Cody Balos <balos1@llnl.gov>
This is a tiny PR to updated the file folder layout for ARKODE's time-stepping module "usage" documents. Now that we do not separately document the C and Fortran interfaces in different folders, there is no need for our folder names to be, e.g., `Usage/ARKStep_c_interface/`.
This is essentially the exact file that GitHub proposes here: https://docs.github.com/en/code-security/dependabot/working-with-dependabot/keeping-your-actions-up-to-date-with-dependabot#example-dependabotyml-file-for-github-actions Adding this file to the repository would simplify the update process of actions used in the CI. You might need to additionally enable dependabot for this repository to actually make this work. You should be able to find that setting on the "Insights" tab in the "Dependency graph" section. If it works, the bot will automatically create PRs for CI actions that are out of date. You can still decide to not merge those PRs. So everything will still be in your hands. Potential caveat: This file might need to exist on the default branch of this repository (i.e., `main`) to actually have an effect. Signed-off-by: Markus Mützel <markus.muetzel@gmx.de>
Casting between `int64_t *` and `int32_t *` does *not* maintain the values in the array. Instead, it tells the compiler to interpret the memory at that pointer as an array of a different type (i.e., two `int32_t` elements "become" one `int64_t` element). That can lead to all kinds of errors and is likely not what was intended. Remove the pointer casts to allow the compiler to emit an error on compile-time instead of potentially causing, e.g., an array overflow on runtime if `sunindextype` has a different size from `KLU_INDEXTYPE`. --------- Signed-off-by: Markus Mützel <markus.muetzel@gmx.de> Co-authored-by: Cody Balos <balos1@llnl.gov>
32-bit and 64-bit Windows systems are different to 32-bit and 64-bit Linux systems, e.g., when it comes to the data model. Add a runner to the CI that builds for Windows 32-bit for coverage. Signed-off-by: Markus Mützel <markus.muetzel@gmx.de>
Switches from a vector of table names (which was often not updated) to iterating over the enum of tables so methods get included in this test automatically.
Add support for disabling interpolated output in ARKODE steppers by passing `ARK_INTERP_NONE` to `ARKodeSetInterpolantType`. Disabling interpolation can reduce the memory footprint of an integrator by two or more state vectors (depending on the interpolation type and degree) which can be beneficial when interpolation is not needed e.g., when integrating to a final time without output in between or using an explicit fast time scale integrator with MRIStep. When interpolation is disabled, rootfinding is not supported, implicit methods must use the trivial predictor, interpolation at stop times cannot be used, and calls to `ARKodeEvolve` in `ARK_NORMAL` mode will return at or past the requested output time. --------- Co-authored-by: Cody Balos <balos1@llnl.gov> Co-authored-by: Daniel R. Reynolds <reynolds@smu.edu>
Address a couple missing things noted in #488 after it was merged. --------- Co-authored-by: David Gardner <gardner48@llnl.gov>
Ginkgo now refers to DPC++ as SYCL (inline with what Intel is doing), so this just updates our interface to match the naming convention. --------- Co-authored-by: David Gardner <gardner48@llnl.gov>
Fix broken references in docs with "nitpicky" mode
Add Fortran `-check` flags with `ENABLE_ALL_WARNINGS`
Add `SUNDIALS_MAYBE_UNUSED` macro to suppresses warnings on unused entities.
…he Trivial Predictor (#495) Add the function ``ARKodeSetAutonomous`` to indicate that the implicit right-hand side function does not explicitly depend on time. When using the trivial predictor, an autonomous problem may reuse implicit function evaluations across stage solves reducing the total number of function evaluations. --------- Co-authored-by: Daniel R. Reynolds <reynolds@smu.edu> Co-authored-by: Cody Balos <balos1@llnl.gov>
Add initial log parsing Python library --------- Co-authored-by: Daniel R. Reynolds <reynolds@smu.edu> Co-authored-by: David J. Gardner <gardner48@llnl.gov>
Update the the SWIG generation and CMake build system to support Fortran interfaces for 32-bit or 64-bit sunindextype. --------- Co-authored-by: David Gardner <gardner48@llnl.gov> Co-authored-by: Daniel R. Reynolds <reynolds@smu.edu>
Revert changes to FindKLU made in #447
Fixes various issues related to building Fortran interfaces and examples on Windows
Correct required CMake version from 3.12+ to 3.18+ --------- Co-authored-by: David Gardner <gardner48@llnl.gov>
Add Fortran formatting to CI and apply it
gardner48
requested review from
balos1,
cswoodward and
drreynolds
as code owners
June 20, 2024 16:30
balos1
approved these changes
Jun 20, 2024
balos1
changed the title
Release/7.0.0 sync main with develop
Release/7.1.0 sync main with develop
Jun 20, 2024
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.