Commit Graph

10780 Commits

Author SHA1 Message Date
Arne Morten Kvarving
ff559fd1c9 use compressed indices setting up ThresholdPressures 2020-03-02 13:42:27 +01:00
Markus Blatt
c0c403aba3
Merge pull request #2380 from blattms/make-cmake-cuda-check-work-for-3.6
Make Cmake version check for CUDA work for CMake 3.6.
2020-03-02 13:21:15 +01:00
Arne Morten Kvarving
373588dd04 use compressed field properties applying NTG 2020-03-02 13:02:10 +01:00
Arne Morten Kvarving
da901a1d11
Merge pull request #2379 from akva2/use_compressed_expl_init
use compressed field properties setting up explicit initial conditions
2020-03-02 13:01:25 +01:00
Markus Blatt
843903dfdc Make Cmake version check for CUDA work for CMake 3.6.
It seems like the VERSION_GREATER_EQUAL operator for boolean
expressions was introduced after CMake 3.6 and hence the current
check whether to activate CUDA or not is broken in version 3.6 and
below.

This PR fixes this by using VERSION_GREATER.

Closes #2375.
2020-03-02 12:10:45 +01:00
Arne Morten Kvarving
766410ff7c
Merge pull request #2378 from akva2/use_compressed_blackoil_ext
changed: use compressed field properties for blackoil extension init conds
2020-03-02 11:39:07 +01:00
Markus Blatt
9faf2979b9
Merge pull request #2377 from akva2/use_compressed_numbers
changed: use compressed field properties setting up numbers
2020-03-02 11:32:22 +01:00
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