Commit Graph

6002 Commits

Author SHA1 Message Date
Robert Maynard
813484d9b1 Merge topic 'remove_arrayhandlevirtual_cast_and_call'
3dd4d292f Remove unneeded code from ArrayHandleVirtual

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Kenneth Moreland <kmorel@sandia.gov>
Merge-request: !1623
2019-04-03 16:08:20 -04:00
Sujin Philip
e408537608 Merge topic 'update-CellLocatorTwoLevelUniformGrid'
566e220ea Suppress dashboard warnings
f20d7e788 Document the changes that are part of this MR.
f78e763be Add CellLocatorGeneral
c6bead838 Rename CellLocatorTwoLevelUniformGrid to CellLocatorUniformBins
ee838b829 Stylistic changes to CellLocators to match VTK-m

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Robert Maynard <robert.maynard@kitware.com>
Merge-request: !1615
2019-04-03 15:56:27 -04:00
Sujin Philip
566e220eaf Suppress dashboard warnings 2019-04-03 15:14:28 -04:00
Sujin Philip
f20d7e7884 Document the changes that are part of this MR. 2019-04-03 15:13:34 -04:00
Robert Maynard
3dd4d292f5 Remove unneeded code from ArrayHandleVirtual
The CastAndCall for ArrayHandleVirtual was always a bad idea.
The ArrayHandleVirtual is not considered a dynamic type by the
dispatch engine so it would never have tried to use this specialization.
2019-04-03 14:50:04 -04:00
Robert Maynard
72cb6343b8 Move vtkm::cont::CastAndCall into a header in vtkm/cont
Since CastAndCall is meant to be a user callable function,
we should make sure it is part of the vtkm cont headers
2019-04-03 14:15:26 -04:00
Robert Maynard
f1056affa7 Move select functions to host only to remove host/device suppressions
We previously had to mark the make_FunctionInterface function as
host/device as it could be used in either place. The ramifications
of this is that each time we launched a worklet any input parameter
had to either suppress cuda exceptions, or had to rely on the
DispatcherBase to suppress the warnings.

By making make_FunctionInterface only host callable ( as it is ),
we can remove all of our unneccesary suppression logic and better
expose real issues with code that is marked host/device but can't
be due to calling things such as std::abort
2019-04-03 12:48:33 -04:00
Robert Maynard
4f2156dfaf Thrust detail::aligned_reinterpret_cast doesn't warn now
We specialize aligned_reinterpret_cast inside vtk-m to fix the
issues related to missing __host__ __device__ markups on the
function.
2019-04-03 12:48:33 -04:00
Sujin Philip
f78e763be4 Add CellLocatorGeneral
A general purpose `CellLocator` that should work with any type of dataset.
Internally, it tries to chose one of the existing cell locators that would be
optimal for the input data.

Also removes `CellLocatorHelper`.
2019-04-03 10:22:05 -04:00
Sujin Philip
c6bead8388 Rename CellLocatorTwoLevelUniformGrid to CellLocatorUniformBins
Also make it a concrete sub-class of vtkm::cont::CellLocator
Fixes issue #251
2019-04-03 10:21:56 -04:00
Robert Maynard
f4840618cf Make sure ThrustPatches is included before thrust. 2019-04-03 08:51:05 -04:00
Robert Maynard
b2bbd66e60 Merge branch 'upstream-taotuple' into update_taoo
* upstream-taotuple:
  taotuple 2019-04-03 (8e70fa8a)
2019-04-03 08:50:47 -04:00
TaoCpp Tuple Upstream
4ec6fc8123 taotuple 2019-04-03 (8e70fa8a)
Code extracted from:

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

at commit 8e70fa8aa2e7273f7ccd4e576bfa04f992152f2c (for/vtk-m).
2019-04-03 08:50:46 -04:00
Robert Maynard
aef087fc00 Merge topic 'remove_runtime_device_tracker_from_try_execute'
2d477fd53 Remove ability to pass a runtime device tracker to TryExecute

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Kenneth Moreland <kmorel@sandia.gov>
Merge-request: !1616
2019-04-02 14:43:16 -04:00
Kenneth Moreland
04254dbd25 Merge topic 'specialize-worklet-for-device'
4e34feecb Add ability to specialize worklet for device

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Sujin Philip <sujin.philip@kitware.com>
Merge-request: !1608
2019-04-02 12:08:01 -04:00
Sujin Philip
ee838b8296 Stylistic changes to CellLocators to match VTK-m 2019-04-02 11:21:12 -04:00
Robert Maynard
2d477fd531 Remove ability to pass a runtime device tracker to TryExecute
Since runtime device trackers are single instance per thread
the ability to pass them around to other functions is unneeded.
2019-04-02 10:44:30 -04:00
Dave Pugmire
84b3b52355 Merge topic 'rectGridEval_precisionFix'
3bb79a2e4 Add use of 'this->' to adhere to VTK-m coding standards.
611b93e62 Use FloatDefault.

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Abhishek Yenpure <abhishek@uoregon.edu>
Acked-by: Kenneth Moreland <kmorel@sandia.gov>
Merge-request: !1618
2019-04-02 10:11:11 -04:00
Robert Maynard
f350517de2 Merge topic 'less_vtkm_cont_files_bring_in_cuda_device'
18ff6681f Less vtkm_cont cxx files bring in the cuda device

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Kenneth Moreland <kmorel@sandia.gov>
Merge-request: !1612
2019-04-01 12:02:55 -04:00
Kenneth Moreland
4e34feecb4 Add ability to specialize worklet for device
This adds an ExecutionSignature tag named Device that passes the
DeviceAdapterTag as an argument to the worklet's operator(). This allows
worklets to specialize their code based on the device.
2019-04-01 10:01:54 -06:00
Robert Maynard
e787d52afc Merge branch 'optionparser-to-third-party' into 'master'
Wrap third party optionparser.h in vtkm/cont/internal/OptionParser.h

See merge request vtk/vtk-m!1593
2019-04-01 10:56:01 -04:00
Dave Pugmire
3bb79a2e4f Add use of 'this->' to adhere to VTK-m coding standards. 2019-04-01 10:00:35 -04:00
Dave Pugmire
611b93e621 Use FloatDefault. 2019-04-01 09:31:17 -04:00
Robert Maynard
18ff6681fb Less vtkm_cont cxx files bring in the cuda device
When you have CUDA enabled we need to make sure that all worklet
launches come from a cuda file otherwise we will generate ODR
violations.
2019-04-01 08:21:07 -04:00
Robert Maynard
bea9f83429 Merge topic 'cleanup_filter_internals'
9c9c4d2ad remove unneeded includes in the vtkm/filter

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1617
2019-04-01 08:16:20 -04:00
Robert Maynard
9c9c4d2ad9 remove unneeded includes in the vtkm/filter 2019-03-29 17:21:26 -04:00
Kenneth Moreland
9f55c5efcc Merge topic 'connected-components-field-name'
d25db19c8 Fix inconsistencies in connected components filters

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Li-Ta Lo <ollie@lanl.gov>
Merge-request: !1613
2019-03-29 11:30:47 -04:00
Robert Maynard
de280d6a1c Merge topic 'fix_non_vtkm_style_includes'
b9e0e541b VTK-m once again uses consistent include style

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1611
2019-03-29 11:02:52 -04:00
Kenneth Moreland
d25db19c87 Fix inconsistencies in connected components filters
The connected components filters had some simple issues that were
inconsistent with the operation of other filters.

  * Set the output to the OutputFieldName defined in the filter rather
    than hardcoding it to "component". The default value is still
    "component", but now you can change it.
  * Make sure the output field association is correct. The field
    association for CellSetConnectivity is always cell and the field
    association for ImageConnectivity is always point.
  * Check that the field association for the input field of
    ImageConnectivity is point. The filter will fail if it is not.
  * Make both filters inherit from FilterCell instead of FilterField.
    The superclasses are similar but the latter allows the user to set the
    active cell set correctly.
  * Properly get the cell set specified by GetActiveCellSetIndex.
    Previously it was set to the active coordinates, which is wrong.
2019-03-28 18:35:46 -06:00
Robert Maynard
b9e0e541b8 VTK-m once again uses consistent include style 2019-03-28 14:12:08 -04:00
Allison Vacanti
319a85270e Merge topic 'fix_hostdevice_on_default'
2fa5b95e8 Fix warnings about __host__ / __device__ on defaulted methods.

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Robert Maynard <robert.maynard@kitware.com>
Merge-request: !1605
2019-03-28 13:34:13 -04:00
Robert Maynard
069923d49d Merge topic 'filters_use_active_cell_set'
bf2b3ab70 Filters properly use the active cell set not the first cell set.

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1610
2019-03-28 11:13:03 -04:00
Allison Vacanti
2fa5b95e8d Fix warnings about __host__ / __device__ on defaulted methods.
CellInterpolationHelper.h(43): warning #2913-D: __device__ annotation is
ignored on a function("~CellInterpolationHelper") that is explicitly
defaulted on its first declaration.
2019-03-28 10:40:58 -04:00
Robert Maynard
bf2b3ab70d Filters properly use the active cell set not the first cell set. 2019-03-28 09:02:25 -04:00
Kenneth Moreland
7993c2b353 Merge topic 'parse-some-options-in-initialize'
31b30dbd9 Update arguments to benchmarks
b0303c96e Allow Initialize to parse only some arguments

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Allison Vacanti <allison.vacanti@kitware.com>
Merge-request: !1603
2019-03-27 12:43:58 -04:00
Allison Vacanti
68abfccd7e Merge topic 'cuda10.1'
0581b368f Fix issues with importing installed vtkm::cuda after refactor.
ed4374b05 diy 2019-03-13 (e8e68c7c)
b85dcf229 Add more vtkm_cont compilation units to device_sources.
9014de0eb Suppress new host/device warnings for cuda 10.1.
04a464cc4 Update cuda detection to create vtkm::cuda as an interface library.

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Robert Maynard <robert.maynard@kitware.com>
Merge-request: !1582
2019-03-27 12:12:02 -04:00
Sujin Philip
34a49234cb Merge topic 'fix-cellset-permutation'
048cbda5e Simplify CellSetPermutation PointToCell

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Kenneth Moreland <kmorel@sandia.gov>
Merge-request: !1599
2019-03-27 08:28:48 -04:00
Kenneth Moreland
7237c46898 Wrap third party optionparser.h in vtkm/cont/internal/OptionParser.h
Previously we just took the optionparser.h file and stuck it right in
our source code. That was problematic for a variety of reasons.

1. It incorrectly assigned our license to external code.
2. It made lots of unnecessary changes to the original source (like
reformatting).
3. It made it near impossible to track patches we make and updates to
the original software.

Instead, use the third-party system to track changes to optionparser.h
in a different repository and then pull that into ours.
2019-03-26 15:47:17 -06:00
Kenneth Moreland
184fe79298 Merge branch 'upstream-optionparser' into optionparser-to-third-party
* upstream-optionparser:
  optionparser 2018-05-07 (eaca634d)
2019-03-26 15:35:55 -06:00
Lean Mean C++ Option Parser Upstream
4a920d9c47 optionparser 2018-05-07 (eaca634d)
Code extracted from:

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

at commit eaca634da51f1034e13908b468a1136939536289 (for/vtk-m).
2019-03-26 15:34:56 -06:00
Kenneth Moreland
2c10b57ced Add update script for optionparser third party library 2019-03-26 15:34:20 -06:00
Robert Maynard
79ca830600 Merge topic 'CheckSourceInInstall_now_handles_dirty_build_dirs'
99727164a CheckSourceInInstall correctly installs current vtk-m files

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1606
2019-03-26 16:39:34 -04:00
Dave Pugmire
43edb07247 Merge topic 'temporal_particleadvection_filter'
c0b150a77 Merge branch 'temporal_particleadvection_filter' of gitlab.kitware.com:dpugmire/vtk-m into temporal_particleadvection_filter
b211bef81 Modify method names to clarify intent.
283ad7800 Cleanup.
04487965e Create a pathline filter.

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1602
2019-03-26 16:05:24 -04:00
Robert Maynard
5a0fc2346c Merge topic 'update_cmake+policy_version'
0ce7e82d4 VTK-m now enables all new CMake policies in 3.14

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1604
2019-03-26 15:18:22 -04:00
Diy Upstream
ed4374b05d diy 2019-03-13 (e8e68c7c)
Code extracted from:

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

at commit e8e68c7cd2f362e706f11542a3408baa039de5e8 (for/vtk-m).
2019-03-26 14:53:42 -04:00
Allison Vacanti
0581b368fd Fix issues with importing installed vtkm::cuda after refactor. 2019-03-26 14:53:42 -04:00
Allison Vacanti
b85dcf2294 Add more vtkm_cont compilation units to device_sources.
These depend on DeviceAdapterTagCuda::IsEnabled being correctly
set at compile time.
2019-03-26 14:53:42 -04:00
Allison Vacanti
9014de0ebf Suppress new host/device warnings for cuda 10.1. 2019-03-26 14:53:42 -04:00
Allison Vacanti
04a464cc4b Update cuda detection to create vtkm::cuda as an interface library. 2019-03-26 14:53:42 -04:00
Kenneth Moreland
31b30dbd9d Update arguments to benchmarks
With the functionality of vtkm::cont::Initialize's argument handling
improved, parse the arguments of benchmarks better.
2019-03-26 12:04:31 -06:00