Commit Graph

8866 Commits

Author SHA1 Message Date
Vicente Adolfo Bolea Sanchez
f60a45bc63 Enforce C++14 in the whole project
Signed-off-by: Vicente Adolfo Bolea Sanchez <vicente.bolea@kitware.com>
2021-04-12 13:29:46 -04:00
Kenneth Moreland
49d6200413 Merge topic 'deprecate-variant-array-handle'
14839a032 Fix deprecation warnings with MSVC
5510521a0 Fix VariantArrayHandle::AsVirtual with cast arrays
25e6daf93 Add changelog for depreciating VariantArrayHandle
b4ef9fcac Fix UnknownArrayHandle::CastAndCall for special arrays
68f39b86a Deprecate VariantArrayHandle

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Sujin Philip <sujin.philip@kitware.com>
Merge-request: !2459
2021-04-12 10:15:08 -04:00
Nick Thompson
6e791ede0a Merge topic 'workletize_logistic'
f1cf6c762 Refactor to more idiomatic use of worklets.
7b95ef597 Refactor the structs to classes.
eac6c21c8 Workletize the logistic map.

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Dave Pugmire <dpugmire@gmail.com>
Merge-request: !2463
2021-04-10 11:59:47 -04:00
Nick Thompson
f1cf6c762a Refactor to more idiomatic use of worklets. 2021-04-09 14:56:19 -04:00
Nick Thompson
7b95ef5975 Refactor the structs to classes. 2021-04-09 14:54:12 -04:00
Nick Thompson
eac6c21c84 Workletize the logistic map. 2021-04-09 12:42:40 -04:00
Caitlin Ross
57e8750b33 Merge topic 'find-tbb-fix'
53833334c change the way tbb is imported

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Ben Boeckel <ben.boeckel@kitware.com>
Merge-request: !2452
2021-04-09 08:27:45 -04:00
Nick Thompson
2663e9d979 Merge topic 'quadratic_roots'
d4ead2d76 Remove superfluous subbraces.
a7ecd30cd Commute #ifdef with braces to make clang-format happy.
dd8863637 Return a vec<T,2> rather than a vtkm::Pair<T,T>.
91bec19e9 Additional comments and fix typo in unit test.
6f9515aa9 Quadratic roots to 3 ulps.

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2462
2021-04-08 19:20:17 -04:00
Caitlin Ross
53833334c4 change the way tbb is imported 2021-04-08 16:24:42 -04:00
Nick Thompson
d4ead2d767 Remove superfluous subbraces. 2021-04-08 16:23:42 -04:00
Nick Thompson
a7ecd30cdd Commute #ifdef with braces to make clang-format happy. 2021-04-08 16:23:42 -04:00
Nick Thompson
dd8863637a Return a vec<T,2> rather than a vtkm::Pair<T,T>. 2021-04-08 16:23:42 -04:00
Nick Thompson
91bec19e97 Additional comments and fix typo in unit test. 2021-04-08 16:23:42 -04:00
Nick Thompson
6f9515aa94 Quadratic roots to 3 ulps. 2021-04-08 16:23:42 -04:00
Kenneth Moreland
14839a0325 Fix deprecation warnings with MSVC 2021-04-08 09:28:03 -06:00
Kenneth Moreland
5510521a06 Fix VariantArrayHandle::AsVirtual with cast arrays
The both the underlying `UnknownArrayHandle` and `ArrayHandleVirtual`
handle `ArrayHandleCast` specially. This caused problems when passing an
`ArrayHandleCast` to `VariantArrayHandle::AsVirtual`. Solve the problem
by stripping out the cast storage tags and letting these classes handle
it internally.

It's annoying to have to fix a problem in a method of a deprecated class
that returns another class that is deprecated for a different reason. No
one should really be running this.
2021-04-08 09:21:39 -06:00
Kenneth Moreland
25e6daf93f Add changelog for depreciating VariantArrayHandle 2021-04-07 16:12:42 -06:00
Kenneth Moreland
b4ef9fcac3 Fix UnknownArrayHandle::CastAndCall for special arrays
`UnknownArrayHandle` treats a `ArrayHandleCast` and
`ArrayHandleMultiplexer` special. When you put one of these arrays in an
`UnknownArrayHandle`, it takes the original array out and stores it. If
you try to take an array of that type out, it will again do the proper
conversion.

The only problem is that if you use `IsType`, the result can be
unexpected. This is what happened with `CastAndCall`, which was using
`IsType` internally. Changed that to `CanConvert` to properly get the
array handle out.
2021-04-07 16:12:42 -06:00
Kenneth Moreland
68f39b86a8 Deprecate VariantArrayHandle
`VaraintArrayHandle` has been replaced by `UnknownArrayHandle` and
`UncertainArrayHandle`. Officially make it deprecated and point users to
the new implementations.
2021-04-07 16:12:38 -06:00
Nickolas Davis
21b36a6429 Merge topic 'rename-algorithms'
1c9ae402b Deprecate vtkm/BinarySearch.h, it is unused and similar to LowerBound
26d9ecb39 split vtkm/Algorithms.h into UpperBound.h, LowerBound.h, and BinarySearch.h

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Kenneth Moreland <kmorel@acm.org>
Merge-request: !2455
2021-04-07 17:08:34 -04:00
Li-Ta Lo
f2a4361c03 Merge topic 'alpine_sampling_2d'
ed8d2fb35 Merge branch 'master' into alpine_sampling_2d
93b8ee97d Pasing range explicitly to NDHistogram worklet for ALPINE 2D sampling milestone

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Li-Ta Lo <ollie@lanl.gov>
Merge-request: !2257
2021-04-07 16:10:09 -04:00
nadavi
1c9ae402b0 Deprecate vtkm/BinarySearch.h, it is unused and similar to LowerBound 2021-04-07 19:10:28 +00:00
nadavi
26d9ecb398 split vtkm/Algorithms.h into UpperBound.h, LowerBound.h, and BinarySearch.h 2021-04-07 18:53:09 +00:00
Nickolas Davis
d53ce5bd24 Merge topic 'fix-windows-builds'
7f86a16b3 add missing include

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2461
2021-04-07 13:59:18 -04:00
nadavi
7f86a16b37 add missing include 2021-04-07 17:54:34 +00:00
Vicente Bolea
c3db52da93 Merge topic 'update-to-1.6.0-rc1'
19c1b99f1 1.6.0-rc1 is our 7th official release of VTK-m.
4e94d830a Add release notes for v1.6.0
9d345733b Merge commit 'd2d1c854adc8c0518802f153b48afd17646b6252' into update-to-1.6.0-rc1
74ffad9bd 1.5.1 is a bugfix release for VTK-m.
f67dcfc3f Add release notes for v1.5.1
38af6dbf5 add Particle.h and Deprecated.h to the installed headers
d5f50c5a9 3b7b21c86 Do not use std::is_trivially_copyable on GCC 4.X
cb3d6e5cc Variant as trivially copyable
...

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Kenneth Moreland <kmorel@acm.org>
Merge-request: !2457
2021-04-07 13:48:12 -04:00
Nick Thompson
b00f5b4430 Merge topic 'diff_of_products'
068399b81 Fix build errors on Windows and compiler warnings on Ubuntu.
8d54138d3 Kahan's difference of products algorithm

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Kenneth Moreland <kmorel@acm.org>
Merge-request: !2460
2021-04-07 09:11:44 -04:00
Nick Thompson
068399b817 Fix build errors on Windows and compiler warnings on Ubuntu. 2021-04-07 08:09:39 -04:00
Vicente Adolfo Bolea Sanchez
19c1b99f18 1.6.0-rc1 is our 7th official release of VTK-m.
The major changes to VTK-m from 1.5.1 can be found in:
  docs/changelog/1.6.0/release-notes.md

Signed-off-by: Vicente Adolfo Bolea Sanchez <vicente.bolea@kitware.com>
v1.6.0-rc1
2021-04-06 18:28:53 -04:00
Kenneth Moreland
fdb7abe731 Merge topic 'all-execobj-trivially-copyable'
294a30fd7 Check that all execution objects are trivially copyable
bd5b84fa9 Have VTKM_IS_TRIVIAL* macros show types better
3813fb515 Make ArrayPortalRecombineVec trivially copyable

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Li-Ta Lo <ollie@lanl.gov>
Merge-request: !2416
2021-04-05 19:05:37 -04:00
Nick Thompson
8d54138d3e Kahan's difference of products algorithm 2021-04-05 15:20:56 -04:00
Kenneth Moreland
33f6f0be59 Merge topic 'handle_cmake_policy_105'
97944e59b Correctly handle when to use `DEVICE_LINK` generator expression

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Kenneth Moreland <kmorel@acm.org>
Merge-request: !2458
2021-04-05 12:05:34 -04:00
Vicente Adolfo Bolea Sanchez
4e94d830a9 Add release notes for v1.6.0 2021-04-02 16:33:45 -04:00
Vicente Adolfo Bolea Sanchez
9d345733bf Merge commit 'd2d1c854adc8c0518802f153b48afd17646b6252' into update-to-1.6.0-rc1
* commit 'd2d1c854adc8c0518802f153b48afd17646b6252': (1346 commits)
  extend the default clipping plane
  Fix unintended cast in TBB Reduce's return value
  follow coding conventions
  make scalar normilization consistent across rendering
  correct a potential divide by zero
  Do not assume CUDA reduce operator is unary
  Fix casting issues in TBB functors
  Add casts to FunctorsGeneral.h
  Allow for different types in basic type operators
  kick the builds
  Cleanup per review.
  Fixes per review
  Add ArrayHandleSOA to default
  Disallow references in Variant
  Be more conservative about is_trivial support
  Removed two TODO comments after verifying parameters
  Port bug fix from distributed to augmented contour tree filter
  Fix hang in distributed contour tree
  more missing sstream headers
  add another missing header
  ...
2021-04-02 16:32:05 -04:00
Robert Maynard
97944e59be Correctly handle when to use DEVICE_LINK generator expression 2021-04-02 13:45:15 -04:00
Kenneth Moreland
294a30fd7e Check that all execution objects are trivially copyable
When the dispatcher does it's "transport" phase, it returns an
"execution object", but this object is held in the control environment
(on the host) although it may point to resources in the execution
environment (on the device). For this object to get from host to device,
it must be trivially copyable. If it is not, compile and/or runtime
errors could occur. So force this condition with a static assert.
2021-04-02 07:37:26 -06:00
Kenneth Moreland
bd5b84fa90 Have VTKM_IS_TRIVIAL* macros show types better
Changed the definition of `VTKM_IS_TRIVIAL`,
`VTKM_IS_TRIVIALLY_COPYABLE` and the like to use internal structs to do
the static assert rather than have them do the static assert themselves.
This makes the compiler more likely to tell you the actual type being
checked rather. (At least, this was the case on my clang compiler.)
2021-04-02 07:37:26 -06:00
Kenneth Moreland
3813fb515c Make ArrayPortalRecombineVec trivially copyable
Using this internal class is a bit tricky because it requires a pointer
to a C array that is expected to contain portals. Both the C array and
the portals must be defined for the expected device. This is already
handled by the associated Storage. Assuming all of this holds, make sure
the `ArrayPortalRecombineVec` is trivially copyable. This is a
requirement for passing objects to the execution environment.
2021-04-02 07:37:26 -06:00
Kenneth Moreland
2bd4805fe0 Merge topic 'variant-safe-punning2'
6921b5cc3 Minor style changes in UnitTestVariant
6ccb32d27 Slight comment changes
647bc94fe Reduce the number of lines required to implement Variant::CastAndCall
991eeba9f Reduce the number of lines required to implement VariantUnion
7607736ef Reduce the number of lines required to implement AllTrivially*
9816c422b Add padding to Grid struct in CellLocatorTwoLevel
e480fd7a2 Support copying a Variant to itself
d2d9ba332 Make connectivity structures trivially copyable
...

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2444
2021-04-01 18:04:30 -04:00
Kenneth Moreland
6921b5cc3d Minor style changes in UnitTestVariant 2021-04-01 14:47:51 -06:00
Kenneth Moreland
6ccb32d27b Slight comment changes 2021-03-31 14:35:06 -06:00
Nickolas Davis
46c2af2997 Merge topic 'remove-render-annotations'
a683a8802 add support for removing annotations and remove from regression tests

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Matt Larsen <larsen30@llnl.gov>
Merge-request: !2433
2021-03-31 15:38:56 -04:00
nadavi
a683a8802a add support for removing annotations and remove from regression tests 2021-03-31 17:08:46 +00:00
Kenneth Moreland
647bc94fed Reduce the number of lines required to implement Variant::CastAndCall 2021-03-31 09:49:40 -06:00
Ben Boeckel
2fd7c92820 Merge topic 'range-compute-coordinates'
26d5168b4 Fix types used for coordinates in ArrayRangeCompute

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Vicente Bolea <vicente.bolea@kitware.com>
Merge-request: !2453
2021-03-31 10:35:45 -04:00
Kenneth Moreland
991eeba9f3 Reduce the number of lines required to implement VariantUnion 2021-03-30 14:35:44 -06:00
Kenneth Moreland
7607736ef4 Reduce the number of lines required to implement AllTrivially* 2021-03-30 14:05:53 -06:00
Kenneth Moreland
9816c422b1 Add padding to Grid struct in CellLocatorTwoLevel
There appears to be a bug in CUDA 9.2 where if you have a class that
contains a struct that itself has to have padding in the middle for
alignment purposes and you then put that class in a union with other
classes, it seems like that padding can cause problems with other
objects in the union.
2021-03-30 12:59:07 -06:00
Kenneth Moreland
e480fd7a24 Support copying a Variant to itself 2021-03-30 12:59:07 -06:00
Kenneth Moreland
d2d9ba3321 Make connectivity structures trivially copyable
It always worked to trivially copy these classes, but the compiler did
not think so because copy constructors were defined. Change these
constructors to be default so that the compler can properly check
triviality.
2021-03-30 12:59:07 -06:00