Commit Graph

7751 Commits

Author SHA1 Message Date
Sujin Philip
2f7ae83c9f Fix warnings 2020-07-09 08:10:54 -05:00
Sujin Philip
e67fc619c9 Fix setting build type in gitlab ci 2020-07-08 15:08:04 -05:00
Sujin Philip
1e36ef1407 Merge topic 'enable-game-of-life'
8c3c138bb Enable the Game of Life example back

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2169
2020-07-08 08:57:23 -04:00
Sujin Philip
8c3c138bb9 Enable the Game of Life example back
It was commented out by accident in a previous commit.
2020-07-06 12:25:42 -05:00
Robert Maynard
60339bffe6 Merge topic 'update_diy_to_always_build_with_pic'
749a110cd Merge branch 'upstream-diy' into update_diy_to_always_build_with_pic
b0895eca9 diy 2020-07-01 (b0623438)
5a2a26d3f Update DIY to make sure we always build diy libs with pic enabled

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Matt Larsen <larsen30@llnl.gov>
Merge-request: !2166
2020-07-01 12:58:04 -04:00
Robert Maynard
749a110cd0 Merge branch 'upstream-diy' into update_diy_to_always_build_with_pic
* upstream-diy:
  diy 2020-07-01 (b0623438)
2020-07-01 10:48:43 -04:00
Diy Upstream
b0895eca99 diy 2020-07-01 (b0623438)
Code extracted from:

    https://gitlab.kitware.com/third-party/diy2.git

at commit b06234388ebf398dcbd8e397fe0ba9e69f67ef35 (for/vtk-m-20200701-master).
2020-07-01 10:48:43 -04:00
Robert Maynard
5a2a26d3fc Update DIY to make sure we always build diy libs with pic enabled 2020-07-01 10:48:18 -04:00
Robert Maynard
b78e98adee Merge topic 'update_diy_to_namespace_DEBUG_define'
a1680ef8b Merge branch 'upstream-diy' into update_diy_to_namespace_DEBUG_define
de03d7bab diy 2020-06-24 (ab765e66)
f7b3d1bca Update DIY to not leak the `DEBUG` define
7c66b1dd6 Update contour_tree_distributed to work with the new diy API

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Matt Larsen <larsen30@llnl.gov>
Merge-request: !2162
2020-07-01 10:03:26 -04:00
Robert Maynard
fbc10f3a10 Merge topic 'only_trigger_ci_on_mainline_repo'
d9d860813 Make sure only master and tag updates on main repo cause ci to run

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Ben Boeckel <ben.boeckel@kitware.com>
Merge-request: !2165
2020-07-01 09:31:01 -04:00
Diy Upstream
de03d7bab3 diy 2020-06-24 (ab765e66)
Code extracted from:

    https://gitlab.kitware.com/third-party/diy2.git

at commit ab765e66fec50860e374230be470a38d304c4973 (for/vtk-m-20200626-master).
2020-07-01 08:28:17 -04:00
Robert Maynard
a1680ef8bf Merge branch 'upstream-diy' into update_diy_to_namespace_DEBUG_define
* upstream-diy:
  diy 2020-06-24 (ab765e66)
2020-07-01 08:28:17 -04:00
Robert Maynard
f7b3d1bca7 Update DIY to not leak the DEBUG define
Fixes #539
2020-07-01 08:28:10 -04:00
Robert Maynard
7c66b1dd62 Update contour_tree_distributed to work with the new diy API 2020-07-01 08:28:10 -04:00
Robert Maynard
d9d8608137 Make sure only master and tag updates on main repo cause ci to run 2020-07-01 08:18:31 -04:00
Kenneth Moreland
70f4aae9de Merge topic 'basic-array-use-buffer'
42219f8d6 Fix buffer leak in BufferInfo
8e1c87b5c Work around known bug in LagrangianFilter
a47fd42bc Pin user provided memory in ArrayHandle
56bec1dd7 Replace basic ArrayHandle implementation to use Buffers
8f7b0d18b Add Buffer class

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Robert Maynard <robert.maynard@kitware.com>
Merge-request: !2061
2020-06-30 16:39:43 -04:00
Kenneth Moreland
42219f8d61 Fix buffer leak in BufferInfo 2020-06-29 16:36:21 -06:00
Kenneth Moreland
09db6b5b64 Merge topic 'usr-bin-hash-bang'
186ee4958 Change CI script hash-bang from /bin/env to /usr/bin/env

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Robert Maynard <robert.maynard@kitware.com>
Merge-request: !2163
2020-06-29 10:04:10 -04:00
Kenneth Moreland
186ee49583 Change CI script hash-bang from /bin/env to /usr/bin/env
Historically, the `/bin` directory on Unix has a reduced set of
commands used for small mounts while booting the system. As such,
it is common for `/bin` to be missing the `env` command.

For the same historical reasons, `/usr/bin` tends to have most if
not all commands provided to the user environment. Thus,
`/usr/bin/env` is more likely to exist than `/bin/env`. This is
in fact the case for Mac OSX, which is a very widely used version
of *nix.

Thus, it is better to use `#!/usr/bin/env` as the hash-bang in
scripts.
2020-06-29 06:58:51 -06:00
Kenneth Moreland
8e1c87b5c2 Work around known bug in LagrangianFilter
The implementation of LagrangianFilter uses some `ArrayHandle`s
declared as `static` in the .hxx header file. One of the bad
consequences of this is that there is no control over when the
arrays are freed. We have seen where these arrays get freed
after the CUDA system is closed, which causes nasty things to
happen as the program closes.

This works around the problem until a fix is implemnted.
2020-06-25 14:02:46 -06:00
Kenneth Moreland
a47fd42bc1 Pin user provided memory in ArrayHandle
Often when a user gives memory to an `ArrayHandle`, she wants data to be
written into the memory given to be used elsewhere. Previously, the
`Buffer` objects would delete the given buffer as soon as a write buffer
was created elsewhere. That was a problem if a user wants VTK-m to write
results right into a given buffer.

Instead, when a user provides memory, "pin" that memory so that the
`ArrayHandle` never deletes it.
2020-06-25 14:02:46 -06:00
Kenneth Moreland
56bec1dd7b Replace basic ArrayHandle implementation to use Buffers
This encapsulates a lot of the required memory management into the
Buffer object and related code.

Many now unneeded classes were deleted.
2020-06-25 14:02:26 -06:00
Kenneth Moreland
8f7b0d18be Add Buffer class
The buffer class encapsulates the movement of raw C arrays between
host and devices.

The `Buffer` class itself is not associated with any device. Instead,
`Buffer` is used in conjunction with a new templated class named
`DeviceAdapterMemoryManager` that can allocate data on a given
device and transfer data as necessary. `DeviceAdapterMemoryManager`
will eventually replace the more complicated device adapter classes
that manage data on a device.

The code in `DeviceAdapterMemoryManager` is actually enclosed in
virtual methods. This allows us to limit the number of classes that
need to be compiled for a device. Rather, the implementation of
`DeviceAdapterMemoryManager` is compiled once with whatever compiler
is necessary, and then the `RuntimeDeviceInformation` is used to
get the correct object instance.
2020-06-25 14:01:39 -06:00
Li-Ta Lo
a338612e95 Merge topic 'standard_normal'
365b1bb25 use make_ArrayHandleZip
980c4864a Merge branch 'master' into standard_normal
2aea7534b Add ArrayHandleRandomStandardNormal

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Robert Maynard <robert.maynard@kitware.com>
Merge-request: !2150
2020-06-25 13:18:26 -04:00
Li-Ta Lo
365b1bb25c use make_ArrayHandleZip 2020-06-25 09:51:06 -06:00
Li-Ta Lo
980c4864ac Merge branch 'master' into standard_normal 2020-06-24 14:38:50 -06:00
Li-Ta Lo
beba90b6f7 Merge topic 'uniform_real'
143e3d39a remove unused type alias
01a448663 Merge branch 'master' into uniform_real
c67e5bb12 fixe warnings about implicit type conversion
1e4294392 Add deterministic seed to avoid potential spurious failure
5b0e309b9 the random source is still 64 bits
cc3061bab Avoid calling ReadPortal() all the time
9bf6dea22 remove inline initialization of seed
e69308047 Add statistics base testing, add Flot32 RNG

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Robert Maynard <robert.maynard@kitware.com>
Merge-request: !2148
2020-06-24 16:36:36 -04:00
Nick Thompson
7d6eb10917 Merge topic 'float_distance_2'
470058c32 Unfoobar the float_distance MR.

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Kenneth Moreland <kmorel@sandia.gov>
Merge-request: !2160
2020-06-24 11:24:39 -04:00
Nick
470058c328 Unfoobar the float_distance MR. 2020-06-24 10:52:59 -04:00
Robert Maynard
f6c3132268 Merge topic 'remove_ecp_nm_gitlab'
aaaa748ff Remove New Mexico Consortium CI as hardware has been removed

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2158
2020-06-24 08:56:47 -04:00
Kenneth Moreland
48ce49a527 Merge topic 'fail-with-stl-exceptions'
f6a899346 Make tests that throw an STL exception fail

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Nick Thompson <nathompson7@protonmail.com>
Merge-request: !2159
2020-06-24 00:25:43 -04:00
Kenneth Moreland
f6a8993469 Make tests that throw an STL exception fail
If a test throws any unexpected exception, the test is supposed to
detect that and fail. For the STL exceptions, the test failed to return
an error code. Fix that.
2020-06-23 16:25:09 -06:00
Kenneth Moreland
7f60b0025d Merge topic 'cuda-no-assert'
c84588caf Re-add assert to fix deadlock
270ba214d Disable asserts for CUDA architecture builds

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2157
2020-06-22 21:18:17 -04:00
Kenneth Moreland
c84588caf7 Re-add assert to fix deadlock
For some reason, `UnitTestContourTreeUniformAugmentedFilterCUDA` was
deadlocking on some of the dashboards when `VTKM_ASSERT` was changed to
be empty when compiling CUDA kernels (for compiler performance reasons).
Fix this by calling `assert` directly in this case.

For the life of me, I cannot figure out why this would be an issue.
Clearly the `assert` is never actually called or else the test would
error out (unless a special condition in CUDA is causing it to be
hidden). But if you take out the code, something changes to lock up the
kernel.
2020-06-22 17:10:33 -06:00
Kenneth Moreland
270ba214d5 Disable asserts for CUDA architecture builds
`assert` is supported on recent CUDA cards, but compiling it appears to be
very slow. By default, the `VTKM_ASSERT` macro has been disabled whenever
compiling for a CUDA device (i.e. when `__CUDA_ARCH__` is defined).

Asserts for CUDA devices can be turned back on by turning the
`VTKm_NO_ASSERT_CUDA` CMake variable off. Turning this CMake variable off
will enable assertions in CUDA kernels unless there is another reason
turning off all asserts (such as a release build).
2020-06-22 13:54:22 -06:00
Matt Larsen
280d3e6909 Merge topic 'fix/rendering_export'
1c63c7032 export symbols need by vtkh

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2154
2020-06-22 15:35:42 -04:00
Robert Maynard
aaaa748ffd Remove New Mexico Consortium CI as hardware has been removed
ECP is no longer offering CI via NMC, so we can now remove the
infrastructure we used for that.

See merge request 2115 for how we are adding gitlab-ci at OLCF
2020-06-22 15:14:20 -04:00
Robert Maynard
765fa6da22 Merge topic 'remove_some_unneded_include_statements'
3029994a9 Remove some unneeded include statements from vtkm/exec

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Kenneth Moreland <kmorel@sandia.gov>
Merge-request: !2156
2020-06-22 13:30:56 -04:00
Robert Maynard
3029994a97 Remove some unneeded include statements from vtkm/exec 2020-06-22 09:28:51 -04:00
Dave Pugmire
eca888fe9a Merge topic 'particle_advection_filter'
0654d1853 fix cuda compile, export function.
00b1f85eb link error
6d1930bc2 forgot the storage tags
03e319897 move funcs to cxx, remove storage template
bac966410 Move array copy to cxx
35ed68911 fix compile error.
1a7823c60 code cleanup.
02d8c3782 Add unittest for particlearraycopy
...

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2152
2020-06-19 15:22:57 -04:00
Robert Maynard
5cfd057c92 Merge topic 'better_guard_inclusion_of_vtkm_findmpi'
7092bb921 Make sure we don't leak our findmpi module

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Sujin Philip <sujin.philip@kitware.com>
Merge-request: !2153
2020-06-19 13:10:45 -04:00
Robert Maynard
7092bb9210 Make sure we don't leak our findmpi module
Consumers of VTK-m shouldn't use VTK-m find mpi module unless
they explicitly want to. This makes sure that by default only
VTK-m uses it.
2020-06-19 11:43:36 -04:00
dpugmire
0654d1853d fix cuda compile, export function. 2020-06-19 10:57:30 -04:00
Matt Larsen
1c63c7032a export symbols need by vtkh 2020-06-19 07:41:54 -07:00
dpugmire
00b1f85ebd link error 2020-06-18 21:42:51 -04:00
dpugmire
6d1930bc20 forgot the storage tags 2020-06-18 19:41:37 -04:00
dpugmire
03e3198977 move funcs to cxx, remove storage template 2020-06-18 19:37:09 -04:00
dpugmire
bac9664104 Move array copy to cxx 2020-06-18 17:53:19 -04:00
dpugmire
35ed68911e fix compile error. 2020-06-18 15:59:09 -04:00
dpugmire
1a7823c604 code cleanup. 2020-06-18 15:50:25 -04:00