Releases: exasim-project/NeoN
Release list
NeoN v.0.2.0
The NeoN developers are proud to present the v0.2.0 release. A curated list of changes can be found in our Changelog
What's Changed
- make Kokkos_ENABLE_SERIAL a default by @greole in #233
-
- added std::exit back into
NF_ERROR_EXIT. by @bevanwsjones in #225
- added std::exit back into
- Adds a minimal implementation linear algebra functionality by @HenningScheufler in #219
- Fix linalg headers by @greole in #235
- FIX: infinite loop in parallel scan on windows by @HenningScheufler in #236
- ENH: add segmentedField to represent vector of vectors by @HenningScheufler in #202
- Execute benchmarks on aws by @greole in #241
- Add comparison run to benchmark workflow by @greole in #244
- Dsl/implicit operators by @HenningScheufler in #246
- Draft minimal Ginkgo solver setup. by @greole in #250
- Dsl/temporal operators by @HenningScheufler in #259
- FIX: 1DMesh face ordering by @HenningScheufler in #261
- Add missing test update by @greole in #263
- Implementation of div operator for Field by @greole in #256
- VectorField implementation by @greole in #260
- CSR Quality of life by @bevanwsjones in #266
- implicit BCs and Laplacian operator by @HenningScheufler in #262
- Fix typos on the main page by @chihtaw in #271
- Pulling main into by @bevanwsjones in #276
- benchmarking and platform codesign by @gregorweiss in #187
- add basic span implementation by @greole in #278
- Courant number implementation by @greole in #277
- trigger workflow on pr open by @greole in #283
- Modify the delta vector direction when creating a single-cell mesh by @chihtaw in #273
- disable copying of field collection by @MarcelKoch in #270
- Feat/poisson equation by @HenningScheufler in #267
- Operators and Expression are templated on the ValueType by @HenningScheufler in #268
- Ginkgo config solver by @MarcelKoch in #272
- Add executor generator for tests and benchmarks by @greole in #251
- 281 view by @bevanwsjones in #282
- Extended AWS CI to use different instances. by @HendriceH in #265
- Thirdparty configuration for ADIOS2 by @gregorweiss in #280
- Stack implicit refactor by @greole in #288
- Stack/implicit operators by @HenningScheufler in #254
- Improve Field access safety. by @bevanwsjones in #285
- 290 linear algebra rename by @bevanwsjones in #292
- Fix/spack build by @greole in #299
- Fix/cmake target prefix by @MarcelKoch in #275
- add some example section about spack development by @greole in #300
- Enh/solver interface petsc by @happyKitesurfer in #303
- Feat/pressure velocity coupling by @HenningScheufler in #302
- Solver interface by @greole in #295
- 297 span to view by @bevanwsjones in #298
- rename to NeoN by @greole in #301
- FIX: colIdx got copied instread of referenced by @HenningScheufler in #305
- Rename Datastructures by @greole in #304
- Feat/benchmarks by @HenningScheufler in #309
- Warning reduction (and localIdx) by @bevanwsjones in #306
- views free function by @bevanwsjones in #311
- FIX: cuda compiler identified dsl::exp namespace as exp function by @HenningScheufler in #310
- Add a NeoN banner and build summary by @greole in #312
- add basic solver stats by @greole in #307
- Fix/dict propagation by @greole in #313
- Cout for dictionary by @greole in #315
- refactor residual computation by @greole in #316
- Cleanup by @greole in #321
- FIX: subview not compiled for GPU by @HenningScheufler in #323
- Add NeoN_WITH_OMP flag by @greole in #322
-
- move Vector class implementation into new source vector.cpp file. by @bevanwsjones in #318
- ENH: GaussGreenDiv uses surfaceWeights by @HenningScheufler in #324
- Clean up tests by @greole in #331
- wip allow scalar on rhs by @greole in #329
- Move sparsity pattern by @greole in #332
- add gitlab mirror workflow by @greole in #330
- Make NeoN installable by @greole in #333
- Update README.md by @greole in #337
- Fixed Vect warnings by @bevanwsjones in #338
- Fix failing vecFreeFunc compilation by @greole in #339
- add auto reuse annotate by @yhmtsai in #343
- Set up a configuration file for running GitLab CI pipelines on NVIDIA GPUs by @chihtaw in #344
- Add GitLab mirror workflow by @chihtaw in #345
- Add rules to skip GitLab CI pipeline for doc-only changes by @chihtaw in #347
- create sparsity pattern on host in serial by @greole in #348
- Add destructor to ddtOperator, SourceTerm, and SparsityPattern by @HenningScheufler in #340
- Add an option to apply pre-commit and clang-tidy fixes by @greole in #238
- fix conditional patching of ADIOS2 by @gregorweiss in #294
- read ginkgo file configs by @greole in #342
- Add a CI job to trigger FoamAdapter CI pipeline by @chihtaw in #349
- Stop mirrroing the repo to GitLab.com by @chihtaw in #351
- Skip the build job on a PR with label "Skip-build" by @chihtaw in #354
- Set up a GitLab CI job for benchmarking by @chihtaw in #353
- Trigger GitLab CI from GitHub by @chihtaw in #356
- Report LRZ GitLab CI result to GitHub by @chihtaw in #357
- Trigger FoamAdapter LRZ GitLab CI from NeoN GitHub by @chihtaw in #358
- Set up CI on a AMD GPU by @chihtaw in #360
- Fix Ginkgo config solver issue. by @greole in #368
- Use current ginkgo version by @greole in #362
- Improve third-party dependencies management, fix Ginkgo configure and GitHub CI by @chihtaw in #367
- Relocate shell scripts for GitHub and LRZ GitLab CI by @chihtaw in #372
- Use system-installed Ginkgo for CI jobs on GPUs if available by @chihtaw in #376
- Add the documentation for continuous integration by @chihtaw in #377
- Vector Matrix Solver by @greole in #370
- Refactor solver interface by @greole in #374
- Grad operator implementation by @greole in #379
- Make repo's documentation updated only when a PR is merged to main brancgh by @chihtaw in #387
- add ginkgo sycl support by @yhmtsai in https:/...
NeoN v.0.1.0
The NeoN team is proud to announce the first release of NeoN, a next generation implementation of a CFD core. NeoN leverages the features of modern C++ to implement core routines to efficiently solve PDEs required by CFD frameworks like OpenFOAM, thus NeoN helps to catch up with the rapidly evolving HPC ecosystem.
Our design goals are:
- Platform portable for all CPU and GPU hardware vendors
- Modular design leveraging the existing simulation software ecosystem like Kokkos, sundials, PETSc, or Ginkgo
- Implement an updated domain specific language for DSL that allows to encode complex partial differential equations in a concise yet powerful form
- Simple adoption within OpenFOAM
- Target multiphysics simulations and enable simple integration of coupling software like preCICE
This v.0.1 release is all about building a foundation for the future developments of NeoN. It focuses on building the foundational library structure, a first draft of the DSL API including basic kernels, and a solid CI/CD infrastructure from the start. It features unit and integration testing on Linux, macOS, and Windows as well as sanitizer and static analyzer workflows.
Integration into OpenFOAM applications are demonstrated in our FoamAdapter repository. A full list of changes can be found in the CHANGELOG.md. An exciting year is ahead of us, visit our Roadmap to find out which features are next. Thank you to everyone who contributed to NeoN