Commit Graph

7561 Commits

Author SHA1 Message Date
Kenneth Moreland
da6fc5e378 Merge topic 'add/hyperstructstats'
3273f1c48 Update to AddPointField of dataset
eef30c232 Merge branch 'master' into add/hyperstructstats
1014dbf04 Fix BOV reader support in ContourTreeApp
e908826c1 Temporary disabled BOV reader in ContourTreeApp pending #517
8a27ff510 Merge branch 'master' into add/hyperstructstats
43e470de7 Fix g++ conversion warning in ContourTreeApp
a9a4736c3 Add BOV reader support and fix TBB settings in contour tree app
38da8dc43 Fix TBB check bug in ContourTreeApp
...

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Kenneth Moreland <kmorel@sandia.gov>
Merge-request: !2002
2020-05-28 13:25:08 -04:00
Robert Maynard
d7af19ea8f Merge topic 'deprecated_bov_reader_still_constructible'
0f867c05f vtkm::io::reader::BOVDataSet fix 'constructor delegates to itself'

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2107
2020-05-28 13:10:53 -04:00
Oliver Ruebel
3273f1c484 Update to AddPointField of dataset 2020-05-28 09:33:42 -07:00
Oliver Ruebel
eef30c2325 Merge branch 'master' into add/hyperstructstats 2020-05-28 09:32:30 -07:00
Oliver Ruebel
1014dbf046 Fix BOV reader support in ContourTreeApp 2020-05-28 06:40:31 -07:00
Nick Thompson
e22b3b3c59 Merge topic 'deprecate_datasetfieldadd'
f33578d6f Add newline to docs file.
8fe17e0a6 Remove DataSetFieldAdd from examples as well.
fe4f71ab9 Deprecate DataSetFieldAdd.

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2106
2020-05-28 08:35:40 -04:00
Robert Maynard
0f867c05f2 vtkm::io::reader::BOVDataSet fix 'constructor delegates to itself'
Fixes #517
2020-05-28 08:34:31 -04:00
Oliver Ruebel
e908826c13 Temporary disabled BOV reader in ContourTreeApp pending #517 2020-05-28 01:33:10 -07:00
Oliver Ruebel
8a27ff5109 Merge branch 'master' into add/hyperstructstats 2020-05-28 00:38:29 -07:00
Oliver Ruebel
43e470de72 Fix g++ conversion warning in ContourTreeApp 2020-05-28 00:30:21 -07:00
NAThompson
f33578d6f6 Add newline to docs file. 2020-05-27 16:29:20 -04:00
NAThompson
8fe17e0a65 Remove DataSetFieldAdd from examples as well. 2020-05-27 16:26:11 -04:00
NAThompson
fe4f71ab92 Deprecate DataSetFieldAdd. 2020-05-27 15:27:47 -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
Robert Maynard
cf9b74d7ff Merge topic 'improve_flying_edge_perf'
251bd82b8 Significantly improve FlyingEdges performance across all devices
fa9373801 Rework FlyingEdges::Pass1 to handle NUMA and CUDA requirements.
769a10b47 FlyingEdge Normal and Point generation occurs in Pass4
93d87e06f Optimize StructuredPointGradient for non boundary points.

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2080
2020-05-27 08:47:09 -04:00
Ben Boeckel
607a55ccab Merge topic 'update-gitlab-links'
0488aab20 docs: update gitlab links to include `/-/` component

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Kenneth Moreland <kmorel@sandia.gov>
Merge-request: !2104
2020-05-26 19:33:29 -04:00
Ben Boeckel
0488aab201 docs: update gitlab links to include /-/ component 2020-05-26 14:48:49 -04:00
Allison Vacanti
ac3fa0f252 Merge topic 'cuda_fixes'
6c98cbc6e Add missing Algorithm::Synchronize() in timer test.

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2094
2020-05-25 19:18:16 -04:00
Robert Maynard
251bd82b80 Significantly improve FlyingEdges performance across all devices
We now use SumYAxis when executing with CUDA for better memory patterns.
Instead of using the heavy Pass4/Pass4WithNormals, CUDA now uses a
2 pass approach with the second pass outputting the normals and
coordinates using with significantly less warp divergence
2020-05-22 15:53:49 -04:00
Robert Maynard
fa93738010 Rework FlyingEdges::Pass1 to handle NUMA and CUDA requirements.
First the Pass1 now uses WorkletVisitPointsWithCells as it is
faster since it doesn't compute some implicit boundary / neighborhood
info.

Second we reworked the logic around using `Fill` and a conditional
write of the edge case. The requirements of SMP when on a NUMA
machine is the complete opposite of what works great with CUDA.
2020-05-22 14:58:38 -04:00
Robert Maynard
769a10b47b FlyingEdge Normal and Point generation occurs in Pass4
By doing this in pass 4 we can remove numerous boundary condition
checks, improving the algorithm performance
2020-05-22 14:58:38 -04:00
Robert Maynard
93d87e06fd Optimize StructuredPointGradient for non boundary points.
We can remove lots of clamp calls by checking if we are on
a boundary and using a non-clamped API.
2020-05-22 14:58:38 -04:00
Kenneth Moreland
3074b6a149 Merge topic 'ci-vtk-types'
e9028f5fa Add dashboard using VTK types

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Robert Maynard <robert.maynard@kitware.com>
Merge-request: !2103
2020-05-21 15:41:57 -04:00
Kenneth Moreland
1565d74163 Merge topic 'precompiled-field-map-permutation'
5498ecd35 Properly handle global (whole mesh) fields in data set filters
f8fd0ce31 Silence warning about cast losing precision
3c4e8a2ea Convert filters to use precompiled field map functions where applicable
98f20ec26 Use a worklet to permute fields rather than ArrayHandlePermutation
4a5dbb65d Convert CleanGrid (and dependents) to use precompiled field map
2383a7fff Add MapFieldPermutation function
b1f288aae Add non-templated base class to Keys class.
934732bb6 Add MapFieldPermutation function

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Robert Maynard <robert.maynard@kitware.com>
Merge-request: !1954
2020-05-21 15:10:24 -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
Kenneth Moreland
5498ecd35b Properly handle global (whole mesh) fields in data set filters
Generally, fields that have a WHOLE_MESH association might be valid even
if the structure of the mesh changes. Thus, it makes sense for filters
to pass this data pretty much all the time.

Also cleaned up some code and comments to make the relationship between
`MapFieldOntoOutput` and `DoMapField` more clear.
2020-05-21 08:34:34 -06:00
Kenneth Moreland
f8fd0ce316 Silence warning about cast losing precision
When using math operators on small integers, the numbers are promoted to
32-bit ints. If that is set back to the same type, then some compilers
give a warning. This is annoying and pointless when dealing with
templated types, but we have to deal with it.
2020-05-21 08:34:33 -06:00
Kenneth Moreland
3c4e8a2ea5 Convert filters to use precompiled field map functions where applicable 2020-05-21 08:34:32 -06:00
Kenneth Moreland
98f20ec269 Use a worklet to permute fields rather than ArrayHandlePermutation
According to talks with Rob Maynard, using a worklet should be
(counterintuitively) faster than using ArrayHandlePermutation with
ArrayCopy.

This change also gives an opportunity to handle invalid indices, which
may be intentionally set when no mapping is available for that value.
For this case, MapFieldPermutation now takes an invalidValue argument to
set such values.
2020-05-21 08:34:30 -06:00
Kenneth Moreland
4a5dbb65db Convert CleanGrid (and dependents) to use precompiled field map 2020-05-21 08:34:29 -06:00
Kenneth Moreland
2383a7fffd Add MapFieldPermutation function
This function is compiled into the vtkm_filter library, so all filters
can implement this type of mapping without providing their own version
of compiling it.

Because we only compile it once, we provide more types to convert.
Hopefully the total compile time balances out.
2020-05-21 08:34:28 -06:00
Kenneth Moreland
b1f288aaea Add non-templated base class to Keys class.
The only reason Keys has a template is so that it can hold a UniqueKeys
array and provide the key for each group. If that is not needed and you
want to implement a library function that takes a keys object, you can
now grab the Keys superclass KeysBase. KeysBase is not templated, so you
can pass it to a standard method in a library.
2020-05-21 08:34:07 -06:00
Kenneth Moreland
934732bb64 Add MapFieldPermutation function
This function is compiled into the vtkm_filter library, so all filters
can implement this type of mapping without providing their own version
of compiling it.

Because we only compile it once, we provide more types to convert.
Hopefully the total compile time balances out.
2020-05-21 08:33:48 -06:00
Robert Maynard
0d2678368b Merge topic 'image_median_inline_constructor'
9dd7b8b48 filter::ImageMedian can be used in multiple compilation units

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2102
2020-05-21 09:15:25 -04:00
Kenneth Moreland
d4ff67a226 Merge topic 'deprecate-execute-with-policy'
544a078cd Remove use of deprecated policies in examples
06f5119c2 Fix deprecation warning
f29a4712b Correct field types for ComputeMoments filter
a20ec03d0 Disable proxies in filter benchmark
72cd0107e Deprecate Execute with policy

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Robert Maynard <robert.maynard@kitware.com>
Merge-request: !2093
2020-05-20 18:28:37 -04:00
Matt Larsen
1cc38e5e8d Merge topic 'lagrangian_bugfix'
10dc96cb8 Remove extra count variable
536249f63 Merge remote-tracking branch 'upstream/master' into lagrangian_bugfix
519844782 Fix order of initialized seeds to match output format

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Matt Larsen <larsen30@llnl.gov>
Merge-request: !2084
2020-05-20 16:08:09 -04:00
Kenneth Moreland
544a078cdb Remove use of deprecated policies in examples
This means that the filters in the examples will no longer properly
support the policies handed to them, but that is the direction we are
headed as the policies are now deprecated.
2020-05-20 12:58:24 -06:00
Sudhanshu Sane
10dc96cb87 Remove extra count variable 2020-05-20 10:30:16 -07:00
Sudhanshu Sane
536249f634 Merge remote-tracking branch 'upstream/master' into lagrangian_bugfix 2020-05-20 10:15:47 -07:00
Kenneth Moreland
bc5ecf262c Merge topic 'io-library'
05fcda6c7 Compile IO library with device compilers
dce576bd1 Add BOVDataSetReader implementation to vtkm_io
8657a9b3c Update VTKDataSetWriter to compile into vtkm_io
086439e71 Update variants of VTKDataSetReaders to compile into vtkm_io
0612be9c5 Move VTKDataSetReaderBase code to vtkm_io

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Sujin Philip <sujin.philip@kitware.com>
Merge-request: !2100
2020-05-20 12:21:37 -04:00
Robert Maynard
9dd7b8b487 filter::ImageMedian can be used in multiple compilation units
The header was previously not marked inline and therefore
you could only have a single instance of the filter compiled
in a dynamic library / executable
2020-05-20 08:44:45 -04:00
Kenneth Moreland
05fcda6c76 Compile IO library with device compilers
Because the IO classes use ArrayHandle, they have to be compiled with
device compilers (even though they do not directly produce any device
code). This is a dumb requirement, but it is a requirement nonetheless.
2020-05-19 15:04:08 -06:00
Kenneth Moreland
dce576bd11 Add BOVDataSetReader implementation to vtkm_io 2020-05-19 14:33:45 -06:00
Kenneth Moreland
8657a9b3c8 Update VTKDataSetWriter to compile into vtkm_io 2020-05-19 14:32:48 -06:00
Kenneth Moreland
086439e71e Update variants of VTKDataSetReaders to compile into vtkm_io 2020-05-19 13:04:12 -06:00
Kenneth Moreland
0612be9c5b Move VTKDataSetReaderBase code to vtkm_io
Most of this code is not templated methods. Rather, it implements over
several types to call templated functions, which creates quite a bit of
code. Rather than have all code using a reader recompile the code, just
compile it once and put it in a library.
2020-05-19 12:27:01 -06:00
Kenneth Moreland
11a341ced5 Merge topic 'update-changelogs'
569adda00 Update changelogs

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2099
2020-05-19 12:45:46 -04:00
Dave Pugmire
177ef28d81 Merge topic 'fixPrintMultiBackEndExample'
72f1846bf missed a comment change.
bda8a1580 change comments as well.
2858186dd Print statement was wrong for openMP

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2095
2020-05-19 12:44:39 -04:00
Kenneth Moreland
569adda002 Update changelogs
There have been several new features that were merged without
appropriate documentation in the changelogs. This adds some
new changelogs for some of these new features.
2020-05-19 10:37:36 -06:00