Commit Graph

7536 Commits

Author SHA1 Message Date
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
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
dpugmire
72f1846bf1 missed a comment change. 2020-05-19 09:41:31 -04:00
Nick Thompson
c1b3d3715f Merge topic 'verbose_log'
5d20506a5 Remove overly verbose log pring.

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Robert Maynard <robert.maynard@kitware.com>
Merge-request: !2097
2020-05-19 09:38:37 -04:00
Robert Maynard
4279701669 Merge topic 'sccache_nvcc_v4'
af5d363f4 Update sccache to latest master which now has full nvcc support

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Allison Vacanti <alliepiper16@gmail.com>
Merge-request: !2096
2020-05-19 08:21:50 -04:00
Nick Thompson
5d20506a5d Remove overly verbose log pring. 2020-05-18 22:25:29 -04:00
Kenneth Moreland
06f5119c29 Fix deprecation warning
This came up when updating VTK-m in VTK.
2020-05-18 18:41:47 -06:00
Kenneth Moreland
f29a4712b0 Correct field types for ComputeMoments filter
This filter is designed to work on vectors of many sizes. It was written
when selecting field types was the responsibility of the policy. It is
now the responsibility of the filter to specify possible field types.

This change is required to compile the MomentInvariants module for VTK
without policies.
2020-05-18 18:39:22 -06:00
Robert Maynard
af5d363f42 Update sccache to latest master which now has full nvcc support 2020-05-18 17:06:25 -04:00
dpugmire
bda8a1580b change comments as well. 2020-05-18 16:44:12 -04:00
dpugmire
2858186ddd Print statement was wrong for openMP 2020-05-18 16:42:37 -04:00
Kenneth Moreland
a20ec03d0b Disable proxies in filter benchmark
This is going to increase the compile time for the filter benchmark, but
the overall goal is to move this code into libraries. When that happens,
the benchmark will not have to compile any of the filter code and should
ultimately go much faster.
2020-05-18 13:03:14 -06:00
Kenneth Moreland
72cd0107ee Deprecate Execute with policy
The version of `Filter::Execute` that takes a policy as an argument is now
deprecated. Filters are now able to specify their own fields and types,
which is often why you want to customize the policy for an execution. The
other reason is that you are compiling VTK-m into some other source that
uses a particular types of storage. However, there is now a mechanism in
the CMake configuration to allow you to provide a header that customizes
the "default" types used in filters. This is a much more convenient way to
compile filters for specific types.

One thing that filters were not able to do was to customize what cell sets
they allowed using. This allows filters to self-select what types of cell
sets they support (beyond simply just structured or unstructured). To
support this, the lists `SupportedCellSets`, `SupportedStructuredCellSets`,
and `SupportedUnstructuredCellSets` have been added to `Filter`. When you
apply a policy to a cell set, you now have to also provide the filter.
2020-05-18 12:38:41 -06:00
Allison Vacanti
6c98cbc6e4 Add missing Algorithm::Synchronize() in timer test. 2020-05-17 12:53:14 -04:00
Kenneth Moreland
963c871b76 Merge topic 'conversion-warnings'
f9d9b536d Fix conversion warnings in benchmarks and examples

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Robert Maynard <robert.maynard@kitware.com>
Acked-by: Nick Thompson <nathompson7@protonmail.com>
Merge-request: !2092
2020-05-15 16:00:23 -04:00
Nick
e5097aa314 Merge topic 'deprecate_read_portal_get'
9aa350ee3 Fix bad whitespace.
9991179e6 Do not use auto return type; it's not supported until C++14.
f1ee3f51f Merge branch 'master' into deprecate_read_portal_get
947104148 Merge branch 'master' into deprecate_read_portal_get
d961c185a Deprecate ReadPortal().Get pattern.

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Allison Vacanti <alliepiper16@gmail.com>
Merge-request: !2085
2020-05-14 20:42:20 -04:00
Kenneth Moreland
f9d9b536d4 Fix conversion warnings in benchmarks and examples
These are caused when using 32-bit Id's. Although there are some
benchmarks that test for this, some code in benchmarking and examples is
not covered by them.
2020-05-14 17:16:19 -06:00
Nick
9aa350ee3d Fix bad whitespace. 2020-05-14 18:13:03 -04:00
Nick
9991179e6d Do not use auto return type; it's not supported until C++14. 2020-05-14 18:10:32 -04:00
Nick
f1ee3f51f1 Merge branch 'master' into deprecate_read_portal_get 2020-05-14 16:26:49 -04:00
Nick
f036ebd48f Merge topic 'fix_non_virtual_destructor'
a55596b38 Reorder member functions.
6fba7347a Mark pixel destructors as virtual to fix build error.

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Nickolas Davis <nadavi@sandia.gov>
Merge-request: !2091
2020-05-14 16:26:12 -04:00
Nick
a55596b38c Reorder member functions. 2020-05-14 16:10:33 -04:00
Nick
6fba7347a9 Mark pixel destructors as virtual to fix build error. 2020-05-14 14:29:34 -04:00