Markus Blatt
4de52a8d30
Use OpenCl's CL/cl2.hpp instead of CL/cl.hpp
...
We still request Standard version 1.2 only.
We need to use KernelFunctor instead of make_kernel.
In addition cl::Sources now works on std::string and
does not support std::pair<const char*, in> anymore.
2021-10-28 16:42:43 +02:00
Markus Blatt
a1e90be2aa
Use grid view from simulator for element mapper.
...
With dune-fem the type of the grid view is
Dune::Fem::AdaptiveLeafGridPart and not the LeafGridView
of the grid. The old approach therefore did not compile
as we passed the wrong view.
2021-10-26 21:55:04 +02:00
Tor Harald Sandve
70c9d2e237
Merge pull request #3590 from daavid00/micp-2021-10
...
micp
2021-10-14 22:28:28 +02:00
daavid00
48b175904a
first version of micp implementation in flow
2021-10-14 17:44:57 +02:00
Markus Blatt
f2ce097b4b
Merge pull request #3575 from Tongdongq/fix-ilu-decomp-gpu
...
Create and use scale kernel for relaxation of ILU
2021-10-07 15:55:17 +02:00
Elyes Ahmed
0202b00d59
clean up after review
2021-10-05 13:07:52 +02:00
Elyes Ahmed
f53c597f90
Replacing use of MPI_COMM_WORLD with a variable communicator.
2021-10-05 13:07:52 +02:00
Tong Dong Qiu
68adf85f52
Create and use scale kernel for relaxation of ILU
2021-10-05 10:49:21 +02:00
Atgeirr Flø Rasmussen
e5c85e88ce
Merge pull request #3552 from fgfuchs/cuda_improvements
...
cusparsesolver wrong size and type in cols,rows fixed
2021-09-28 11:41:17 +02:00
Franz Georg Fuchs
a0ccd1e754
cusparsesolver wrong size and type in cols,rows fixed
2021-09-27 13:53:26 +02:00
Markus Blatt
3cda8a2fdb
Added missing parallel try-catch clause for updatePrimaryIntensities.
...
As Problem::updatePrimaryIntensities might throw we need to do this
to prevent dealocks in parallel run in case problem occurs.
2021-09-24 09:25:44 +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
Arne Morten Kvarving
08e950686f
use .empty() instead of .size() comparisons
2021-08-04 09:19:03 +02:00
Arne Morten Kvarving
78c5675daf
changed: get rid of OPM_UNUSED macro usages
...
prefer anonymous parameters or c++17 [[maybe_unused]]
2021-08-02 14:55:41 +02:00
Markus Blatt
ea4e4a1520
Merge pull request #3346 from Tongdongq/amgcl-support
...
Amgcl support
2021-07-21 15:02:25 +02:00
Bård Skaflestad
48e1af8bbe
Address Static Code Analysis Warnings
...
In particular, don't print uninitialized memory (Reorder.cpp:left)
and don't capture objects ('prm') that aren't actually used. While
here, refactor the initialization of the MT19937 random number
generator. Constructing this object is too expensive to do for each
try, especially when we can just run the generator in place.
2021-07-13 11:37:57 +02:00
Tong Dong Qiu
796d1b7f8a
Allow to choose a platform and device when using amgcl with VexCL
2021-07-09 17:03:11 +02:00
Tong Dong Qiu
0ee6b58fb0
Only initialize VexCL once
2021-07-09 15:39:35 +02:00
Tong Dong Qiu
b0749ce7d4
Use default parameters if json file does not specify all.
...
Throw exception if json file cannot be parsed.
2021-07-09 14:07:55 +02:00
Tong Dong Qiu
f77d745b51
Factor out CUDA part of amgclSolver
2021-07-07 16:24:52 +02:00
Tong Dong Qiu
b2156a4edc
Remove unused variable warnings
2021-07-07 16:24:52 +02:00
Tong Dong Qiu
b28c96699b
Combine blocked and unblocked VexCL implementations
2021-07-07 16:24:52 +02:00
Tong Dong Qiu
5306ae6a60
Allow VexCL to use unblocked matrices
2021-07-07 16:24:52 +02:00
Tong Dong Qiu
47ffeaf24a
Allow VexCL to use runtime parameters
2021-07-07 16:24:52 +02:00
Tong Dong Qiu
b4eb711c71
Enable the VexCL backend, disabled for blocksize=1
2021-07-07 16:24:52 +02:00
Tong Dong Qiu
a3d8d6655f
Added enum for amgcl_backend_type
2021-07-07 16:24:52 +02:00
Markus Blatt
adc2bf46b9
Search for VexCL and create an imported target.
...
Unfortunately, we cannot us the imported targets. They add some compile
parameters using generator expressions based on the CXX_COMPILER_ID.
While we are using the system CXX compiler for most of the stuff, some
cuda code is compiled with nvcc which at least for some versions does
not support -Wno-catch-value (which gets passed as normal compiler
option).
2021-07-07 16:24:52 +02:00
Tong Dong Qiu
d45f9d08f7
Allow amgcl without CUDA
2021-07-07 16:24:52 +02:00
Tong Dong Qiu
e556124405
Allow to choose amgcl backend at runtime, added default amgcl params
2021-07-07 16:24:52 +02:00
Tong Dong Qiu
282f611f92
Make sure amgcl can be used without CUDA
2021-07-07 16:24:52 +02:00
Tong Dong Qiu
3c1bfeb72f
Let amgcl use runtime parameters via JSON file
2021-07-07 16:24:52 +02:00
Tong Dong Qiu
a23d881817
Reuse amgcl parameters
2021-07-07 16:24:51 +02:00
Tong Dong Qiu
47e2899ba8
Moved amgcl declarations to header
2021-07-07 16:24:51 +02:00
Tong Dong Qiu
7c7911b9bc
Allow to use amgcl when CUDA and OpenCL are not found
2021-07-07 16:24:51 +02:00
Tong Dong Qiu
c2869810e2
Added amgclSolverBackend
2021-07-07 16:24:51 +02:00
Tong Dong Qiu
5918c64b54
Add useWellConn parameter to WellContributions()
2021-07-07 16:24:51 +02:00
Markus Blatt
8d0a254211
Merge pull request #3364 from blattms/flexible-solver-determine-pressure-idx-from-model
...
Determine index of pressure from model used to increase usability
2021-07-01 15:22:50 +02:00
Markus Blatt
2260fde478
Merge pull request #3300 from Tongdongq/add-tests
...
Added tests for cusparseSolver and openclSolver
2021-06-17 22:31:23 +02:00
Bård Skaflestad
dc7a6018f6
Merge pull request #3381 from akva2/boost_version_include
...
fixed: add missing include for boost version
2021-06-14 13:29:14 +02:00
Arne Morten Kvarving
54d928583b
fixed: add missing include for boost version
2021-06-14 11:50:57 +02:00
Arne Morten Kvarving
86b454f4c8
fixed: initialize to avoid sca warning
2021-06-14 09:26:32 +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
Arne Morten Kvarving
29ae002a87
changed: avoid templating in setupPropertyTree
...
simply pass the required params to function instead.
2021-06-09 12:54:14 +02:00
Tong Dong Qiu
74b46e4d8d
Added tests for cusparseSolver and openclSolver
2021-06-07 11:40:03 +02:00
Tong Dong Qiu
0e63cda518
Instantiate whole class instead of each function
2021-06-07 11:40:03 +02:00
Markus Blatt
7c17db3d06
Fixes unused variable warnings for CUDA only.
2021-05-28 16:26:46 +02:00
Markus Blatt
6ffde47096
Fixes compilation with CUDA but without OpenCL.
...
Using statements should not be in namespaces anyway...
2021-05-28 16:26:46 +02:00
Arne Morten Kvarving
a4c0af09d9
fixed: do not use Opm:: prefix when inside namespace Opm
2021-05-05 11:59:18 +02:00
Bård Skaflestad
7be6e5bbf1
Merge pull request #3196 from akva2/use_forwarding
...
Use forwarding where possible in some headers
2021-04-30 16:00:41 +02:00
Arne Morten Kvarving
3c77b97cae
MultisegmentWellContribution: remove unused members
2021-04-30 13:09:25 +02:00
Arne Morten Kvarving
b30fc4eac1
ExtractParallelGridInfoToISTL: use forwarding
2021-04-29 12:50:19 +02:00
Markus Blatt
824df60e94
Merge pull request #3150 from Tongdongq/always_print_prec_info
...
Always print CHOW_PATEL info if used
2021-04-21 19:51:22 +02:00
Arne Morten Kvarving
b9c19958fb
fixed: mark possibly unused variables as such to quell warnings
...
also take chance to break an extremely long line
2021-04-19 09:49:20 +02:00
Tong Dong Qiu
5466b0f5f2
Always print CHOW_PATEL info if used
2021-04-09 16:19:45 +02:00
Tong Dong Qiu
8ea19c66aa
Reduced code duplication in BdaBridge
2021-03-12 11:15:02 +01:00
Tong Dong Qiu
81c0a3d9f9
Simplified CPU fallback warnings
2021-03-12 11:15:02 +01:00
Giacomo Marchiori
b4aa28771f
Added fpgaSolver
2021-03-12 11:14:59 +01:00
Markus Blatt
3ec181e231
Merge pull request #3089 from Tongdongq/exact-ilu-decomp-gpu
...
Exact ilu decomp gpu
2021-03-08 17:25:04 +01:00
Tong Dong Qiu
87e3f1d72d
Added timers to ChowPatelIlu
2021-03-03 17:12:46 +01:00
Tong Dong Qiu
b87e9dad9a
Updated comments
2021-03-03 16:36:27 +01:00
Tong Dong Qiu
0caae966b8
Add more waiting for opencl functions, using shortened opencl kernel params in WellContributions
2021-03-03 14:04:06 +01:00
Tong Dong Qiu
688d8ff627
Shorten opencl kernel params, add source file for openclKernels
2021-03-03 13:09:24 +01:00
Tong Dong Qiu
61bf85bf24
Add waiting for enqueueWriteBuffer
2021-03-03 10:37:01 +01:00
Tong Dong Qiu
18bf7c4b19
Replace diagfinding with std::find
2021-03-03 09:50:33 +01:00
Tong Dong Qiu
5b4deab7e4
Generating opencl kernels
2021-03-01 10:26:44 +01:00
Tong Dong Qiu
141af23db5
Exact ILU decomp is now performed on GPU
2021-03-01 10:26:35 +01:00
Tong Dong Qiu
748dc4ccb3
Reduced header inclusion, also moved WellContributions OpenCL initialization
2021-03-01 09:42:56 +01:00
Franz Georg Fuchs
17126ba229
throw specific error if json file does not exist
2021-02-24 11:31:36 +01:00
Markus Blatt
00df3d06c2
Allow usage of non-gpu devices with OpenCL.
...
This is needed to use the CPU backend of PoCL http://portablecl.org/
which seems handy for debugging.
2021-02-09 10:45:19 +01:00
tqiu
c8dca99fad
Renamed fgpilu to ChowPatelIlu
2021-02-03 17:43:54 +01:00
tqiu
a64a342104
Added symmetry check in Debug mode
2021-02-01 11:19:38 +01:00
tqiu
363cc31316
Made waiting for a GPUcopy more explicit
2021-01-28 15:40:10 +01:00
tqiu
d222dffcfd
Improved initial guess of L
2021-01-28 13:46:01 +01:00
tqiu
837a83fc16
Added error checking and std::call_once
2021-01-26 17:32:18 +01:00
tqiu
1e09b1f4d9
Added comments and rewrote if
2021-01-26 15:42:38 +01:00
tqiu
dba20adf04
Bugfix: extra swap was done on odd number of sweeps
2021-01-20 11:00:30 +01:00
tqiu
48ebef7808
Updated comments
2021-01-19 11:06:39 +01:00
tqiu
123e3fa89e
Use std::find and added comments
2021-01-18 17:10:46 +01:00
tqiu
a8e524fc9d
Minor C to C++ changes
2021-01-18 14:11:07 +01:00
tqiu
0f9ae3695d
Made reordering optional for WellContributions
...
Removed unnecessary alloc
2021-01-13 12:34:56 +01:00
tqiu
f26e58c6ca
Reordering is now actually skipped when NONE is chosen.
...
Also made reordering optional for openclSolver.
2021-01-12 15:25:47 +01:00
tqiu
71692ff52b
Disabled FGPILU by default
2021-01-12 15:21:19 +01:00
tqiu
9f92a69037
Added CPU and GPU implementations of Fine-Grained Parallel ILU (FGPILU)
2021-01-12 15:21:19 +01:00
Markus Blatt
c037bd762d
Merge pull request #2990 from atgeirr/testing-precfactory-operators
...
Only add AMG preconditioners to factory if sensible.
2020-12-22 09:52:53 +01:00
Atgeirr Flø Rasmussen
d910d42f6e
Only add AMG preconditioners to factory if sensible.
...
Also add test using a new operator class, that would not compile
without the change.
2020-12-17 14:54:59 +01:00
Markus Blatt
065e2f34f1
Do not include config.h in header (not even in *_impl.hpp)
...
I was getting warnings about redefined definitions (e.g. HAVE_PARMETIS).
2020-12-11 17:53:24 +01:00
Atgeirr Flø Rasmussen
374764fc6f
Merge pull request #2946 from atgeirr/add-more-amg-options
...
Add more AMG options to allow setting from JSON.
2020-11-27 08:57:04 +01:00
Atgeirr Flø Rasmussen
6e31c77234
Add more AMG options to allow setting from JSON.
2020-11-26 15:37:50 +01:00
Tor Harald Sandve
f924ac7ffe
Merge pull request #2933 from totto82/dunefem
...
WIP make Flow compile with dune-fem
2020-11-26 15:10:34 +01:00
Atgeirr Flø Rasmussen
a0ca8dd0b5
Use better-suited AMG criterion.
...
Use SymmetricDependency instead of SymmetricMatrixDependency.
Our matrices are structurally symmetric, but not numerically symmetric.
2020-11-25 16:40:03 +01:00
Markus Blatt
b21b6cf28c
Merge pull request #2914 from ducbueno/rm-oclcontainer
...
Removed WellContributionsOCLContainer class
2020-11-19 21:27:55 +01:00
Tor Harald Sandve
c4c0b7a756
Make it compile with dune-fem
2020-11-19 15:45:37 +01:00
Markus Blatt
ea3c899080
Merge pull request #2882 from atgeirr/msw-add-well-contrib
...
Implement addWellContributions() for multi-segment wells
2020-11-18 13:44:24 +01:00
Jose Eduardo Bueno
a9c2a684c6
Removed WellContributionsOCLContainer class (rebase)
2020-11-18 09:14:31 -03:00
Markus Blatt
64fa5a2b30
Merge pull request #2858 from Tongdongq/ilu-reorder-strategy
...
Added cmdline parameter --ilu-reorder-strategy
2020-11-17 09:35:12 +01:00
Atgeirr Flø Rasmussen
db7cd1053f
Add the multMatrixImpl() utility.
2020-11-16 11:37:44 +01:00
Tor Harald Sandve
fbccdbf68e
Make a flow version that uses the polyhedreal grid
...
Currently the simulator creats the polyhedreal grid from an eclGrid from opm-common
TODO
- make it possible to create the grid directly from DGF or MRST format
- fix issue on norne.
2020-11-10 15:49:59 +01:00
Atgeirr Flø Rasmussen
adfb8ef771
Merge pull request #2898 from blattms/always-accu-to-one-proc-as-default
...
Always accumulates data in AMG to 1 process on coarse levels.
2020-11-05 15:41:57 +01:00
Markus Blatt
d83ae17e5b
Always accumulates data in AMG to 1 process on coarse levels.
...
In OPM the matrix graph might be unsymmetric as we do not store
the full sparsity pattern for copy rows but only the diagonal.
Unfortunately, DUNE assumes that matrices from finite elements and
finite volumes have a symmetric sparsity pattern for copy rows to
and uses this assumption to create the graphs for PTScotch/ParMETIS
more easily. But PTScotch/ParMetis assume a symmetric graph.
2020-11-03 22:13:27 +01:00
Arne Morten Kvarving
4121e0a3c4
fix typo
2020-11-03 13:48:09 +01:00
tqiu
d25405d39a
Renamed parameter to OpenclIluReorder and moved error checking to BdaBridge constructor.
2020-10-19 11:36:25 +02:00
tqiu
a372a1e4bd
Added cmdline parameter --ilu-reorder-strategy
2020-10-19 11:33:32 +02:00
Atgeirr Flø Rasmussen
e7d1d6603a
Silence unused argument warning.
2020-10-19 09:13:37 +02:00
Bård Skaflestad
9a71bbe4b0
Move 'gridForConn' Into Cuda/OpenCL Block
...
It is only used within this context and produces a warning of the
form
ISTLSolverEbos.hpp:128:25: warning: unused variable ‘gridForConn’
unless the build configures accelerator support.
2020-10-19 02:28:05 +02:00
Markus Blatt
44fadfb88a
Fixes compilation of CUDA.
...
nvcc exits compilation if the header dune/istl/basearray.hh (form DUNE
2.6) is included as it does not seem to understand the friend declaration
there (friend class for a struct).
```
/usr/include/dune/istl/basearray.hh:101:49: error: ‘typename Dune::Imp::base_array_unmanaged<B, A>::RealIterator’ names ‘template<class B, class A> template<class T> struct Dune::Imp::base_array_unmanaged<B, A>::RealIterator’, which is not a type
friend class RealIterator<const ValueType>;
^
```
2020-10-14 19:23:57 +02:00
Atgeirr Flø Rasmussen
43d5d2c532
Merge pull request #2850 from atgeirr/silence-warnings
...
Silence warnings from range-for.
2020-10-13 08:19:48 +02:00
Atgeirr Flø Rasmussen
ea0abd1331
Bugfix: do not substr() on too small strings.
2020-10-12 21:58:58 +02:00
Atgeirr Flø Rasmussen
dedbe78cee
Copyright additions.
2020-10-12 17:06:11 +02:00
Atgeirr Flø Rasmussen
316b28923d
Rename parameter --linear-solver-configuration to --linsolver.
2020-10-12 17:03:00 +02:00
Atgeirr Flø Rasmussen
f169cf90d8
Remove --linear-solver-configuration-file parameter.
...
This is now handled by passing a string to --linear-solver-configuration that
ends with ".json".
2020-10-12 16:41:09 +02:00
Atgeirr Flø Rasmussen
f262eec9bf
Silence warnings from range-for.
2020-10-12 09:39:37 +02:00
Atgeirr Flø Rasmussen
385880485a
Fix logic of shouldCreateSolver().
2020-10-11 22:46:02 +02:00
Atgeirr Flø Rasmussen
30a4fe55b0
Add "amg" option to --linear-solver-configuration.
2020-10-11 09:31:48 +02:00
Atgeirr Flø Rasmussen
842afd312e
Refactor setupPropertyTree().
2020-10-11 09:24:05 +02:00
Atgeirr Flø Rasmussen
00438c4860
Remove unused parts (not just comment out).
2020-10-11 08:44:21 +02:00
Atgeirr Flø Rasmussen
0a70d95bee
Refactor shouldCreateSolver().
2020-10-11 08:20:19 +02:00
Atgeirr Flø Rasmussen
1c208e9a92
Avoid unnecessary extra matrix manipulation.
...
When using the ParallelOverlappingILU0 it is not necessary to fix the overlap rows.
2020-10-10 10:09:23 +02:00
Atgeirr Flø Rasmussen
65817c9068
Removed old amg/cpr code that can be replaced.
...
The replacement consists of using the FlexibleSolver code.
2020-10-08 15:12:41 +02:00
Markus Blatt
ec884183a5
Merge pull request #2828 from blattms/add-mswells
...
[opencl] deletes assignment operator of WellContributionsOCLContainer
2020-10-01 22:35:09 +02:00
Markus Blatt
e8c030be17
Merge pull request #2821 from ducbueno/add-mswells
...
Reintroduced multisegment wells to OpenCL backend
2020-10-01 21:52:25 +02:00
Markus Blatt
684b58564c
use auto in for-loop as at other occasions.
2020-10-01 15:56:50 +02:00
Markus Blatt
f306f78737
Delete assignment operator of WellContributionsOCLContainer, too
2020-10-01 15:55:57 +02:00
Jose Eduardo Bueno
fbbb21d482
Removed smart pointers; + delete for copy constr
2020-10-01 10:27:34 -03:00
Jose Eduardo Bueno
89cefd8d95
Fixed seg fault when there are only mswells
2020-09-30 18:34:50 -03:00
Jose Eduardo Bueno
7aad035bcf
Added smart pointers
2020-09-30 17:31:35 -03:00
Markus Blatt
d30f6d272b
[gpu] Support UMFPack with DUNE 2.7
...
The index type changed from int to long int with 2.7.
2020-09-30 20:10:21 +02:00
Jose Eduardo Bueno
3a680f728e
Removed unnecessary vector clear operations
2020-09-30 09:14:20 -03:00
Jose Eduardo Bueno
99e4419b3c
Reintroduced multisegment wells
2020-09-30 09:11:20 -03:00
Jose Eduardo Bueno
a3a15a744c
Corrected kernel
2020-09-28 18:06:13 -03:00
Jose Eduardo Bueno
9fe6ee85a4
Throws exception if well dimensions aren't correct
2020-09-28 18:01:42 -03:00
Jose Eduardo Bueno
268bcd95e8
Implemented reinit; reduced sync events
2020-09-28 17:27:12 -03:00
Jose Eduardo Bueno
bedf3d16cf
Querying number of work items with get_local_size
2020-09-28 12:56:22 -03:00
Jose Eduardo Bueno
77bcadff45
Events wellContribs write calls & update sparsity
2020-09-28 09:40:39 -03:00
Jose Eduardo Bueno
d653873735
Added destructor for WellContributionsOCLContainer
2020-09-28 09:15:17 -03:00
Jose Eduardo Bueno
d236079173
Bug fixes
2020-09-25 11:31:17 -03:00
Jose Eduardo Bueno
ab57d5ecd2
Fixed errors
2020-09-24 18:07:10 -03:00
Jose Eduardo Bueno
1ba81cece2
First commit
2020-09-24 16:35:36 -03:00
Jose Eduardo Bueno
c43648076f
Fixed kernel; fixed time step chopping;
2020-09-24 16:35:36 -03:00
Jose Eduardo Bueno
c41aafcc58
Simplified initialize_wellContribs calls
2020-09-24 16:35:36 -03:00
Joakim Hove
0565d6f402
Remove unused #include of exceptions
2020-09-21 11:12:15 +02:00
Markus Blatt
53005c477d
Merge pull request #2762 from ducbueno/opencl-stdwell-clean
...
Fixed out of resources problem
2020-09-03 19:50:39 +02:00
Jose Eduardo Bueno
525faf7b5d
Changed work_group_size
2020-09-03 14:25:50 -03:00
Jose Eduardo Bueno
f8898e3158
New function for setting OpenCL in wellContribs
2020-09-03 13:30:12 -03:00
Arne Morten Kvarving
273d465c32
fixed: use the proper linear operator without wells in matrix in serial
2020-09-03 15:53:57 +02:00
Jose Eduardo Bueno
c7adc3495f
Initial commit
2020-09-03 09:46:44 -03:00
Markus Blatt
27931c4303
[opencl] Fixes shadowing variable warnings.
...
These seemed familar and I would have sworn that I already fixed them
somewhen. Might have been reintroduced by rebasing.
2020-09-02 22:46:44 +02:00
Markus Blatt
e997d7b130
Merge pull request #2751 from ducbueno/opencl-stdwell-clean
...
AddStandardWell functionality in OpenCL backend
2020-09-02 22:02:05 +02:00
Jose Eduardo Bueno
4d10d9ac76
Fixed issue when no std wells are present
2020-09-02 15:44:46 -03:00
Jose Eduardo Bueno
56c1c0862c
Added StandardWell functionality to OpenCL backend
2020-09-02 15:00:34 -03:00
Arne Morten Kvarving
7305f84351
use std::make_unique where applicable
2020-09-02 15:35:39 +02:00
Arne Morten Kvarving
3b21a8a481
changed: remove SET_TYPE_PROP macro usage
2020-08-28 10:44:53 +02:00
Arne Morten Kvarving
93a3ebf8f7
changed: remove NEW_PROP_TAG macro usage
2020-08-28 10:44:53 +02:00
Arne Morten Kvarving
941e4916f8
changed: remove SET_PROP macro usage
2020-08-27 14:02:05 +02:00
Arne Morten Kvarving
7d853d2e05
changed: remove SET_SCALAR_PROP macro usage
2020-08-27 13:01:51 +02:00
Arne Morten Kvarving
fca83318aa
changed: remove SET_INT_PROP macro usage
2020-08-27 13:01:51 +02:00
Arne Morten Kvarving
a79c37a041
changed: remove SET_STRING_PROP macro usage
2020-08-27 13:01:51 +02:00
Arne Morten Kvarving
0e71c0e29b
changed: remove SET_BOOL_PROP macro usage
2020-08-27 13:01:51 +02:00
Arne Morten Kvarving
e8248b44ff
changed: remove NEW_TYPE_TAG macro usage
2020-08-27 13:01:51 +02:00
Arne Morten Kvarving
914053ac3c
changed: remove GET_PROP_VALUE macro usage
2020-08-27 13:01:51 +02:00
Arne Morten Kvarving
74fac38d85
changed: remove GET_PROP_TYPE / GET_PROP macro usage
2020-08-27 08:19:39 +02:00
Arne Morten Kvarving
70908d9017
changed: remove BEGIN_PROPERTIES/END_PROPERTIES macro usage
2020-08-21 15:50:35 +02:00
Markus Blatt
5743a979e3
Formatting: added missing space.
2020-08-07 09:38:10 +02:00
Markus Blatt
8d3eac81a5
[OpenCL] Fixes out of bounds read in reordering code in ILU0.
...
rowPerColor only has size numColors!
2020-08-05 21:22:01 +02:00
Markus Blatt
c28a12636a
Also free memory allocated with CUDA also with CUDA
...
With multisegment wells we allocate WellContributions::hx and hy with
`CudaMallocHost`. Yet we tried to deallocate them with
`delete[]`. This caused segementation faults e.g. for
model1/MSW_MODEL_1. Now we use `CudaFreeHost` for freeing if we used
CUDA.
Closes #2719
2020-08-04 12:54:27 +02:00
Markus Blatt
f37fa8bbd9
Prevent unused variable warnings without CUDA in WellContributions.
2020-07-21 11:24:19 +02:00
Markus Blatt
59064b4ac2
Prevent warning about shadowing dim_wells and dim.
2020-07-10 13:40:38 +02:00
Markus Blatt
efd3aeb290
Catch exceptions by const reference to prevent warnings.
...
e.g. gcc issued: "warning: catching polymorphic type ‘class cl::Error’ by value [-Wcatch-value=]"
2020-07-10 13:40:38 +02:00
Markus Blatt
faaee51d09
Merge pull request #2682 from Tongdongq/openclSolver
...
Added openclSolver
2020-07-10 13:38:32 +02:00
T.D. (Tongdong) Qiu
5971a7ae9e
Split WellContributions into .cpp and .cu
2020-07-10 11:13:55 +02:00
T.D. (Tongdong) Qiu
af02fc3924
Added try-catch around the linear solve
2020-07-07 16:07:42 +02:00
T.D. (Tongdong) Qiu
0b20762e59
Clarified parameter help print and chosen OpenCL platform and device
2020-07-07 14:26:02 +02:00
T.D. (Tongdong) Qiu
ab49f60eca
Added opencl.hpp to define variables and import opencl
...
Added opencl.cpp to get OpenCL error strings
2020-07-07 13:46:47 +02:00
T.D. (Tongdong) Qiu
478e2ee971
Improved rowsPerColor usage
2020-07-07 11:00:38 +02:00
T.D. (Tongdong) Qiu
5aa8dda487
Changed default parallel strategy to GRAPH_COLORING
2020-07-06 13:56:27 +02:00
T.D. (Tongdong) Qiu
4c037b0998
Removed unused test kernels
2020-07-06 13:56:27 +02:00
T.D. (Tongdong) Qiu
a164a57220
Added memory management to BlockedMatrix
2020-07-06 13:55:50 +02:00
T.D. (Tongdong) Qiu
779a713330
Simplified BdaSolverStatus
2020-07-06 13:40:44 +02:00
T.D. (Tongdong) Qiu
833ea8ae72
Added templated blockinversion for C-style arrays
2020-07-06 13:40:44 +02:00
T.D. (Tongdong) Qiu
bb622449b6
Changed platformID and deviceID to commandline parameter. Make sure Flow exits cleanly upon invalid platform- or deviceID.
2020-07-06 13:38:57 +02:00
Tom Hogervorst
c8eb14aaac
Graph coloring now uses CSC-format version of input pattern as well.
2020-07-06 13:29:30 +02:00
Tom Hogervorst
38c58bffae
Renamed functions to all used Camel case, and renamed parameters to better represent what is stored in them.
...
Fixed mistake of using wrong sparsity pattern data to call canBeStarted function, and removed nnzValues of CSCmat, which were never used.
2020-07-06 13:18:46 +02:00
T.D. (Tongdong) Qiu
7f8faa018b
Replaced timing function with Dune::Timer
2020-07-06 11:22:11 +02:00
T.D. (Tongdong) Qiu
845563c37b
Replaced hardcoded constant with template
2020-07-06 11:20:43 +02:00
Bård Skaflestad
8e20e0957f
Don't Name Type that does not Exist in Sequential Configurations
...
This commit makes the constructor PressureInverseOperator that
accepts a Dune::OwnerOverlapCopyCommunication<> object contingent on
having MPI. The type does not exist otherwise.
2020-07-01 21:52:57 +02:00
Atgeirr Flø Rasmussen
c94eec872f
Allow well operators with FlexibleSolver.
2020-06-30 12:33:57 +02:00
T.D. (Tongdong) Qiu
8913e1d057
Make sure OpenCL can be used without CUDA
2020-06-25 18:44:49 +02:00
T.D. (Tongdong) Qiu
b7f47c9787
Clarified preprocessor macros
2020-06-25 15:01:23 +02:00
T.D. (Tongdong) Qiu
c76630687d
Removed config.h in header files
2020-06-25 14:49:41 +02:00
T.D. (Tongdong) Qiu
0471da3815
Rewritten Graph Coloring
2020-06-25 14:42:35 +02:00
T.D. (Tongdong) Qiu
ca83a8f53c
Removed unused headers
2020-06-25 13:12:12 +02:00
T.D. (Tongdong) Qiu
4ad234bf55
Changed some ints to unsigned
2020-06-25 12:29:20 +02:00
T.D. (Tongdong) Qiu
b692b66d3a
Added block_size templates to BlockedMatrix and Reorder functions
2020-06-25 11:51:41 +02:00
Atgeirr Flø Rasmussen
c59f4f7118
Make ghost-last feature available in PreconditionerFactory.
2020-06-25 10:56:11 +02:00
Atgeirr Flø Rasmussen
c2c79f0903
Move well operators to separate file.
...
Also introduce new class WellModelAsLinearOperator making a well model
into an actual Dune::LinearOperator, this prevents the TypeTag dependent
type from leaking into the type of the WellModelMatrixAdapter instantiation.
As a side benefit, the adapter classes can now adapt (i.e. combine with a
matrix operator) any linear operator.
2020-06-25 10:13:12 +02:00
T.D. (Tongdong) Qiu
8f9fa15ecd
Fixed warnings, mostly shadowed parameters
2020-06-25 09:40:20 +02:00
T.D. (Tongdong) Qiu
98ddf47b44
Added block_size template to BdaSolvers and BILU0
2020-06-25 09:39:55 +02:00
T.D. (Tongdong) Qiu
2a48f5f63f
Simplified usage of BdaSolver::second() for timing
2020-06-24 19:48:50 +02:00
T.D. (Tongdong) Qiu
3dc368b0b4
Added block_size templates to the BdaBridge. Removed unused gpu_mode variable
2020-06-24 16:46:04 +02:00
T.D. (Tongdong) Qiu
26133c4fd7
Fixed type of gpu_mode when HAVE_CUDA is false
2020-06-24 15:55:03 +02:00