Commit Graph

211 Commits

Author SHA1 Message Date
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
Markus Blatt
27c9ed5c85 Consistently use ISTLSolverEbos::getMatrix to get correct matrix. 2020-06-24 15:37:43 +02:00
Markus Blatt
27ace20378 [bugfix] remove redundant copyjacToNoGhost in ISTLSolverEbos::solve
It uses a null pointer and make flow segfault. The copying is already
done in ISTLSolverEbos::prepare.
2020-06-24 15:25:24 +02:00
T.D. (Tongdong) Qiu
e4417fdc01 Set default value for use_gpu, using Dune would segfault because of the unitialized value 2020-06-23 18:20:10 +02:00
T.D. (Tongdong) Qiu
b9e4bd3a95 Updated HAVE_XX guards. Replaced string == compare with .compare() 2020-06-23 18:19:33 +02:00
T.D. (Tongdong) Qiu
39df7c9381 Updated comments, fixed shadowed declaration warnings 2020-06-23 11:30:15 +02:00
T.D. (Tongdong) Qiu
f974a5f6db Added openclSolver
Usage: --gpu-mode=[cusparse|opencl|none] on command line
2020-06-22 18:26:49 +02:00
Atgeirr Flø Rasmussen
c58456faae Add missing include. 2020-06-20 16:28:59 +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
fb99dd6fee Use unique_ptr rather than shared_ptr. 2020-06-19 16:03:46 +02:00
Atgeirr Flø Rasmussen
faddef0321 Do not instantiate things requiring MPI when HAVE_MPI is false. 2020-06-19 10:01:16 +02:00
Atgeirr Flø Rasmussen
dcd5d21415 Split constructor to reduce instantiation.
Without the split, certain combinations with Dune::Amg::SequentialInformation
as template argument for Comm needlessly get instantiated.
2020-06-18 08:28:20 +02:00