Arne Morten Kvarving
dd92a7446c
BlackoilModelParametersEbos: rename to BlackoilModelParameters
2024-02-01 09:05:40 +01:00
Bård Skaflestad
859db850c0
Merge pull request #5111 from lisajulia/feature/deterministic-indicesSyncer
...
Construct the matrices in the AMG hierarchy with deterministic indices.
2024-01-29 13:37:54 +01:00
Lisa Julia Nebel
6dfa9b1b76
Add comment on trailing return type with decltype that is used for detecting the signature of the coarsen function of the Dune::Amg::IndicesCoarsener
2024-01-26 14:29:19 +01:00
Lisa Julia Nebel
74608147c0
Add comment on trailing return type with decltype that is used for detecting the existence of setUseFixedOrder member function
2024-01-26 14:29:15 +01:00
Lisa Julia Nebel
5b50a4801f
Construct the matrices in the AMG hierarchy (created in the twolevelmethod) with deterministic indices if possible.
...
The function 'coarsen' for the coarser level is called with the respective flag if it is defined. Then the matrices in the AMG hierarchy are constructed with deterministic indices.
If it is not defined yet, it is called without the flag and the matrices in the AMG hierarchy are constructed with non-deterministic indices.
2024-01-26 13:51:41 +01:00
Atgeirr Flø Rasmussen
2626fbb84b
Merge pull request #5002 from multitalentloes/add_cudilu
...
Add cudilu
2024-01-25 15:43:39 +01:00
Tobias Meyer Andersen
4b0dd54f15
Add CUDA implementation of the DILU
...
preconditioner. Uses graph coloring to exploit
parallelism in upper and triangular solves when
computing a diagonal approximate inverse of a
sparse matrix. Supports blocksizes up to 3.
2024-01-25 14:26:38 +01:00
Lisa Julia Nebel
60b0a33bd4
Construct the matrices in the AMG hierarchy (created in the PreconditionerFactory) with deterministic indices if possible.
...
The function 'setUseFixedOrder' is called if it is defined and the matrices in the AMG hierarchy are constructed with deterministic indices.
If it is not defined yet, it is not called and the matrices in the AMG hierarchy are constructed with non-deterministic indices.
2024-01-25 11:32:09 +01:00
Atgeirr Flø Rasmussen
7c2f01996a
Add cpr_trueimpesanalytic option for LinearSolver parameter.
2024-01-24 13:03:18 +01:00
Atgeirr Flø Rasmussen
ae838d0b84
Merge pull request #5103 from hnil/trueimpesanalytic
...
add analytic true impes
2024-01-18 22:51:57 +01:00
hnil
bec5a233eb
removed more warings and a bug for strange index settings
2024-01-18 18:25:50 +01:00
hnil
cced62edc0
fixed warning
2024-01-18 18:18:42 +01:00
hnil
be27e2388d
fixed name in cpp file
2024-01-18 11:40:59 +01:00
hnil
1900379343
changes to adjust to review comments
2024-01-18 10:37:48 +01:00
Atgeirr Flø Rasmussen
a52bcf51b1
Initialize the communication object in initialize().
2024-01-17 12:39:52 +01:00
hnil
61329532a7
-- add true impes
...
-- moved code to hpp to avoid unnesseary logic
2024-01-12 15:33:09 +01:00
Arne Morten Kvarving
f2a2fc2938
add missing include
2023-11-22 13:18:56 +01:00
Tobias Meyer Andersen
ee95223b27
Use std::optional to only allocate reordered matrix when using multiple threads
2023-11-22 10:10:29 +01:00
Tobias Meyer Andersen
e22f4399a0
fix typo
2023-11-22 09:16:43 +01:00
Tobias Meyer Andersen
5f6c97ff3b
add OpenMP parallelized version of DILU.
...
Implement graphcoloring to expose rows in level sets that that can be
executed in parallel during the sparse triangular solves.
Add copy of A matrix that is reordered to ensure continuous memory reads
when traversing the matrix in level set order.
TODO: add number of threads available as constructor argument in DILU
2023-11-21 15:41:53 +01:00
Tobias Meyer Andersen
e2a531dd65
replace loop with std function, remove print from test
2023-11-21 09:52:48 +01:00
Tobias Meyer Andersen
3cd1873771
add graph coloring
2023-11-20 16:57:56 +01:00
Tobias Meyer Andersen
54b7f9c44f
GraphColoring.hpp: cosmetics
2023-11-20 13:06:40 +01:00
Tobias Meyer Andersen
9309f96d8f
GraphColoring.hpp: reorder headers
2023-11-20 13:06:34 +01:00
Antonella Ritorto
166c31d5f8
Bugfix. Deprecated getCollectiveComminication warning
2023-10-31 08:40:46 +01:00
Razvan Nane
45d8750e93
Fix formatting and indentation
2023-10-26 09:45:48 +02:00
Razvan Nane
cd63cc83c2
Remove redundant cpu decomposition when using gpu
2023-10-26 06:40:06 +02:00
Bård Skaflestad
7a34c20120
Remove Leftover Debug Printout
...
This information already goes to the .DBG file so there's no need
to echo it to the main console as well.
2023-10-24 09:51:12 +02:00
jakobtorben
ab0ca76194
Add DILU preconditioner
2023-10-18 14:30:17 +02:00
Atgeirr Flø Rasmussen
8b480a0a49
Merge pull request #4852 from multitalentloes/cujac_preconditioner
...
Cujac preconditioner
2023-10-16 12:46:29 +02:00
Tobias Meyer Andersen
8b396fa3dc
Update test properties of new tests using CUDA. Avoid comparison causing new warning
2023-10-16 11:31:00 +02:00
Tobias Meyer Andersen
533c5a1a3e
Combine new diagonalMV kernels into one using
...
template arguements.
Use more consistent naming conventions.
Change printing function of CuVector from output
stream overload to toDebugString().
2023-10-16 09:53:02 +02:00
Markus Blatt
e9bb5d0539
Merge pull request #4582 from Tongdongq/rocsparse-separate-wells
...
RocsparseSolver separate wells
2023-10-13 15:33:03 +02:00
Tobias Meyer Andersen
c809819cbd
Fuse kernels to optimize performance and update
...
the tests and documentation.
2023-10-13 10:31:17 +02:00
Tobias Meyer Andersen
fbeb006d45
Simplify and optimize the Jacobi preconditioner
...
apply. Fix .h and .cpp mistakes in cmake.
2023-10-13 10:31:17 +02:00
Tobias Meyer Andersen
1e4b0e97ee
Add jacobi preconditioner that runs on the GPU.
...
Implement calls to cuBlas, cuSparse and implement necessary
CUDA kernels to perform a single iteration of the jacobi preconditioner.
Add tests that verify new kernels and the preconditioner in its totality.
The preconditioner is verified on 2x2 and 3x3 blocks, which as of now
are the only supported sizes. 1x1 are not supported because cuSparse
does not support it.
2023-10-13 10:31:17 +02:00
Arne Morten Kvarving
3e047ab9cd
Merge pull request #4927 from blattms/spelling-fix1
...
Fixed spelling: achived -> achieved
2023-10-13 08:25:07 +02:00
Markus Blatt
50815209a0
Fixed spelling: achive -> achieved
2023-10-12 22:01:12 +02:00
Kjetil Olsen Lye
628b69c83c
Casting to support {fmt} v10.
...
Due to issues with anonymous enums, newer versions of {fmt} (v10) do not seem to handle the implicit conversion from enum value to `int`. Hence we need a cast for `fmt::format`-calls involving `Matrix::block_matrix::rows` (or `cols`) to compile. This seems to only be relevant for one part of the code.
For an isolated example, see https://github.com/kjetilly/fmt_fails_with_enum
2023-10-10 10:58:21 +02:00
Kjetil Olsen Lye
df0fdbbd0b
Removed call to deprecated cudaThreadExit
...
`cudaThreadExit` has been deprecated in favour of `cudaDeviceReset`, which is already being called.
2023-10-09 10:49:31 +02:00
Razvan Nane
dcc3bd70f0
Reinclude changes lost in adaptation to ISTLSolverEbosBda
2023-10-08 08:58:35 +02:00
Razvan Nane
e4abc12a05
Adapt rocsparse separate wells PR to changes made to ISTLSolverEbos
2023-10-08 08:58:35 +02:00
Razvan Nane
177a46366d
Add <rocsparse> to accelerator-mode option in doc
2023-10-08 08:58:35 +02:00
Tong Dong Qiu
b2fea287bc
Print time to apply wells for verbosity>=3
2023-10-08 08:58:35 +02:00
Tong Dong Qiu
abce3a897c
Only compile HIP kernel with hipcc
2023-10-08 08:58:35 +02:00
Tong Dong Qiu
ef6be5859e
Restore old HAVE_CUDA value
2023-10-08 08:58:35 +02:00
Tong Dong Qiu
684397129b
Make sure rocsparse can get wellcontributions
2023-10-08 08:58:35 +02:00
Tong Dong Qiu
cb20d041c3
Allow WellContributionsRocsparse to be used
2023-10-08 08:58:35 +02:00
Tong Dong Qiu
50ccea0880
Allow rocsparseSolver to choose deviceID
2023-10-08 08:58:35 +02:00
Tong Dong Qiu
9bef10a018
Set hipStream for rocsparseWellcontributions
2023-10-08 08:58:35 +02:00