Arne Morten Kvarving
2245daa0c7
ISTLSolver: optionally instantiate for float
2024-08-21 09:40:24 +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
Arne Morten Kvarving
a7b99651c1
WellContributions: optionally instantiate for float
...
cuWellContributions: optionally instantiate for float
openclWellContributions: optionally instantiate for float
rocsparseWellContributions: optionally instantiate for float
these need to go in the same commit due to circular dependencies
2024-08-21 09:23:31 +02:00
Arne Morten Kvarving
9f5bad224c
openclKernels: optionally instantiate for float
2024-08-21 09:23:31 +02:00
Arne Morten Kvarving
df0a9a4055
MultisegmentWellContribution: optionally instantiate for float
2024-08-21 09:23:31 +02:00
Arne Morten Kvarving
b507c75e75
MultisegmentWellContribution: disable with float Scalars
2024-08-21 09:23:31 +02:00
jakobtorben
5d54c50ba0
Add method for defining if preconditioners should be recreated
2024-08-20 17:57:38 +02:00
Tobias Meyer Andersen
ae4e6a65fc
make autotuner use lambda that only depends on blocksize
2024-08-20 15:06:59 +02:00
Tobias Meyer Andersen
14ea44246a
add autotuner
2024-08-20 13:35:33 +02:00
Arne Morten Kvarving
14bc929fb0
ParallelOverlappingILU0: optionally instantiate for float
2024-08-19 13:51:15 +02:00
Arne Morten Kvarving
f94f1d1012
MILU: optionally instantiate for float
2024-08-19 13:50:08 +02:00
Arne Morten Kvarving
f8c04129dd
PropertyTree: add instances for float
2024-08-19 13:09:41 +02:00
Arne Morten Kvarving
e82395af99
FlowLinearSolverParameters: introduce translation unit
2024-08-16 16:59:50 +02:00
Arne Morten Kvarving
3751ca6be4
move FlowLinearSolver parameters to TypeTag-free parameter system
2024-08-16 13:23:16 +02:00
Arne Morten Kvarving
dd1bc8d75b
move FlowBaseVanguard parameters to TypeTag-free parameter system
2024-08-16 13:20:06 +02:00
Arne Morten Kvarving
3716ee664d
move BlackoilModel parameters to TypeTag-free parameter system
2024-08-16 13:20:04 +02:00
Tor Harald Sandve
0371cd5342
Change defaults
...
Use implicit IPR as default
Allow for switching of control during local well solves as default
2024-08-16 10:16:04 +02:00
Tor Harald Sandve
0e01d99741
use cprw as default linear solver
2024-08-16 10:16:04 +02:00
Arne Morten Kvarving
62a180447c
move LinearSolver parameters to TypeTag-free parameter system
2024-08-14 12:47:59 +02:00
Arne Morten Kvarving
4d339d3998
LinearSolver parameters moved to TypeTag-free parameter system
2024-08-14 09:27:52 +02:00
Arne Morten Kvarving
66747886c6
avoid unnecessary copy of jacobian
2024-08-13 13:36:05 +02:00
Arne Morten Kvarving
4577469e19
rename parameters to avoid shadowing member variables
2024-08-13 13:36:05 +02:00
Arne Morten Kvarving
9b9ae24909
mark methods override
2024-08-13 11:25:33 +02:00
Arne Morten Kvarving
835e268a8c
rename macros for consistency
2024-08-13 11:25:33 +02:00
Arne Morten Kvarving
65cc3d7400
remove unused includes
2024-08-13 11:25:33 +02:00
Arne Morten Kvarving
a1fe421de9
remove unused variables
2024-08-13 11:25:33 +02:00
Arne Morten Kvarving
8667a18144
anonymize unused parameters to avoid warnings
2024-08-13 11:25:33 +02:00
Arne Morten Kvarving
67f7bba512
mark parameters maybe_unused
2024-08-13 11:25:33 +02:00
Tobias Meyer Andersen
7a30aaa46e
Add an OPM implementation of ILU0
...
improve file structure in cuistl
run clang-format
2024-08-09 15:52:42 +02:00
Bård Skaflestad
ad595fed5e
Merge pull request #5506 from akva2/move_params_to_parameters
...
Move parameters to Opm::Parameters namespace
2024-08-09 09:16:10 +02:00
Markus Blatt
a6006b0c93
Merge pull request #5505 from lisajulia/fix/COMPDAT-NLDD
...
Fix the usage of the COMPDAT keyword in an ACTIONX for the NLDD solver for sequential runs
2024-08-08 15:35:00 +02:00
Arne Morten Kvarving
42389b0182
fixed: don't add device/host annotations to defaulted functions
...
these will automagically be generated in both compiler passes so
the specifiers are meaningless and causes nvcc to emit a warning
2024-08-08 10:56:24 +02:00
Kjetil Olsen Lye
b145b6bf11
Merge pull request #5515 from multitalentloes/avoid_exception_macro_in_device_code
...
Avoid exception macro in device code
2024-08-08 10:54:34 +02:00
Lisa Julia Nebel
f6a06f2639
Change the type of the argument possibleFutureConnections from a pointer to a const reference
2024-08-08 09:19:32 +02:00
Tobias Meyer Andersen
f1897a30ac
correct grammar
2024-08-07 13:35:52 +02:00
Tobias Meyer Andersen
fe09d147b0
use macro to make device code valid in debug mode
2024-08-07 13:31:48 +02:00
Arne Morten Kvarving
167e1f413a
Bda: add missing override specifiers
2024-08-07 11:19:45 +02:00
Arne Morten Kvarving
a65ddff8f6
changed: BlackoilModel parameters moved to Opm::Parameters namespace
2024-08-06 09:50:02 +02:00
Arne Morten Kvarving
4fc1487a9d
changed: FlowBaseVanguard parameters moved to Opm::Parameters namespace
2024-08-06 09:50:02 +02:00
Arne Morten Kvarving
0745a5e496
changed: FlowLinearSolver parameters moved to Opm::Parameters namespace
2024-08-06 07:18:28 +02:00
Lisa Julia Nebel
8cd53ecea7
Change type of possibleFutureConnections to std::unordered_map<std::string, std::set<int>>
...
Now it contains the global ids of the perforated cells for each well instead of the coordinates ijk
2024-08-05 19:31:54 +02:00
Kjetil Olsen Lye
51e8bb7191
Merge pull request #5392 from multitalentloes/add_CuBuffer
...
Add CuBuffer and CuView
2024-08-05 15:29:59 +02:00
Tobias Meyer Andersen
30013ea9d0
remove last two unneeded size t conversions
2024-08-05 13:12:35 +02:00
Tobias Meyer Andersen
62ee7bf495
fix indendation and needless conversions
2024-08-05 11:47:18 +02:00
Arne Morten Kvarving
4e0cdd289d
changed: move the AmgCoarsenTarget parameter to Opm::Parameters
2024-08-02 19:19:31 +02:00
Arne Morten Kvarving
f3af89447b
changed: move the GMResRestart parameter to Opm::Parameters
2024-08-02 19:19:31 +02:00
Arne Morten Kvarving
b5470dc3eb
changed: move the PreconditionerRelaxation parameter to Opm::Parameters
2024-08-02 19:19:31 +02:00
Arne Morten Kvarving
b23f0289e3
changed: move the LinearSolverMaxError parameter to Opm::Parameters
2024-08-02 19:19:31 +02:00
Arne Morten Kvarving
5cab2e668a
changed: move the PreconditionerOrder parameter to Opm::Parameters
2024-08-02 19:19:30 +02:00
Arne Morten Kvarving
0e06d6491b
changed: move the LinearSolverMaxIterations parameter to Opm::Parameters
2024-08-02 19:19:13 +02:00
Arne Morten Kvarving
59f586189e
changed: move the LinearSolverVerbosity parameter to Opm::Parameters
2024-08-02 19:19:13 +02:00
Arne Morten Kvarving
ffdbd2f127
changed: move the LinearSolverAbsTolerance parameter to Opm::Parameters
2024-08-02 19:19:13 +02:00
Arne Morten Kvarving
b9615ea29a
changed: move the LinearSolverTolerance parameter to Opm::Parameters
2024-08-02 19:19:13 +02:00
Arne Morten Kvarving
321a7c7305
changed: move the LinearSolverOverlapSize parameter to Opm::Parameters
2024-08-02 19:19:13 +02:00
Arne Morten Kvarving
22a116728c
changed: LinearSolverVerbosity parameter moved to Opm::Parameters namespace
2024-08-02 09:04:08 +02:00
Tobias Meyer Andersen
e8ac31da16
add CuBuffer and CuView to cuISTL
2024-08-01 16:38:16 +02:00
Markus Blatt
03dc006b88
Merge pull request #5488 from lisajulia/fix/ACTIONX-COMPDAT
...
Fix/actionx compdat
2024-07-30 17:18:04 +02:00
Arne Morten Kvarving
24c60e256f
openclSolverBackend: fix shadowing type alias
2024-07-30 11:05:48 +02:00
Arne Morten Kvarving
405a907d63
anonymize unused parameters to quell compiler warnings
2024-07-30 10:55:53 +02:00
Arne Morten Kvarving
2a9077a45c
fix macro formatting
2024-07-30 10:55:40 +02:00
Lisa Julia Nebel
efb18d0027
Add possible future connections to the grid methods that handle the well connections
2024-07-29 09:59:52 +02:00
Markus Blatt
ca2ef490aa
Merge pull request #5408 from BigDataAccelerate/cpr_rocsparse
...
rocsparse CPR initial version
2024-07-16 18:57:40 +02:00
Razvan Nane
a79d4aff5a
fix rocalutionSolver
2024-07-12 13:31:17 +02:00
Kjetil Olsen Lye
f3b5e0d14d
Merge pull request #5433 from multitalentloes/useRecomendedBlockSize
...
Autotune thread block size
2024-07-08 14:17:39 +02:00
Tobias Meyer Andersen
844c7d9f67
use std::numerics for long max values
2024-07-05 11:07:58 +02:00
Arne Morten Kvarving
74cd10b1f2
avoid using deprecated type
2024-07-03 07:58:07 +02:00
Tobias Meyer Andersen
0d8bf905d8
remove dead code
2024-06-28 14:38:25 +02:00
Tobias Meyer Andersen
3cb8298e3a
Pick blocksize automatically for CUDA cards.
...
Calibrate the best size for AMD cards.
This will be improved in a following PR
2024-06-28 14:36:00 +02:00
Kjetil Olsen Lye
9b414419e7
Merge pull request #5404 from multitalentloes/add_dilu_LU_splitting
...
Add cudilu lu splitting
2024-06-27 14:30:45 +02:00
Razvan Nane
f063f6776e
remove dependency of std::thread on openmp
2024-06-27 14:06:22 +02:00
Tobias Meyer Andersen
65aa334313
formalize new fromMatrix
2024-06-26 15:41:42 +02:00
Tobias Meyer Andersen
605e32c54b
use camelCase, remove commented code
2024-06-26 15:34:47 +02:00
Tobias Meyer Andersen
d6f8678617
use unique_ptr consistently for delayed instantiation
2024-06-26 15:31:52 +02:00
Razvan Nane
1477a4d76e
cleanup
2024-06-24 13:36:36 +02:00
Razvan Nane
deeb8a8582
fix opencl ilu jacobi threadcopy
2024-06-24 13:18:04 +02:00
Razvan Nane
7ce693ba06
fix verbose opencl preconditioner
2024-06-24 13:18:04 +02:00
Tobias Meyer Andersen
82ff782d5f
clang format
2024-06-18 11:42:00 +02:00
Tobias Meyer Andersen
2b9c81fe09
use getCudaRecomendedMaxPotentialBlocksize
2024-06-18 11:34:31 +02:00
Markus Blatt
b2c06415f4
Merge pull request #5182 from lisajulia/ilu-op-in-amg
...
Ghost entries skipped for ILU apply and SpMV operator in all levels of AMG/CPR hierarchy
2024-06-10 13:06:42 +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
Atgeirr Flø Rasmussen
71684bfe2c
Ensure 'mid' is always initialized.
2024-06-07 14:27:02 +02:00
Razvan Nane
a1c238df8e
last scalars
2024-06-05 15:30:08 +02:00
Razvan Nane
b51f27517b
more scalars
2024-06-05 15:27:22 +02:00
Razvan Nane
40c0539bc3
update copyright and scalar
2024-06-05 15:12:12 +02:00
Razvan Nane
dcbd9be46a
cleanup and run fix
2024-06-05 15:00:47 +02:00
Tobias Meyer Andersen
9b2f41ad96
Add option to split the matrix into diagonal,
...
strictly lower and stricly upper part.
Add tests checking that the result matches
the CPU dilu implementation.
2024-06-05 13:35:54 +02:00
Razvan Nane
7a307fafa0
add rocsparseCPR preconditioner
2024-06-04 17:13:13 +02:00
Razvan Nane
74b30e6bba
refactor AMG creation as a class
2024-06-04 15:13:54 +02:00
Razvan Nane
3eb87b7b04
refactor rocsparseSolverBackend to allow flexible preconditioner
2024-06-04 12:17:49 +02:00
Razvan Nane
071f009bf3
refactor preconditioner class
2024-06-04 09:47:03 +02:00
Razvan Nane
83b50f08e6
rename opencl files
2024-06-04 06:28:50 +02:00
Razvan Nane
02b76b5309
refactor rocm files
2024-06-04 06:19:28 +02:00
Razvan Nane
988d3821cd
fix compile rocsparseWellContrib
2024-05-31 11:55:53 +02:00
Arne Morten Kvarving
c92d80e0e8
Merge pull request #5399 from daavid00/fixMacOS
...
[FIX]: Build issue if OpenMP is not present
2024-05-31 09:56:39 +02:00
David Landa Marban
a6ed584ae2
[FIX]: Build issue if OpenMP is not present
2024-05-31 09:00:57 +02:00
Arne Morten Kvarving
41885f5911
ISTLSolverBda: use Scalar type from vector
2024-05-24 14:28:10 +02:00
Arne Morten Kvarving
0e537a8ae3
ISTLSolverBda: fix indent
2024-05-24 14:21:26 +02:00
Arne Morten Kvarving
ad1d862426
BdaBridge: template Scalar type
2024-05-24 14:21:26 +02:00
Arne Morten Kvarving
3eed028978
rocsparseSolverBackend: template Scalar type
2024-05-24 14:21:25 +02:00
Arne Morten Kvarving
e620d9d044
rocaluationSolverBackend: template Scalar type
2024-05-24 14:16:36 +02:00
Arne Morten Kvarving
0b22b62205
amgclSolverBackend: template Scalar type
2024-05-24 14:16:36 +02:00
Arne Morten Kvarving
23250b87e3
cusparseSolverBackend: template Scalar type
2024-05-24 14:16:34 +02:00
Arne Morten Kvarving
18f42b51b2
openclSolverBackend: template Scalar type
2024-05-24 14:09:12 +02:00
Arne Morten Kvarving
d0773ef4f7
BdaSolver: template Scalar type
2024-05-24 14:09:12 +02:00
Arne Morten Kvarving
e03f2394b9
BdaSolver.hpp: drop indent for namespace
2024-05-24 14:09:12 +02:00
Arne Morten Kvarving
7e1f4629ed
CPR: template Scalar type
2024-05-24 14:09:12 +02:00
Arne Morten Kvarving
1f39e6a9a9
BISAI: template Scalar type
2024-05-24 14:09:12 +02:00
Arne Morten Kvarving
8ea523fa68
BILU0: template Scalar type
2024-05-24 14:09:12 +02:00
Arne Morten Kvarving
b75ea188ee
Preconditioner: template Scalar type
2024-05-24 14:09:12 +02:00
Arne Morten Kvarving
05a89d1e96
cuWellContributions: template Scalar type
2024-05-24 14:09:12 +02:00
Arne Morten Kvarving
d2637e53ea
rocsparseWellContributions: template Scalar type
2024-05-24 14:09:12 +02:00
Arne Morten Kvarving
ddcfcf681d
openclWellContributions: template Scalar type
2024-05-24 14:09:11 +02:00
Arne Morten Kvarving
ff39bc3b03
WellContribution: template Scalar type
2024-05-24 14:09:11 +02:00
Arne Morten Kvarving
216f0bea0d
MultisegmentWellContribution: template Scalar type
2024-05-24 14:09:11 +02:00
Arne Morten Kvarving
ba1c6db855
OpenclKernels: template Scalar type
2024-05-24 14:09:11 +02:00
Arne Morten Kvarving
be59203179
OpenclMatrix: template Scalar type
2024-05-24 14:09:11 +02:00
Arne Morten Kvarving
5fbd7635cd
Matrix: template Scalar type
2024-05-24 14:09:11 +02:00
Arne Morten Kvarving
25374b0e54
BlockMatrix: template Scalar type
2024-05-24 14:09:10 +02:00
Arne Morten Kvarving
b9ee637d78
PreconditionerFactory: use Scalar type from operator
2024-05-24 14:03:28 +02:00
Arne Morten Kvarving
b7bc7b7bf5
Pressure(Bhp)TransferPolicy: template Scalar type
2024-05-24 14:03:28 +02:00
Bård Skaflestad
6f094c558a
Merge pull request #5256 from BigDataAccelerate/overlap_copy_jacmat_gpu
...
Overlap creation of jacobian matrix with GPU data transfers
2024-05-24 13:11:27 +02:00
Arne Morten Kvarving
60e91a0fb5
amgclSolverBackend: fix for block_size == 1
2024-05-23 13:41:26 +02:00
Arne Morten Kvarving
bf93915101
WellOperators: use field type
2024-05-22 15:39:24 +02:00
Arne Morten Kvarving
0f685d6b44
WellOperators: fix indent
...
also some formatting fixes, using instead of typedef
2024-05-22 15:30:48 +02:00
Bård Skaflestad
2fe957ca6c
Merge pull request #5368 from multitalentloes/fix_typo_cuda_aware_mpi
...
fix typo that would cause crash cuda aware openmpi
2024-05-21 11:15:00 +02:00
Tobias Meyer Andersen
9d6dcb00a3
fix typo that would cause crash cuda aware openmpi
2024-05-21 10:20:02 +02:00
Arne Morten Kvarving
ee1c531431
InitStateEquil: remove template parameter from Comm and use Parallel::Communication directly
...
in the process this quells a deprecation warning for
Dune::CollectiveCommunication usage
2024-05-15 11:20:29 +02:00
Tobias Meyer Andersen
73746b56bc
Resolve warning delete-abstract-non-virtual-dtor
2024-05-15 10:00:14 +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
Tobias Meyer Andersen
d5c088bb20
remove unused headers
2024-05-03 13:45:24 +02:00
Tobias Meyer Andersen
d795561100
remove usage of thrust
2024-05-03 12:52:27 +02:00
Atgeirr Flø Rasmussen
da5f20a0d9
Merge pull request #5145 from multitalentloes/add_gpu_direct
...
Add GPU Direct
2024-04-29 14:08:25 +02:00
Tobias Meyer Andersen
f4b9e0a3a8
add safe conversion
2024-04-17 14:31:07 +02:00
Tobias Meyer Andersen
29cc7c4925
make variable naming convention more consistent
2024-04-17 13:49:08 +02:00
Tobias Meyer Andersen
2eefedf661
remove error logging in std::cerr
2024-04-17 13:46:49 +02:00
Tobias Meyer Andersen
ccd014cc1a
remove some usage of this->
2024-04-17 13:28:30 +02:00
Tobias Meyer Andersen
a649bef271
update GPU direct support check
2024-04-17 13:28:30 +02:00
Tobias Meyer Andersen
7235f34f0e
Add classes handling correct MPI implementation
...
Make some changes to Georgs original code:
dynamically allocated arrays with std::vectors instead
Implement new class structure handling what
MPI communication implementation to use
create extra scopes to avoid reuse of index variable i
Update related tests:
Update test_cuowneroverlapcopy to account for new
class strucutre
Also remove line that invalidates the MPI tests for multiple processes
2024-04-17 13:28:30 +02:00
Georg Zitzlsberger
eb6f9dc1f9
Prototype implementation of CUDA aware MPI
2024-04-17 13:28:30 +02:00
Arne Morten Kvarving
7eba120662
avoid including MultisegmentWellContribution in WellContributions.hpp
2024-04-17 08:11:47 +02:00
Atgeirr Flø Rasmussen
d3b22323f1
Merge pull request #5284 from multitalentloes/fix_fast_amg_wrapper
...
Fix fast amg wrapper and generalize RebuildOnUpdatePreconditioner
2024-04-17 08:05:02 +02:00
Tobias Meyer Andersen
296f41ecc0
Make function that infers templates, avoid use of new
2024-04-16 15:39:17 +02:00
Arne Morten Kvarving
7311948b89
openCl preconditioners: make argument orders consistent
2024-04-16 09:39:56 +02:00
Arne Morten Kvarving
34e94256be
Preconditioner: replace if nest with switch
2024-04-16 09:39:48 +02:00
Arne Morten Kvarving
cc5f362fdc
changed: make PreconditionerType an enum class
...
this to avoid symbol clashes with the implementations.
while at it rename it to Type as Preconditioner::PreconditionerType is
redundant
2024-04-16 09:06:13 +02:00
Tobias Meyer Andersen
9e7b7b3e40
clang-format PreconditionerWithUpdate.hpp
2024-04-15 16:28:37 +02:00
Tobias Meyer Andersen
9ab15e3ff9
bugfix: make famg reconstruct on update
2024-04-15 16:24:43 +02:00
Tobias Meyer Andersen
0079a17889
re-enable DuneILU for multiprocess
2024-04-15 16:06:37 +02:00
Tobias Meyer Andersen
d97d7ba732
add some documentation
2024-04-15 15:41:58 +02:00