Commit Graph

180 Commits

Author SHA1 Message Date
Markus Blatt
13f62a718b
Merge pull request #2998 from g-marchiori/fpgasolver-integration
Added fpgaSolver, requires Xilinx Alveo U280 FPGA board
2021-04-15 11:21:39 +02:00
Arne Morten Kvarving
38b2e5a571 fixed: we have to "link" these to the fmt::fmt target
if not, the required defines are not set when building
with external libfmt
2021-04-09 11:31:56 +02:00
Markus Blatt
a53139b20a Consistently use keyword version of target_link_libraries.
Fixes:

CMake Error at CMakeLists.txt:458 (target_link_libraries):
  The keyword signature for target_link_libraries has already been used with
  the target "opmsimulators".  All uses of target_link_libraries with a
  target must be either all-keyword or all-plain.

  The uses of the keyword signature are here:

   * /var/lib/jenkins/workspace/opm-common-PR-builder/mpi/install/share/opm/cmake/Modules/OpmCompile.cmake:61 (target_link_libraries)

-- Configuring incomplete, errors occurred!
2021-04-07 18:42:28 +02:00
Markus Blatt
de6baa3c00 Stop pretending that we support CMake 2.8
We actually already require at least CMake 2.8.12 due to the embedded
pybind11 (some tests of it are even at 3.0). Anyway as Ubuntu LTS has
3.10.2 I doubt that anything less is tested by us.
2021-04-07 18:42:28 +02:00
Tor Harald Sandve
4cccd7302d remove unnecessary diffusion specializations 2021-03-23 09:48:43 +01:00
Giacomo Marchiori
a933d4da10 Modified CMakeLists.txt after comments by blattms.
Also, tentative changes to compile the FPGA library from a different module: this part needs to be revised because it assumes a fixed path for the OPM/FPGA module.
Modified CMakeLists_files.cmake to remove files moved to the OPM/FPGA module.
2021-03-12 11:15:02 +01:00
Giacomo Marchiori
b4aa28771f Added fpgaSolver 2021-03-12 11:14:59 +01:00
Markus Blatt
6766f2f81e Enable usage of fmtlib on the system.
If fmtlib is present on the system we used that one
in the normal mode (not header only). Otherwise we
fallback to the embedded one header only.
Searching for the library is done on opm-common.
2021-03-11 20:03:00 +01:00
Tor Harald Sandve
5deb410bd5 clean-up in flow_bo_diffusion.cpp and flow_co2.cpp 2021-02-16 12:23:36 +01:00
Tor Harald Sandve
361de71c96 add optional flow_bo_diffusion simulator for testing 2021-02-16 12:21:58 +01:00
Tor Harald Sandve
3457d46a00 add flow_co2 gas-oil simulator with diffusion for testing 2021-02-16 12:21:58 +01:00
Markus Blatt
9ccc953bf0 Add a flow executable that only distributes cells in z-direction.
Executable is named flow_distribute_z and uses the external
loadbalancing information. It can be used to test the distributed
standard wells on SPE9 with 4 or more processes.
2021-01-26 21:27:39 +01:00
Markus Blatt
d7ae211729 Also test ParallelWellInfo with an MPI run if possible. 2020-12-10 11:32:52 +01:00
Paul Egberts
d0421582e1 add gas-water simulator 2020-12-03 09:04:11 +01:00
Arne Morten Kvarving
b7e3ca1326
Merge pull request #2928 from akva2/simplify_buildsystem_models
Use lists in buildsystem and rename some ebos models to be consistent with flow
2020-11-27 19:39:39 +01:00
Bård Skaflestad
4ae70ee12e
Merge pull request #2927 from akva2/disable_python_tests_debian_packaging
Disable python tests in debian packaging
2020-11-23 10:52:36 +01:00
Arne Morten Kvarving
e176487cae changed: rename ebos_thermal to ebos_energy
make it the same as the flow model, allowing simplification
in the buildsystem
2020-11-18 14:04:27 +01:00
Arne Morten Kvarving
9ad927799b changed: rename ebos_oilwaterpolymer to ebos_oilwater_polymer
make it the same as the flow model, allowing simplification
in the buildsystem
2020-11-18 14:04:04 +01:00
Arne Morten Kvarving
10c3f3b438 changed: simplify build system a little
use lists for models to avoid repeating
2020-11-18 14:03:37 +01:00
Tor Harald Sandve
0ac2f922d3
Merge pull request #2851 from osae/extboSimulators
Alternative solvent extension for the black oil model.
2020-11-18 14:01:36 +01:00
Arne Morten Kvarving
16d644032c add cmake option to disable the python tests
due to bugs in the openmpi on bionic, this test fails to
execute properly in pbuilder environments. instead
of rebuilding openmpi without dynamic loading
(which is the suggested fix) and potentially break users
systems, this is a non-intrusive workaround to be used
for packaging.

also add explicit option for python support to make it
visible in cmake frontends.
2020-11-18 10:55:46 +01:00
Arne Morten Kvarving
608b27096b remove unused cmake option 2020-11-18 09:40:43 +01:00
Ove Sævareid
0f7e66e151 Alternative solvent extension for the black oil model. 2020-11-17 12:33:19 +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
Arne Morten Kvarving
9cab259b38 changed: compile each flow simulator as a object library
increases parallelism
2020-10-23 11:53:50 +02:00
Arne Morten Kvarving
10b2e540fb changed: run tests on 4 processors
more than 4 is problematic on some build machines
2020-10-20 08:13:31 +02:00
Markus Blatt
3a41c78114
Merge pull request #2811 from akva2/python_binding_reuse
changed: reuse objects if building python inline
2020-09-29 15:57:13 +02:00
Joakim Hove
0b5134521e Add inline fmtlib code in source tree 2020-09-28 11:01:13 +02:00
Arne Morten Kvarving
d286079393 changed: reuse objects if building python inline 2020-09-25 13:47:39 +02:00
Atgeirr Flø Rasmussen
0205f54caf Fix CMake variable case bug.
This caused compile failure on a system without the c++ OpenCL binding header cl.hpp.
2020-07-28 12:42:55 +02:00
Markus Blatt
faaee51d09
Merge pull request #2682 from Tongdongq/openclSolver
Added openclSolver
2020-07-10 13:38:32 +02:00
Tor Harald Sandve
fce0ba6759 Add oil water brine specialization 2020-06-30 10:41:28 +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
f974a5f6db Added openclSolver
Usage: --gpu-mode=[cusparse|opencl|none] on command line
2020-06-22 18:26:49 +02:00
Arne Morten Kvarving
6ab90bb0e3 fixed: fix parallel builds
we need the update-version target to run to generate the
necessary headers.
2020-06-09 15:08:30 +02:00
Arne Morten Kvarving
5d423e2300 changed: move moduleVersion to a separate object library
this to minimize re-linking due to compile timestamp support
2020-06-08 10:07:22 +02:00
Markus Blatt
6a0bad0243 Need to set ENV{CUDAHOSTCXX}, too.
No variables are used by check_language and hence we need
ti make nvc aware of the host compiler by the environment
variable.
2020-04-29 13:58:48 +02:00
Markus Blatt
2d32fde1c9 Fix CMake CUDA documentation. 2020-04-29 13:29:45 +02:00
Markus Blatt
2c7556d286 Use CMAKE_CUDA_HOST_COMPILER instead of ENV{CUDAHOSTCXX}. 2020-04-29 13:29:45 +02:00
Markus Blatt
46ccc77959 Use CMAKE_CUDA_FLAGS_${CMAKE_BUILD_TYPE} if appropriate. 2020-04-27 22:05:47 +02:00
Markus Blatt
4e0cd2a77e Prevent multiple "-ccbin g++" in nvcc command.
If ENV{CUDAHOSTCXX} is set then this will cause CMake to add
"-ccnin ${ENV{CUDAHOSTCXX}}" to variable CMAKE_CUDA_FLAGS
even if there already is one.
2020-04-27 22:05:47 +02:00
Markus Blatt
ddb0940336 Prevent Cmake error for CUDA with incompatible c++.
At least on Debian 10 the standard c++ compiler is g++-8,
but CUDA only supports g++-7 and our test for CUDA in cmake
did send an error in that case/combination which is quite
annoying.

The reason was that check_language(CUDA) did not honor
the CMAKE_CUDA_FLAGS variable and always used the default g++7,
but enable_language(CUDA) did honor it. As we do set the underlying
host compiler the fromer reported that CUDA is available while the
latter marked the CUDA compiler as broken.

With this commit we work around this by setting the environment
variable ENV{CUDAHOSTCXX} which nvcc will use. Hence now we only try
to enable CUDA if it is compatible with the C++ compiler
2020-04-27 15:22:56 +02:00
Joakim Hove
2696160f56
Merge pull request #2520 from akva2/extra_tests
add norne and norne_parallel as ExtraTests
2020-04-22 13:35:25 +02:00
Arne Morten Kvarving
16a1ddfe5e fixed: use PROJECT_BINARY_DIR, not CMAKE_BINARY_DIR
tests fail to execute in super-build otherwise
2020-04-21 08:50:51 +02:00
Markus Blatt
695e6c9449 Only warn abou CUDA version if CUDA was actually found. 2020-04-15 14:21:36 +02:00
Arne Morten Kvarving
e5b32dd82d add norne and norne_parallel as ExtraTests
to execute these you have to use ctest -C ExtraTests
or 'make extra_test'
2020-04-14 16:02:21 +02:00
Markus Blatt
340bad4b17 Fix policy warnings (needed by OPM/opm-common#1675 2020-04-02 20:31:54 +02:00
Markus Blatt
59916a7526 Move CUDA tests to a later stage to make time for setting policies. 2020-04-02 20:30:20 +02:00
Markus Blatt
1f876e693b Check for cuda 9.0 or newer as we are supposed to.
9.7 was a local change to see whether deactivating CUDA for old
version works.

Completes #2488
2020-03-23 11:10:17 +01:00
Markus Blatt
74051ebf01 Fix CUDA version check to allow versions 9.0 or newer. 2020-03-20 14:36:24 +01:00