Commit Graph

198 Commits

Author SHA1 Message Date
Vicente Adolfo Bolea Sanchez
0b3bef32b0 CI: Ascent build conforms latest OLCF update 2022-02-22 18:29:14 -05:00
Vicente Adolfo Bolea Sanchez
75fed87240 examples: add option to install examples 2022-02-16 19:43:52 -05:00
Kenneth Moreland
4a0fad6e5a Merge topic 'add_tutorial'
0ba7a222b point_to_cell wanning resolution
dea63919d point_to_cell wanning resolution
5bb7773cc Point_to_cell warning resolution
0ce7d9258 tutorial example fixes to resolve warnings
8e57362a2 tutorial example fixes to resolve warnings
5fc268d31 switched back to the old version of extract_edges
0300973df switched back to the old version of extract_edges
f5e827ad1 Enable building tutorials on all CI builds
...

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2653
2022-02-16 16:35:51 -05:00
Kenneth Moreland
f5e827ad1e Enable building tutorials on all CI builds 2022-02-14 10:34:41 -05:00
Vicente Adolfo Bolea Sanchez
b2c3da8f6a CTEST: add smoke test 2022-02-12 00:16:30 +00:00
Vicente Adolfo Bolea Sanchez
07be1ece5d CI: fix docs site name 2022-02-09 19:44:03 -05:00
Vicente Adolfo Bolea Sanchez
1ee8c3fab9 Doxygen: enable Doxygen in tags and scheduled 2022-02-09 18:36:23 -05:00
Vicente Adolfo Bolea Sanchez
3edcd554dd CI: set GBench to latest tag
Previously it was set to an specific commit known to work with VTK-m.
2022-01-27 20:42:26 -05:00
Vicente Adolfo Bolea Sanchez
fc1514de7e CI: set GBench to latest tag
Previously it was set to an specific commit known to work with VTK-m.
2022-01-26 00:21:15 +00:00
Vicente Adolfo Bolea Sanchez
67b92d3365 ci: Add OLCF GitLab-CI
Co-authored-by: Vicente Bolea <vicente.bolea@kitware.com>
Co-authored-by: Chuck Atkins <chuck.atkins@kitware.com
2021-12-15 13:00:47 -05:00
Vicente Adolfo Bolea Sanchez
51f035fe0c CI: schedule builds no manual in MR 2021-12-09 16:50:58 -05:00
Vicente Adolfo Bolea Sanchez
7ebdaac1fe CI: Remove use_virtuals at GCC5.2 build 2021-11-22 13:31:02 -05:00
Vicente Bolea
1cb98a08ca Merge topic 'update-gbench'
b68026981 CI: use latest master GBench

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Kenneth Moreland <morelandkd@ornl.gov>
Merge-request: !2631
2021-11-22 11:51:53 -05:00
Vicente Adolfo Bolea Sanchez
b680269811 CI: use latest master GBench 2021-11-22 10:48:29 -05:00
Li-Ta Lo
b01ba506cf Merge branch 'master' into ollielo-master-patch-72902 2021-10-28 08:06:40 -06:00
Vicente Adolfo Bolea Sanchez
a5aeda7240 CI: move from only to rules 2021-10-18 14:36:16 -04:00
Vicente Adolfo Bolea Sanchez
9ea26d9372 CI: fix dependencies in CI jobs 2021-10-15 15:37:27 -04:00
Vicente Adolfo Bolea Sanchez
e1d8b72700 CI: adjust parallel param hip build 2021-10-15 12:24:33 -04:00
Li-Ta Lo
534fccdbaa update CI for no_virtual 2021-10-13 15:30:02 -06:00
Vicente Adolfo Bolea Sanchez
98a1cc7514 CI: add HIP builing build
- It also adds CTEST_MAX_PARALLELISM to further control the number of
  parallelism level while building vtk-m.

Signed-off-by: Vicente Adolfo Bolea Sanchez <vicente.bolea@kitware.com>
2021-10-13 15:40:52 -04:00
Vicente Adolfo Bolea Sanchez
46b0268825 CI: add ubuntu2004 with tbb 2020 build 2021-09-28 19:46:11 +00:00
Vicente Adolfo Bolea Sanchez
11bf684f3c CI: updates kokkos version 2021-09-20 18:23:16 -04:00
Vicente Adolfo Bolea Sanchez
d348b11183 Enable shared CUDA builds when not compiling virtuals
The reason why we did not support shared libraries when CUDA compiles
were on is that virtual methods require a special linking step to pull
together all virtual methods that might be called. I other words, you
cannot call a virtual CUDA method defined inside a library. This
requirement goes away when virtuals are removed.

Also removed the necessity of using seprable compilation with cuda.
Again, this is only needed when a CUDA function is defined in one
translation unit and used in another. Now we can enforce that all
translation units define their own CUDA functions.

Also, suppress warnings in cuda/internal/ExecutionPolicy.h

This is where we call the thrust algorithms. There must be some loop
where it, on some code path, calls back a host function. This must be in
an execution path that never happens. The thrust version has its own
suppress, but that does not seem to actually suppress the warning (it
just means that the warning does not tell you where the actual call is).

Get around the problem by suppressing the warnings in VTK-m.

Co-authored-by: Kenneth Moreland <morelandkd@ornl.gov>
Co-authored-by: Vicente Adolfo Bolea Sanchez <vicente.bolea@kitware.com>

Signed-off-by: Vicente Adolfo Bolea Sanchez <vicente.bolea@kitware.com>
2021-08-24 13:14:58 -04:00
Vicente Bolea
675cdfe959 Merge topic 'ci-provide-cmake'
5353934e6 CI: Add Junit support
4b6175980 CI: download/install cmake in each build

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Ben Boeckel <ben.boeckel@kitware.com>
Merge-request: !2537
2021-08-17 16:58:26 -04:00
Vicente Adolfo Bolea Sanchez
5cd911589d CI: edits doxygen rsync path
Signed-off-by: Vicente Adolfo Bolea Sanchez <vicente.bolea@kitware.com>
2021-08-14 13:28:17 -04:00
Vicente Adolfo Bolea Sanchez
5353934e6b CI: Add Junit support
Signed-off-by: Vicente Adolfo Bolea Sanchez <vicente.bolea@kitware.com>
2021-08-12 19:35:39 -04:00
Vicente Adolfo Bolea Sanchez
4b6175980c CI: download/install cmake in each build
Signed-off-by: Vicente Adolfo Bolea Sanchez <vicente.bolea@kitware.com>
2021-08-12 19:19:17 -04:00
Li-Ta Lo
e7db8ef722 add build/config to the list of file to be packed for windows 2021-07-26 22:33:56 -06:00
Vicente Adolfo Bolea Sanchez
9fe31c8848 Doxygen: Update doxygen hosting URL
Signed-off-by: Vicente Adolfo Bolea Sanchez <vicente.bolea@kitware.com>
2021-07-16 17:19:05 -04:00
Vicente Bolea
85a1f7c528 Merge topic 'add-cdash-release-track'
3a89b477f CI: Add release track in cdash

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Kenneth Moreland <morelandkd@ornl.gov>
Merge-request: !2470
2021-04-29 17:39:16 -04:00
Vicente Adolfo Bolea Sanchez
3a89b477f1 CI: Add release track in cdash
Signed-off-by: Vicente Adolfo Bolea Sanchez <vicente.bolea@kitware.com>
2021-04-29 16:15:23 -04:00
Vicente Adolfo Bolea Sanchez
6a041f6c61 CI: Fetch main repo tags from forks
Signed-off-by: Vicente Adolfo Bolea Sanchez <vicente.bolea@kitware.com>
2021-04-23 20:25:18 -04:00
Vicente Adolfo Bolea Sanchez
d4cfe34009 CI: adds ubuntu1804 build with benchmarks
Signed-off-by: Vicente Adolfo Bolea Sanchez <vicente.bolea@kitware.com>
2021-02-24 20:29:28 +01:00
Vicente Adolfo Bolea Sanchez
bbe36d8c33 cmake: set c++14 as minimum c++ rev
Signed-off-by: Vicente Adolfo Bolea Sanchez <vicente.bolea@kitware.com>
2021-02-08 17:13:05 +01:00
Brad King
85a7e6ffe0 gitlab-ci: Use a stable path between build and test jobs on Windows
CTest expects the test suite to be executed from a build tree located
at its original path.  Set `GIT_CLONE_PATH` to use a fixed location.
2021-02-05 10:37:03 -05:00
Brad King
c612b86ddc gitlab-ci: Refactor vcvars settings on Windows jobs
Move references closer to where the variables are needed.
2021-02-05 10:36:51 -05:00
Brad King
4d5e829c55 gitlab-ci: Add 'concurrent' tag to Windows jobs
Our shell jobs on Windows use the default `GIT_CLONE_PATH`,
which contains `CI_CONCURRENT_ID`.  Therefore the jobs can use
a concurrent runner.
2021-02-05 09:10:35 -05:00
Brad King
469d57b415 gitlab-ci: Use a specific MSVC version on Windows
Teach jobs to load the environment for a specific MSVC version, and tag
them accordingly.  This allows runners to have multiple versions of MSVC
installed without requiring us to compile on the newer ones right away.

The runners provide the VS 2019 location in a `VS160COMNTOOLS`
environment variable.  Use it to avoid requiring a specific VS edition.

Issue: #595
2021-02-04 13:50:42 -05:00
Brad King
2861513abf gitlab-ci: Clarify role of vtkm tag on Windows jobs 2021-02-04 12:50:08 -05:00
Gunther H. Weber
0a33737eae Re-enable unit tests for ContourTreeUniformAugmentedFilter 2021-01-26 20:56:55 -08:00
Li-Ta Lo
bbba2a1967 Merge topic 'add_hdf5_to_ubuntu_1804_base_image'
7c94ebf2e Add HDF5 to Ubuntu 18.04/base image

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2378
2021-01-14 13:08:09 -05:00
Kenneth Moreland
a6edc832da Merge topic 'soa-array-default'
cecd81d5d Add types appropriate for Ascent
865855ea0 Add changelog for making ArrayHandleSOA a default array
50ff9c22a Add support of `ArrayHandleSOA` as a default storage type
bc09a9cd1 Add precompiled versions of `ArrayRangeCompute` for `ArrayHandleSOA`
77f9ae653 Support `ArrayHandleSOA` only for `Vec` value types

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Robert Maynard <robert.maynard@kitware.com>
Merge-request: !2349
2021-01-14 12:40:58 -05:00
Kenneth Moreland
e10c4fad6e Disable security with downloading sccache tarball
Some organizations use a firewall that intercepts SSL communications and
replaces the authentication token with an organization-wide token that
is just supposed to be accepted. Browsers can be locally configured for
this intentional trickery, but it's a little more tricky for the use of
`curl` in a batch script that is shared with external collaborators.

The easiest solution is to just disable the security for the `curl`
download. This makes the script more susceptible to "man in the middle"
attacks, but it's probably easier to just slip malware in the public
repos anyway.
2021-01-11 17:29:28 -07:00
Robert Maynard
7c94ebf2ed Add HDF5 to Ubuntu 18.04/base image 2021-01-07 12:00:52 -05:00
Kenneth Moreland
cecd81d5db Add types appropriate for Ascent 2021-01-07 08:15:17 -07:00
nadavi
9741bbb905 Update Images and exclude RegressionTest from ctest_memcheck on centos8 builds 2020-12-02 16:24:11 +00:00
Sujin Philip
755b136354 Merge topic 'kokkos-use-explicit-syncs'
89e19ce7f Don't require CUDA_LAUNCH_BLOCKING

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Robert Maynard <robert.maynard@kitware.com>
Merge-request: !2333
2020-11-30 14:28:20 -05:00
Sujin Philip
89e19ce7fa Don't require CUDA_LAUNCH_BLOCKING
1. The code now works without CUDA_LAUNCH_BLOCKING set by using explicit
   synchronizations where required.
2. The code has also been modified to use thread specific memory spaces,
   which for Kokkos' Cuda backend means per thread streams.
2020-11-30 13:12:39 -05:00
Robert Maynard
57f0c31e22 Tests stages with OpenMPI must use privileged docker runner 2020-11-25 09:09:45 -05:00
Robert Maynard
d5d91c61d3 Update ubuntu1804+cuda from 10.1 to 11.1
The image was previously using 10.1 which has issues generating
ptx for numerous filters. Moving to a newer CUDA version corrects
these issues
2020-10-19 15:32:10 -04:00
Kenneth Moreland
284774cf43 Turn on "no virtual" option on some CI builds
Make sure that the `VTKm_NO_DEPRECATED_VIRTUAL` CMake option is building
correctly by adding it to some of the CI builds.
2020-09-09 06:12:58 -06:00
Robert Maynard
d67ef5b3e6 CI: Tests that compile only work when run on the same host image
This limitation is caused by the fact that VTK-m caches compiler
location during the build stage for these tests, and this fails
on the test image as the compiler might not exist or is in a
different path
2020-08-26 09:10:56 -04:00
Robert Maynard
c73bc0a93f CI: add clang+cuda and correct missing cuda packages on centos 2020-08-21 08:31:27 -04:00
Robert Maynard
da1fec67b9 Kokkos CUDA builds now use sccache for CUDA compilation 2020-08-19 09:44:58 -04:00
Sujin Philip
0beb0f650b Merge topic 'add-kokkos-backend'
2d1b609b3 Use Ubuntu instead of rhel8 for cuda+kokkos
769248583 Make sure we use c++14 when using CUDA 11+
64efa6401 Kokkos: make sure we don't pass multiple rdc flags
b2f4c8e5e Switch -O3 to -O2 on Linux with Cuda 10
db57ed26a Fix warnings
452f61e29 Add Kokkos backend

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2164
2020-08-14 09:35:46 -04:00
Robert Maynard
2d1b609b34 Use Ubuntu instead of rhel8 for cuda+kokkos
The rhel8 image would never upload to gitlab-ci completed artifacts.
2020-08-13 16:02:45 -04:00
Sujin Philip
801d625276 Exclude a failing test until it is resolved
The `ContourTreeUniformAugmented` tests for Cuda consistently
times out while running on the `centos7_gcc48` and `rhel8_test_centos7`
configurations. Temporarily exclude it to improve the CI turn-around time
while this issue is being resolved.
2020-08-13 08:21:03 -05:00
Sujin Philip
452f61e290 Add Kokkos backend 2020-08-12 13:55:24 -04:00
Robert Maynard
6fa170ae60 Update gitlab ci to make sure CUDA builds occur with CUDA runtime
The CUDA runtime is required so that linking occurs correctly
2020-08-11 16:33:40 -04:00
Ben Boeckel
dcef167889 gitlab-ci: fix key file permissions 2020-08-03 07:28:41 -04:00
Ben Boeckel
ca91cdee44 gitlab-ci: upload doxygen docs to the public website
It had been copied to a runner-local directory and then dropped.
2020-07-16 09:30:43 -04:00
Ben Boeckel
09973e66f9 gitlab-ci: use the keyfile directly 2020-07-16 09:30:27 -04:00
Sujin Philip
e67fc619c9 Fix setting build type in gitlab ci 2020-07-08 15:08:04 -05:00
Robert Maynard
72006fc94c Gitlab-ci no has builds without rendering enabled
Fixes: 521
2020-06-11 10:00:26 -04:00
Sujin Philip
b7d0c94f1b Merge topic 'diy-mpi-nompi'
934f085e0 Build diy as a library
f0a37ac6a Merge branch 'upstream-diy' into diy-mpi-nompi
7687aabf8 diy 2020-06-05 (b62915aa)
6ca2b9f87 Point to new version of Diy

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Robert Maynard <robert.maynard@kitware.com>
Merge-request: !2123
2020-06-08 21:25:54 -04:00
Sujin Philip
934f085e09 Build diy as a library
Support both mpi and nompi versions simultaneously.
2020-06-08 15:57:51 -05:00
Robert Maynard
71d9d4311e Doxygen is now generated by gitlab and done on each master merge 2020-06-03 09:55:21 -04:00
Robert Maynard
f7846f9013 Add openmpi library path to LD_LIBRARY_PATH 2020-06-01 15:17:22 -04:00
Robert Maynard
e7ca8be0b9 Update docker images to use cmake 3.17.3
The 3.17.3 release fixes a regression in ctest where NOT_RUN
tests didn't get reported to ctest or cdash
2020-06-01 11:51:39 -04:00
Robert Maynard
cdc1b7c256 Merge topic 'avoid_false_positive_ctest_failures'
f2b8cac0c gitlab-ci centos7 exclude tests causing rhel8 issues

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2098
2020-05-27 10:52:03 -04:00
Robert Maynard
f2b8cac0c9 gitlab-ci centos7 exclude tests causing rhel8 issues
The centos7 on rhel8 was not running the install tests
as the path to cmake/ctest wasn't valid. This causes
the causes the following issues:

1. NOT_RUN tests with REPEAT don't show up in CMake failed
output fixed by:
  https://gitlab.kitware.com/cmake/cmake/-/merge_requests/4801

2. failed tests cause ctest_test to return an error code,
   which propagates to the script, which propagates to
   having ctest running the script return an error.
2020-05-27 10:22:33 -04:00
Kenneth Moreland
e9028f5fa5 Add dashboard using VTK types
When VTK compiles VTK-m for inclusion as an accelerator library, it sets
an option to compile filters and other components for a different (and
expanded) set of common types. We should test this configuration.
2020-05-21 09:01:17 -06:00
Robert Maynard
af5d363f42 Update sccache to latest master which now has full nvcc support 2020-05-18 17:06:25 -04:00
Robert Maynard
b59913fad3 Log CDash build ids from each step of the build process
This can help track down a weird CDash bugs caused by multiple
in-flight builds that get canceled and result in bad CDash
reporting
2020-05-13 15:58:34 -04:00
Robert Maynard
b033b28efd Add a windows10 vs2019 + shell builder
In a future merge request will test CUDA support on windows
2020-05-04 12:02:56 -04:00
Robert Maynard
33c1667904 Make sure merge request ci builds examples 2020-05-01 08:45:50 -04:00
Robert Maynard
1bf808c479 Add OpenMP to our asan dashboard 2020-04-20 15:22:34 -04:00
Robert Maynard
07f37c814b Add lsan suppression file 2020-04-20 14:16:52 -04:00
Robert Maynard
b3924ef302 Add an asan to our gitlab ci suite 2020-04-20 11:26:26 -04:00
Robert Maynard
d7eaf1be84 make ubuntu1804_gcc6 run for each merge request and not just nightly 2020-04-17 10:02:20 -04:00
Robert Maynard
314a30ff19 Restrict the OpenMP threads # gitlab-ci tests uses
A single gitlab-runner can run multiple test stages
concurrently on the same hardware. When we have 3
jobs asking for 100% of the cpu's we get a 300%
reduction in performance caused by task switching
2020-04-16 15:45:59 -04:00
Robert Maynard
5c16b3be26 ubuntu1604 builders now use the correct c && c++ compilers 2020-04-16 13:25:55 -04:00
Robert Maynard
3c80b35b89 ubuntu1604 test step needs to know where MPI install location is
It needs the MPI location so that it can properly compile
users of VTK-m with MPI as part of `*_built_against_test_install`
tests
2020-04-16 13:25:55 -04:00
Robert Maynard
889cb33dde gitlab-ci test jobs better handle false positive failures
If ctest had to re-run failed tests and those test pass we
now consider it a successful run
2020-04-16 13:25:55 -04:00
Robert Maynard
b2823d79aa ubuntu1604 gcc48 builder install test now pass
Problem was that CMake 3.12 was the CMake version used in the
build image, and test image was using 3.13. This was a problem
as the install test invocation aren't backwards convertible and
therefore failed.
2020-04-16 08:43:28 -04:00
Robert Maynard
e979736893 Update gitlab-ci to use a version of sccache that supports CUDA 2020-04-15 16:10:53 -04:00
Sujin Philip
c102ea556c Update cmake minimum required version to 3.12 2020-04-13 12:42:28 -05:00
Robert Maynard
f6ed4060ef Revert "Update gitlab-ci to use a version of sccache that supports CUDA"
This reverts commit 5b469b75a191874abeb8c5cc694fcfba5f0b90c9.
2020-04-10 16:37:05 -04:00
Robert Maynard
5b469b75a1 Update gitlab-ci to use a version of sccache that supports CUDA 2020-04-10 09:15:35 -04:00
Robert Maynard
24a264fce8 Add scripts to allow developers to replicate CI environments
To simplify reproducing docker based CI workers locally, VTK-m has python program that handles all the
work automatically for you.

The program is located in `[Utilities/CI/reproduce_ci_env.py ]` and requires python3 and pyyaml.

To use the program is really easy! The following two commands will create the `build:rhel8` gitlab-ci
worker as a docker image and setup a container just as how gitlab-ci would be before the actual
compilation of VTK-m. Instead of doing the compilation, instead you will be given an interactive shell.

```
./reproduce_ci_env.py create rhel8
./reproduce_ci_env.py run rhel8
```

To compile VTK-m from the the interactive shell you would do the following:
```
> src]# cd build/
> build]# cmake --build .
```
2020-04-09 13:54:20 -04:00
Robert Maynard
0ea77c8df9 gitlab-ci nightly gcc 6 and 7 builders to improve coverage
This builds used to happen on renar
2020-03-30 12:49:05 -04:00
Robert Maynard
08a27bdcd8 gitlab-ci now has a clang-5 builder
This was once covered by the dejagore dashboard
2020-03-30 12:49:05 -04:00
Robert Maynard
16a295201b gitlab-ci options for docs, examples, and benchmarks 2020-03-30 12:49:05 -04:00
Robert Maynard
cbed21696d gitlab-ci won't trigger when just pushing remote branches
At the same time I have added the controls to allow for master only
builders which is required for nightly ubsan/asan testing
2020-03-30 09:51:45 -04:00
Robert Maynard
5bc09b976e Add gitlab-ci infrastructure 2020-03-26 13:40:47 -04:00
Robert Maynard
ef7ef5fb22 Add documentation for the what/why of using Gitlab ci 2020-03-26 08:27:58 -04:00
Robert Maynard
36d1a2d6ae Add dockerfiles to be used by VTK-m Gitlab ci 2020-03-26 08:27:58 -04:00
Robert Maynard
b16e4fc17b Add ECP CI support to vtk-m
VTK-m now can be tested on ECP CI ( https://ecp.osti.gov/nmc )
resources. This is done via the `.gitlab-ci-ecp.yml` file
2020-03-26 08:27:58 -04:00