Commit Graph

3060 Commits

Author SHA1 Message Date
Allison Vacanti
e3c9e7bbce Optimize cell map computation.
Rather than sorting and reducing the list by key, sorting and uniquing
an index array with an indirection functor is faster.
2017-10-10 10:28:51 -04:00
Allison Vacanti
d766965000 Use requested grid in VertexClustering worklet.
This is to match the default behavior of vtkQuadricClustering. If we
want to add this functionality back, it should go into the filter as
an option that adjusts nDivisions before calling the worklet.
2017-10-10 10:28:51 -04:00
Allison Vacanti
0472dc1198 Fix warning on Cuda.
assert(false && ""); emitted a

"warning : controlling expression is constant"

Replace the assertion with an exception, which is more appropriate here
anyway.
2017-10-10 10:28:51 -04:00
Allison Vacanti
3f4e17e2a2 Add field mapping to VertexClustering. 2017-10-10 10:28:51 -04:00
Allison Vacanti
9c332674ae Remove unused comparison operator. 2017-10-10 10:28:51 -04:00
Allison Vacanti
5420368ae0 Add fields to the cow nose testing dataset. 2017-10-10 10:28:51 -04:00
Allison Vacanti
c2a7e4faba Adapt ReduceByKey to handle ArrayHandleDiscard for output keys.
Often times we don't care about the output keys, and it's useful to
be able to pass an ArrayHandleDiscard into the algorithm to save
memory in these cases.
2017-10-10 10:28:51 -04:00
Allison Vacanti
9fe7cb4542 Add struct to simplify detection of ArrayHandleDiscards.
This makes it easier to adapt algorithms to avoid reading from
discard arrays.
2017-10-10 10:28:51 -04:00
Kenneth Moreland
82c97e0d14 Merge topic 'array-copy-regression'
e149dcf1 Specify device adapter for array copy in worklet tests

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Robert Maynard <robert.maynard@kitware.com>
Merge-request: !961
2017-10-10 09:30:56 -04:00
Robert Maynard
189b668e54 The interop/cuda headers aren't testable.
The headers in this location presume you are linking/including GL which
isn't done as part of the header tests.
2017-10-09 09:40:52 -04:00
Robert Maynard
e20b64151c Merge topic 'consistent_forward_declares'
f8f1adc9 Forward decleare DeviceAdapterAlgorithm correctly as a struct

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Allison Vacanti <allison.vacanti@kitware.com>
Merge-request: !962
2017-10-09 08:42:38 -04:00
Matt Larsen
86b2757505 Merge topic 'simplify_triangulator'
2326dca0 simplify triangulator

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !963
2017-10-06 23:30:18 -04:00
Matt Larsen
2326dca0a2 simplify triangulator 2017-10-06 16:08:29 -07:00
Robert Maynard
f8f1adc962 Forward decleare DeviceAdapterAlgorithm correctly as a struct 2017-10-06 09:50:12 -04:00
Allison Vacanti
5ec29128de Merge topic 'install_hooks'
c0a73159 Clean up install/VTK issues in VTKmConfig.cmake.
30f4151b Add missing headers to examples.
a2a55eda Install cuda interop headers.
85062a3a Add version info to installed cmake config files.
75f88b4c Add versioning to VTKM installed include/share dirs.
b3852e8d Add versioning to VTKM libraries.

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Robert Maynard <robert.maynard@kitware.com>
Merge-request: !958
2017-10-04 10:55:36 -04:00
Kenneth Moreland
e149dcf1c1 Specify device adapter for array copy in worklet tests
Rob noticed a degridation in performance in some worklet tests when
ArrayCopy was added. I hypothesize that this slowdown is doing the array
copy with TBB instead of serial in the serial tests. (There have been
some checks in the existing code to suggest that some operations in TBB
can be slower than serial.) This change forces the array copy to be on
the device for which we are testing.
2017-10-03 14:18:39 -07:00
Robert Maynard
fe028d828a Merge topic 'marching_cubes_faster_structured_normals'
1147edb1 MarchingCubes now uses Gradient fast paths when possible.
d7d5da4f More changes to Neighborhood code to make it more easy to use.

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Sujin Philip <sujin.philip@kitware.com>
Merge-request: !916
2017-10-03 15:44:16 -04:00
Allison Vacanti
a934ab82f8 Merge topic 'stable_sort_keys'
fd311f57 Update worklet::Keys to stable sort keys and not modify input.
d6b2896a Add StableSortIndices worklet.

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Kenneth Moreland <kmorel@sandia.gov>
Merge-request: !954
2017-10-03 14:04:53 -04:00
Allison Vacanti
a2a55edaff Install cuda interop headers.
Looks like a missing subdirectory call. Also disabled testbuilds since
these need external OpenGL setup.
2017-10-02 12:33:30 -04:00
Allison Vacanti
75f88b4c46 Add versioning to VTKM installed include/share dirs. 2017-10-02 11:39:10 -04:00
Allison Vacanti
fd311f5716 Update worklet::Keys to stable sort keys and not modify input.
This ensures that the order of the values presented to the
WorkletReduceByKey functor is consistent.

After this change, the key array used to build the worklet::Keys object
is no longer modified. The sorted keys can be obtained by using permuting
the input keys with Keys::GetSortedValuesMap().
2017-09-28 13:02:33 -04:00
Allison Vacanti
d6b2896ad9 Add StableSortIndices worklet.
This worklet produces an index array that permutes a key array into a
stable sorted order.
2017-09-28 13:02:33 -04:00
Dave Pugmire
d6edab8e50 Fix comment for streamline filter. 2017-09-28 08:09:57 -04:00
Dave Pugmire
f303c52f20 fix copyright. 2017-09-28 07:30:38 -04:00
Dave Pugmire
3f4a31f43a copyright changes. 2017-09-28 07:23:43 -04:00
Dave Pugmire
4b74c4d506 Fix copyright statement. 2017-09-28 07:09:05 -04:00
Dave Pugmire
78d7f5ba72 Fix return value to reflect that no mapping was done. 2017-09-27 21:38:38 -04:00
Dave Pugmire
f089598280 compiler warning. 2017-09-27 21:38:38 -04:00
Dave Pugmire
ca5507e6f3 compile warning. 2017-09-27 21:38:38 -04:00
Dave Pugmire
33e25c7aa9 Ken inspired fix for compiler errors. 2017-09-27 21:38:38 -04:00
Dave Pugmire
0a0ee460d3 Formating. 2017-09-27 21:38:38 -04:00
Dave Pugmire
ca57343a9b compiler warnings. 2017-09-27 21:38:37 -04:00
Dave Pugmire
99672d75a2 format warnings. 2017-09-27 21:38:37 -04:00
Dave Pugmire
ee9c158449 Compiler errors and warnings. 2017-09-27 21:38:37 -04:00
Dave Pugmire
e7fac3d873 Wrap the streamline functionality with a filter. 2017-09-27 21:38:37 -04:00
Kenneth Moreland
aa0a7bdceb Fix ambiguous make_ArrayHandleCast template
In a previous commit I made a version of make_ArrayHandleCast that
returned the same array if no cast was needed. That should shorten
template type names and make them easier to read. However, some
compilers were having trouble distinguishing between the two versions I
had created. This change uses an internal structure to make the
resolution easier.
2017-09-27 10:56:22 -06:00
Kenneth Moreland
091881d2a4 Use default storage in ArrayHandleCompositeVector test
The idea of the test was to turn off the "default" storage to ensure
that the fancy array was not making assumptions about the storage of its
delegate array. But there is lots of code elsewhere that uses the
default storage (rightly so) to create intermediate arrays, which will
fail if you disable the default storage. This was causing a test to
fail, so turn default storage back on for this case.
2017-09-27 10:05:24 -06:00
Kenneth Moreland
2625ae7866 Update VTK-m source to use new ArrayCopy functionality 2017-09-25 16:54:46 -06:00
Kenneth Moreland
f4ff589a9d Add version of ArrayCopy that takes a device adapter
This is still more convenient than declaring DeviceAdapterAlgorithm just
to copy two arrays. Now the function works whether or not you know what
the device should be.
2017-09-25 16:54:24 -06:00
Kenneth Moreland
65c7324ffe Create ArrayCopy method
This is a convenience method to do a deep copy of an array. This comes
up a lot, but can be a pain if you don't have a specific device adapter
on which to do the copy.
2017-09-25 16:28:44 -06:00
Robert Maynard
1147edb192 MarchingCubes now uses Gradient fast paths when possible.
When running on image data we now use central differences to compute the point
gradient
2017-09-25 14:25:28 -04:00
Robert Maynard
fe8b75f7bf Consistenly use nullptr in vtk-m. 2017-09-25 09:57:23 -04:00
Robert Maynard
d7d5da4fa5 More changes to Neighborhood code to make it more easy to use.
These changes allow other worklets to be able to call neighborhood worklets.
2017-09-25 09:03:14 -04:00
Matt Larsen
83165f0cde Merge topic 'concrete-canvas'
b5bfa1ed More copyright header fixes
e6c204ac Fix copyright header merge issues
495adacc Merge branch 'master' into concrete-canvas
dc0e3d51 Enhances colorbar with translucent indicator for alpha values
28c1bc65 Draws world annotations before scene render
53fb679e Adds explicit inline for `Texture2DSampler`
a32e46df Removes storage tag template parameter
30925774 Remove `typename` keyword from explicit specializations
...

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !934
2017-09-23 11:48:12 -04:00
Manish Mathai
b5bfa1edff More copyright header fixes 2017-09-22 16:10:33 -07:00
Manish Mathai
e6c204ac67 Fix copyright header merge issues 2017-09-22 15:31:27 -07:00
Kenneth Moreland
fb6be2819d Merge topic 'doxygen-fixes'
52060f52 Fix many warnings from doxygen

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Robert Maynard <robert.maynard@kitware.com>
Merge-request: !951
2017-09-22 14:05:24 -04:00
Robert Maynard
311618a15f Enable highest level of warnings(W4) under MSVC
This will make VTK-m warning level match the one used by VTK. This commit
also resolves the first round of warnings that W4 exposes.
2017-09-22 13:04:28 -04:00
Manish Mathai
495adacc38 Merge branch 'master' into concrete-canvas 2017-09-22 09:32:21 -07:00
Kenneth Moreland
52060f52c7 Fix many warnings from doxygen
There are still some warnings left:

* Some text in markdown files are incorrectly picked up as
  doxygen commands
* ArrayPortalTransform weirdly inherits from a specialized
  version of itself. It's technically correct C++ code, but
  gives doxygen fits.
2017-09-22 10:29:08 -06:00