Kjetil Olsen Lye
3161a986a2
SolverAdapter is now more explicit on its communicator/MPI dependence. This fixes the MPI issues with CUDA/HIP/GPUISTL that were introduced with the GhostLastMatrixAdapter.
2024-09-24 10:03:23 +02:00
Tobias Meyer Andersen
5947090a9e
update the name of the solver to fit with gpuistl
2024-09-10 14:10:58 +02:00
Kjetil Olsen Lye
f97389d1b5
Merge pull request #5554 from multitalentloes/refactor_cuistl
...
refactor cuistl to gpuistl
2024-08-26 09:55:13 +02:00
Tobias Meyer Andersen
85a9ad2b61
refactor cuistl folder names
2024-08-22 15:32:21 +02:00
Tobias Meyer Andersen
3f4ae4ddf4
refactor cuistl namespace
2024-08-22 13:52:50 +02:00
Arne Morten Kvarving
1cc27754d8
FlexibleSolver: optionally instantiate for float
...
PreconditionerFactory: optionally instantiate for float
these need to go in the same commit due to circular dependencies
2024-08-21 09:34:28 +02:00
Arne Morten Kvarving
d244f49813
FlexibleSolver: throw if umfpack is requested with float Scalar
2024-08-21 09:33:03 +02:00
andrthu
6c62753803
Ghost entries skipped for ilu apply and GL operator in AMG/CPR hierarchy.
...
This works since the ghost entries are the last entries
2024-06-07 14:40:53 +02:00
Tobias Meyer Andersen
e9d6b326cc
Add HIP support for AMD GPUs
...
This commits adds cmake functionality that can
hipify the cuistl framework to support AMD GPUs.
Some tests have been written as HIP does not mirror
CUDA exactly.
CONVERT_CUDA_TO_HIP is the new CMAKE argument.
CMAKE version is increased to include HIP
as a language (3.21 required).
A macro is added to create a layer of indirection
that will make only cuistl files that have been
changed rehipified.
Some BDA stuff is extracted to make sure CUDA
is not accidentally included.
2024-05-06 15:56:53 +02:00
hnil
c065d34d0e
-- added more timing to get better coverage of amg solver
...
-- added includes needed
2023-07-24 12:28:08 +02:00
Atgeirr Flø Rasmussen
7f96922c3c
Ensure UMFPACK works with FlexibleSolver.
...
Every apply() call for UMFPACK must (for now) recreate the solver.
2023-06-09 15:37:31 +02:00
Kjetil Olsen Lye
ea86e45fef
SolverAdapter now takes a reference to scalar product.
2023-05-31 16:39:45 +02:00
Kjetil Olsen Lye
ceb15e22e3
Expose CuISTL solver in FlexibleSolver.
2023-05-31 15:03:31 +02:00
Kai Bao
4b95123895
removing extra bracket to restore compilation
2023-04-03 14:15:16 +02:00
hnil
1773ea8229
fixed comment
2023-03-31 11:03:57 +02:00
hnil
528921ee6f
- added flexiblegmres
2023-03-31 11:01:49 +02:00
Arne Morten Kvarving
5f6339f6fd
FlexibleSolver: use std::make_shared
2023-03-29 09:50:09 +02:00
Arne Morten Kvarving
52d871f998
FlexibleSolver: avoid use of sstream
2023-01-02 15:18:10 +01:00
Arne Morten Kvarving
ec089af048
changed: split PreconditionerFactory in _impl file
...
and put instances in separate cpp files.
2022-08-22 09:33:15 +02:00
Atgeirr Flø Rasmussen
a0f16089f7
Re-add explicit instantiation of FlexibleSolver to reduce compile time.
2022-06-08 17:03:27 +02:00
hnil
f3acfcde0b
Adding functions for pressure system manipulation to well models.
...
Also add well-aware operator and transfer policy.
This will be used for CPR with custom operators.
2022-06-08 17:01:33 +02:00
Markus Blatt
c84b55c452
Fixes ILU for Dune 2.8
...
We got compile errors like:
/home/build/opm-simulators/opm/simulators/linalg/FlexibleSolver1.cpp:24:1: required from here
/usr/include/dune/istl/ilu.hh:140:29: error: 'double' is not a class, struct, or union type
without this patch.
Hence we use the new internal ILU functions if available.
2021-09-13 12:25:49 +02:00
Markus Blatt
db0f19ba88
Determine index of pressure from model used.
...
Previously, the user had to specify it in the json file read from the
FlexibleSolver or 1 was used. Unfortunately, the index depends on the
model used and it seem rather opaque to a user what that index is.
With this commit we determine the pressure index from the model.
2021-06-10 16:19:18 +02:00
Arne Morten Kvarving
b7e2ad3bfe
added: PropertyTree class
...
this is a thin wrapper around boost::property_tree
with this we avoid parsing property tree headers in all
simulator objects
2021-06-09 15:21:52 +02:00
Atgeirr Flø Rasmussen
c94eec872f
Allow well operators with FlexibleSolver.
2020-06-30 12:33:57 +02:00
Atgeirr Flø Rasmussen
427eac5132
Use macro for instantiations, and clean up includes.
2020-06-19 16:37:43 +02:00
Atgeirr Flø Rasmussen
3784ab9d77
Amended copyrights and made the _impl.hpp a proper header file.
2020-06-17 21:07:13 +02:00
Atgeirr Flø Rasmussen
f24b2cd708
Split instantiation files to enable parallel build.
2020-06-17 13:03:57 +02:00