Commit Graph

10824 Commits

Author SHA1 Message Date
Arne Morten Kvarving
d5d32e235c use compressed field properties setting up explicit initial conditions 2020-03-02 11:21:20 +01:00
Arne Morten Kvarving
f0062d5913 changed: use compressed field properties setting up numbers 2020-03-02 11:20:26 +01:00
Arne Morten Kvarving
8d528daaa5 changed: use compressed field properties for blackoil extension intial conditions 2020-03-02 10:32:40 +01:00
Markus Blatt
396f84b764
Merge pull request #2372 from akva2/compressed_props_material
Use compressed properties in material law setup
2020-03-02 09:47:09 +01:00
Arne Morten Kvarving
69959da143
Merge pull request #2376 from akva2/fix_parallel_only
fixed: do not make root dir
2020-03-02 08:58:16 +01:00
Arne Morten Kvarving
a27975fbd6 fixed: do not make root dir
the simulator handles this itself. this fixes errors in the
well plot script when only parallel norne is run.
2020-02-28 14:42:16 +01:00
Arne Morten Kvarving
44406ff744
Merge pull request #2373 from akva2/fix_build_no_mpi
fix build without MPI
2020-02-28 13:04:03 +01:00
Arne Morten Kvarving
293612265e fix build without MPI 2020-02-28 13:03:16 +01:00
Arne Morten Kvarving
ef27c1d110 use compressed field properties setting up ThermalLawManager 2020-02-28 12:31:14 +01:00
Arne Morten Kvarving
3c050f4dda use compressed field properties setting up MaterialLawManager 2020-02-28 12:31:14 +01:00
Arne Morten Kvarving
36761e9347
Merge pull request #2311 from akva2/noecl_no_parsing
Only parse on root process
2020-02-28 12:29:47 +01:00
Arne Morten Kvarving
8dc9b21dba adjust to upstream OilVaporization change 2020-02-28 10:54:18 +01:00
Arne Morten Kvarving
05c0c4b6e8 Use the ParallelEclipseState and ParallelFieldPropsManager
with these in place, we now only parse the deck on the root process.
2020-02-28 10:26:55 +01:00
Arne Morten Kvarving
68a9d17de1 changed: pass/store deck as a pointer
and remove asserts for null-ptr. preparatory step for only
having deck on root mpi process
2020-02-28 10:26:55 +01:00
Arne Morten Kvarving
35de9fa53d add ParallelEclipseState and ParallelFieldProps
these are wrappers sitting on top of the EclipseState and
FieldPropsManager classes.

The former has some additional methods related to parallelism,
and the latter is a parallel frontend to the FieldPropManager which
only hold the process-local data (in compressed arrays).
2020-02-28 10:26:55 +01:00
Arne Morten Kvarving
4904f09d4d changed: avoid use of EclipseGrid outputting RFT data 2020-02-28 10:24:00 +01:00
Arne Morten Kvarving
ac28bbfd15 changed: avoid usage of eclipseGrid on non-root processes setting up transmissibilities
obtain data from root process
2020-02-28 10:24:00 +01:00
Arne Morten Kvarving
ef89d656fb communicate global size setting up blackoil extension boundary conditions 2020-02-28 10:24:00 +01:00
Arne Morten Kvarving
55b5ebd3df add mpi serialization for GridDims 2020-02-28 10:24:00 +01:00
Atgeirr Flø Rasmussen
94f0bd2af6
Merge pull request #2370 from atgeirr/update-group-class
Update for upstream changes to Group.
2020-02-28 10:03:24 +01:00
Atgeirr Flø Rasmussen
3aeab97aa1 Update for upstream changes to Group. 2020-02-27 15:15:35 +01:00
Arne Morten Kvarving
afee570a31
Merge pull request #2367 from akva2/serialize_sdensitytable
add mpi serialization for SolventDensityTable
2020-02-27 13:37:49 +01:00
Arne Morten Kvarving
92303531b9 add mpi serialization for SolventDensityTable 2020-02-26 13:30:43 +01:00
Joakim Hove
c23dd11d6b
Merge pull request #2362 from joakim-hove/serialize-dent
Serialize density-temparture class DenT
2020-02-26 09:56:17 +01:00
Arne Morten Kvarving
42b290133a
Merge pull request #2366 from blattms/makes-mixing-incompatible-gcc-nvcc-fail
Make mixing incompatible host compiler/device compiler versions fail.
2020-02-26 09:00:34 +01:00
Markus Blatt
80c7bc179b Make mixing incompatible host compiler/device compiler versions fail.
We experienced weired linker errors when using host compiler version for
compilation that were not supported by the nvcc used to compile the
cuda code:
```
[ 15%] Linking CXX executable bin/test_timer
/usr/bin/ld: /home/mblatt/src/dune/opm-2.6/opm-common/opm-seq/lib/libopmcommon.a(Parser.cpp.o): in function `Opm::(anonymous namespace)::file& std::vector<Opm::(anonymous namespace)::file, std::allocator<Opm::(anonymous namespace)::file> >::emplace_back<std::filesystem::__cxx11::path&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&>(std::filesystem::__cxx11::path&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&)':
Parser.cpp:(.text+0x1096): undefined reference to `std::filesystem::__cxx11::path::_M_split_cmpts()'
/usr/bin/ld: Parser.cpp:(.text+0x10ad): undefined reference to `std::filesystem::__cxx11::path::_M_split_cmpts()'
/usr/bin/ld: /home/mblatt/src/dune/opm-2.6/opm-common/opm-seq/lib/libopmcommon.a(Parser.cpp.o): in function `Opm::(anonymous namespace)::ParserState::loadFile(std::filesystem::__cxx11::path const&)':
Parser.cpp:(.text+0x23a1): undefined reference to `std::filesystem::canonical(std::filesystem::__cxx11::path const&)'
/usr/bin/ld: Parser.cpp:(.text+0x24e0): undefined reference to
`std::filesystem::__cxx11::path::_M_split_cmpts()'
```
The reason turned out to be that the library path was build up by
paths of the old (g++-7) compiler used by nvcc and the actual (newer) compiler
g++-8. This completely messed up the linker paths for CMake.

To detect this situation already when running cmake we have resorted
to first setting the CMAKE_CUDA_FLAGS to force cmake to make nvcc use
the host compiler and to activate CUDA (if available) before calling
`find_package(CUDA)`. If the host compiler is not supported CMake will
error out during `enable(CUDA)`

Note that we still use (deprecated) FindCUDA later to determine the
libraries to link to.

The users has the option to either deactivate CUDA by setting
`-DCMAKE_DISABLE_FIND_PACKAGE_CUDA=ON` or to use a compiler supported
by nvcc (setting `-DCMAKE_CXX_COMPILER=compiler`).

Additionally we do not try to activate CUDA the CMake version is <
3.8. Please note that previously CMake would have errored out here
anyway since we used the unsupported `enable_language(CUDA)` even in
this case.

Closes #2363.
2020-02-25 16:54:53 +01:00
Atgeirr Flø Rasmussen
70b0172a5a
Merge pull request #2365 from joakim-hove/schedule-rst0
Add disabled functionality to init wells and group from restart file
2020-02-25 15:41:13 +01:00
Joakim Hove
02d1d756ae
Merge pull request #2364 from joakim-hove/remove-unused
Remove unsed include and variables
2020-02-25 11:21:31 +01:00
Joakim Hove
2e18107097 Add disabled functionality to init wells and group from restart file 2020-02-25 09:49:26 +01:00
Joakim Hove
8d54aae8d0 Remove unused ParseContext and ErrorGuard arguments 2020-02-25 09:33:21 +01:00
Joakim Hove
d153b5ab4c
Merge pull request #2360 from joakim-hove/wellsegments-serialize
Simplify serialization of WellSegments
2020-02-25 08:31:25 +01:00
Joakim Hove
d94943a741 Serialize new member TableManager::gas_comp_index 2020-02-25 08:04:28 +01:00
Joakim Hove
2ce7b35e69 Serialize density-temparture class DenT 2020-02-25 06:50:31 +01:00
Bård Skaflestad
8eeaf35f35
Merge pull request #2357 from akva2/conditional_test_suite
disable building of tests if Boost::test is not found
2020-02-24 21:05:26 -06:00
Atgeirr Flø Rasmussen
8cd9da0d83
Merge pull request #2361 from akva2/removeNTGfill
remove minpvFillNtg a temporary solution while not supporting standard minpv
2020-02-24 13:34:43 +01:00
Tor Harald Sandve
06df233055 remove minpvFillNtg a temporary solution while not supporting standard minpv 2020-02-24 11:43:07 +01:00
Joakim Hove
87ddba6028 Simplify serialization of WellSegments 2020-02-22 10:49:41 +01:00
Markus Blatt
22d4e784d3
Merge pull request #2356 from akva2/boost_prune
Lessen boost usage
2020-02-21 13:15:03 +01:00
Joakim Hove
c239529565
Merge pull request #2353 from joakim-hove/aquifer-config
Add serialization for AquiferConfig
2020-02-20 08:25:20 +01:00
Joakim Hove
d3bfa83c7c
Merge pull request #2343 from joakim-hove/move-rstconfig
RestartConfig has moved from EclipseState to Schedule
2020-02-20 07:07:37 +01:00
Arne Morten Kvarving
8e8d187805 disable building of tests if Boost::test is not found 2020-02-19 12:41:27 +01:00
Arne Morten Kvarving
8b7e65bf8c
Merge pull request #2355 from akva2/janitoring
quell warning about unused local typedef
2020-02-19 11:35:39 +01:00
Arne Morten Kvarving
c73c7bef55 avoid use of boost::lexical_cast 2020-02-19 11:20:16 +01:00
Arne Morten Kvarving
bea2459c65 replace boost::optional with std::optional 2020-02-19 11:20:16 +01:00
Arne Morten Kvarving
e262cf8d51 changed: use internal function to uppercase string 2020-02-19 11:20:16 +01:00
Arne Morten Kvarving
4ba7d3a7bc changed: replace boost::any with std::any 2020-02-19 11:20:16 +01:00
Arne Morten Kvarving
39f5e49289 remove unused boost include 2020-02-19 11:20:16 +01:00
Arne Morten Kvarving
d56b7e338d quell warning about unused local typedef
strictly speaking the gcc diagnostics are wrong, the typedef is actually
used once templates are invoked on the structs.
simply use the typedef in the structs itself to avoid the warning
like is done for other variants.
2020-02-19 10:15:07 +01:00
Joakim Hove
9c8d5946b4 Add POC for AquiferConfig can be used 2020-02-18 16:19:25 +01:00
Joakim Hove
86972dc494 Add serialization for AquiferConfig 2020-02-18 16:12:00 +01:00