Commit Graph

11160 Commits

Author SHA1 Message Date
Kenneth Moreland
f90245744d Merge topic 'cell-neighborhood-deprecation-warning' into release-2.0
33373f4b2 Fix deprecation warning in WorkletCellNeighborhood

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Li-Ta Lo <ollie@lanl.gov>
Merge-request: !3266
2024-10-03 16:07:00 -04:00
Kenneth Moreland
33373f4b29 Fix deprecation warning in WorkletCellNeighborhood
There was a use of a deprecated method buried in a support class of
`WorkletCellNeighborhood`. This fixes that deprecation and also adds a
missing test for `WorkletCellNeighborhood` to prevent such things in the
future.
2024-09-24 13:01:48 -04:00
Kenneth Moreland
407024515f Merge branch 'release-2.0' into release-2.0 2024-08-13 15:56:14 -04:00
Kenneth Moreland
efd64aeeef Merge topic 'thrust-is_arithmetic-error' into release-2.0
744a60ee5 Fix compile error using unsupported thrust::detail::is_arithmetic

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Vicente Bolea <vicente.bolea@kitware.com>
Merge-request: !3259
2024-08-13 15:56:13 -04:00
Kenneth Moreland
1652b9f87a Merge topic 'thrust-is_arithmetic-error' into release-2.0
744a60ee5 Fix compile error using unsupported thrust::detail::is_arithmetic

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Vicente Bolea <vicente.bolea@kitware.com>
Merge-request: !3259
2024-08-13 15:56:12 -04:00
Kenneth Moreland
744a60ee56 Fix compile error using unsupported thrust::detail::is_arithmetic
I believe the most recent version of Thrust are no longer defining this
class. Instead, it is using cuda::std::is_arithmetic.
2024-08-12 14:39:02 -04:00
Kenneth Moreland
6376680318 Merge topic 'bench-force-cuda' into release-2.0
6b9df5882 Force CUDA device in performance benchmarks

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Vicente Bolea <vicente.bolea@kitware.com>
Merge-request: !3224
2024-07-01 12:22:17 -04:00
Kenneth Moreland
6b9df58824 Force CUDA device in performance benchmarks 2024-06-28 15:12:22 -04:00
Kenneth Moreland
f610044d79 Merge topic 'split-contour-bench-2-1' into release-2.0
6f5f65487 Split the contour benchmark into structured/unstructured

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Vicente Bolea <vicente.bolea@kitware.com>
Merge-request: !3239
2024-06-28 11:10:45 -04:00
Kenneth Moreland
6f5f654878 Split the contour benchmark into structured/unstructured
We've been having problems with PerformanceTestBenchContour. In the last
few iteration, the runtime goes way up. We cannot find any reason for
this in the source code. There don't appear to be any particular
problems with memory or tables. The best we can figure is an issue with
the device hardware in the container.

The easy solution should be to break the benchmark into smaller peices
to avoid the problem.
2024-06-26 17:47:27 -04:00
Vicente Bolea
b6a0e4d79b Merge topic 'backport-3233' into release-2.0
638d18356 fix: perftest upload
1078d7dfb Revert "ci: fix perftest uploading"

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Kenneth Moreland <morelandkd@ornl.gov>
Merge-request: !3235
2024-06-26 17:46:45 -04:00
Kenneth Moreland
cac8baa055 Merge topic 'allow-backward-compatibility' into release-2.1
b2997bcbe Support backward compatibility in CMake package

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Vicente Bolea <vicente.bolea@kitware.com>
Merge-request: !3234
2024-06-24 09:05:48 -04:00
Vicente Adolfo Bolea Sanchez
638d183567 fix: perftest upload
(cherry picked from commit 76ddf7a5b2836cf4153e36f28dd2675f5ef8a735)
2024-06-21 16:50:11 -04:00
Vicente Adolfo Bolea Sanchez
1078d7dfb4 Revert "ci: fix perftest uploading"
This reverts commit 31b8b2faf90a79e069761b12deac8525cd4c0aa1.

(cherry picked from commit cdd3a55f61850c4438a0b0f890bc6e3f11c641fb)
2024-06-21 16:50:07 -04:00
Kenneth Moreland
b2997bcbe8 Support backward compatibility in CMake package
VTK-m development is in a mode where backward compatibility should be
maintained between minor versions of the software. (You may get deprecation
warnings, but things should still work.) To match this behavior, the
generated CMake package now supports finding versions with the same major
release and the same or newer minor release. For example, if an external
program does this

``` cmake
find_package(VTKm 2.1 REQUIRED)
```

then CMake will link to 2.1 (of course) as well as newer minor releases
(e.g., 2.2, 2.3, etc.). It will not, however, match older versions (e.g.,
2.0, 1.9), nor will it match any version after the next major release
(e.g., 3.0).
2024-06-21 15:28:42 -04:00
Kenneth Moreland
bcbaf964ae Merge topic 'obsolete-thrust-patch' into release-2.1
4a4466e7c Disable Thrust patch that is no longer needed in modern Thrust

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3230
2024-06-04 16:46:23 -04:00
Kenneth Moreland
4a4466e7c8 Disable Thrust patch that is no longer needed in modern Thrust
There is a Thrust patch that works around an issue in Thrust 1.9.4
(https://github.com/NVIDIA/thrust/issues/972). The underlying issue
should be fixed in recent versions. In recent versions of CUDA, the patch
breaks (https://gitlab.kitware.com/vtk/vtk-m/-/issues/818).

This change fixes the problem by disabling the patch where it is not
needed.
2024-06-04 11:01:43 -04:00
Vicente Bolea
6eae30063a Merge topic 'fix-uploading-vtkm-perf-test' into release-2.1
31b8b2faf ci: fix perftest uploading

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Kenneth Moreland <morelandkd@ornl.gov>
Merge-request: !3228
2024-06-03 14:18:01 -04:00
Vicente Adolfo Bolea Sanchez
31b8b2faf9 ci: fix perftest uploading 2024-05-28 14:05:00 -04:00
Kenneth Moreland
3fcd392285 Merge topic 'remove-ascent' into release-2.1
f6869aa54 ci,ascent: remove ascent build

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Vicente Bolea <vicente.bolea@kitware.com>
Merge-request: !3214
2024-05-20 21:42:42 -04:00
Kenneth Moreland
a87adb479f Merge topic 'safe-cuda-runtime-config' into release-2.1
f42f59d68 Fix crash when CUDA device is disabled

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Gunther Weber <ghweber@lbl.gov>
Merge-request: !3216
2024-05-17 08:20:38 -04:00
Kenneth Moreland
92b08967a2 Merge topic 'fix-old-cuda-atomics' into release-2.0
78e06d5dc Fix old cuda atomics

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3209
2024-05-15 15:42:51 -04:00
Kenneth Moreland
ff618152b3 Merge branch 'release-2.0' into release-2.1 2024-05-15 15:42:51 -04:00
Kenneth Moreland
af3ab951c4 Merge topic 'fix-old-cuda-atomics' into release-2.1
78e06d5dc Fix old cuda atomics

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3209
2024-05-15 15:42:51 -04:00
Kenneth Moreland
d26ac66dcb Merge topic 'intel-finites' into release-2.1
b93ee30ab Enable non-finite values with Intel compiler

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Sujin Philip <sujin.philip@kitware.com>
Merge-request: !3213
2024-05-07 13:08:00 -04:00
Kenneth Moreland
f42f59d685 Fix crash when CUDA device is disabled
There was an issue where if VTK-m was compiled with CUDA support but then
run on a computer where no CUDA device was available, an inappropriate
exception was thrown (instead of just disabling the device). The
initialization code should now properly check for the existance of a CUDA
device.
2024-05-03 17:03:20 -04:00
Kenneth Moreland
5634a09b95 Merge topic 'extract-geometry-permutation' into release-2.1
49518e505 Fix bug with ExtractGeometry filter

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3215
2024-05-03 13:06:31 -04:00
Kenneth Moreland
49518e5054 Fix bug with ExtractGeometry filter
The `ExtractGeometry` filter was outputing datasets containing
`CellSetPermutation` as the representation for the cells. Although this is
technically correct and a very fast implementation, it is essentially
useless. The problem is that any downstream processing will have to know
that the data has a `CellSetPermutation`. None do (because the permutation
can be on any other cell set type, which creates an explosion of possible
cell types).

Like was done with `Threshold` a while ago, this problem is fixed by deep
copying the result into a `CellSetExplicit`. This behavior is consistent
with VTK.
2024-05-03 09:22:56 -04:00
Vicente Adolfo Bolea Sanchez
f6869aa541 ci,ascent: remove ascent build 2024-05-03 08:39:20 -04:00
Kenneth Moreland
b93ee30ab5 Enable non-finite values with Intel compiler
The Intel compiler by default turns on an optimization that assumes that
all floating point values are finite. This breaks any ligitimate uses of
non-finite values including checking values with functions like `isnan`
and `isinf`. Turn off this feature for the intel compiler.
2024-04-25 09:38:15 -04:00
Kenneth Moreland
78e06d5dcd Fix old cuda atomics
There are some overloads for atomic adds of floating point numbers for
older versions of cuda that do not include them directly. These were
misnamed and thus not properly overloading the generic implementation.
This caused compile errors with older versions of cuda.
2024-04-02 13:45:15 -04:00
Kenneth Moreland
3c9249871a Merge topic 'contour-int-isovalue' into release-2.1
8fc341e71 Allow floating-point isovalues for contours of integer fields

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3169
2024-01-02 11:28:56 -05:00
Kenneth Moreland
361fe5fe32 Merge topic 'type-order' into release-2.1
23fbedf54 Order the VTK scalar types to favor used types
053237e90 Favor base types used by VTK-m when making new basic array

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Li-Ta Lo <ollie@lanl.gov>
Merge-request: !3171
2023-12-18 13:57:31 -05:00
Kenneth Moreland
23fbedf54d Order the VTK scalar types to favor used types
Reorder the `VTKScalarTypes` to put the repeated types at the bottom.
This will avoid using types like `long` that are essentially the same as
other types (e.g. `long long`) but will still be considered different.
This causes problems when checking against some VTK types (such as
`vtkIdType`).
2023-12-17 22:56:09 -07:00
Kenneth Moreland
053237e900 Favor base types used by VTK-m when making new basic array
When calling `NewInstanceBasic` on an `UnknownArrayHandle`, all C base
types will be tried. In some cases, multiple type will match the same
array. When this happens, favor types used by VTK-m (e.g. `long long`
over `long`).
2023-12-17 22:49:54 -07:00
Kenneth Moreland
8fc341e716 Allow floating-point isovalues for contours of integer fields
The flying edges version of the contouring filter converted the isovalues
provided into the same type as the field. This is fine for a floating point
field, but for an integer field the isovalue was truncated to the nearest
integer.

This is problematic because it is common to provide a fractional isovalue
(usually N + 0.5) for integer fields to avoid degenerate cases of the
contour intersecting vertices. It also means the behavior changes between
an integer type that is directly supported (like a `signed char`) or an
integer type that is not directly supported and converted to a floating
point field (like potentially a `char`).

This change updates the worklets to allow the isovalue to have a different
type than the field and to always use a floating point type for the
isovalue.
2023-12-15 16:26:17 -07:00
Ben Boeckel
fb96349004 Merge topic 'loguru-install-interface' into release-2.1
14a276401 loguru: do not declare an install interface

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Vicente Bolea <vicente.bolea@kitware.com>
Merge-request: !3163
2023-12-04 12:44:14 -05:00
Ben Boeckel
14a276401b loguru: do not declare an install interface
The headers are not installed, so there's nothing to refer to.
2023-12-04 11:34:19 -05:00
Vicente Bolea
763293a97e Merge topic 'fix-rocthrust-dep' into release-2.1
c9ec6ae6a kokkos: let link vtkm_cont to roc::rocthrust

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3160
2023-11-30 22:08:36 -05:00
Vicente Adolfo Bolea Sanchez
c9ec6ae6a6 kokkos: let link vtkm_cont to roc::rocthrust
Also reorder the declarion of the option VTKm_ENABLE_KOKKOS_THRUST
to be set before calling VTKmDeviceAdapters.
2023-11-30 18:18:03 -05:00
Vicente Adolfo Bolea Sanchez
a057f62e75 2.1.0 is our 16th official release of VTK-m.
The major changes to VTK-m from (previous release) can be found in:
  docs/changelog/2.1/release-notes.md
v2.1.0
2023-11-29 12:51:18 -05:00
Vicente Adolfo Bolea Sanchez
3563d97460 release: update version and License 2023-11-29 12:47:23 -05:00
Sujin Philip
709961393f Merge topic 'fix-threshold-all-comps' into release-2.1
d825d2450 Add a regression test for issue #804
e0c5500a2 Simplify threshold worklet
6e1de4fa8 Fix threshold for any-point-all-components case

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Kenneth Moreland <morelandkd@ornl.gov>
Merge-request: !3143
2023-10-30 12:32:59 -04:00
Sujin Philip
d825d2450e Add a regression test for issue #804 2023-10-26 10:09:03 -04:00
Sujin Philip
e0c5500a22 Simplify threshold worklet
Removes code that is no longer used.
2023-10-24 08:43:53 -04:00
Sujin Philip
6e1de4fa8f Fix threshold for any-point-all-components case
Threshold was producing wrong results with options `SetAllInRange(false)` and
`SetComponentToTestToAll` because the logic of running
`worklet::Threshold::RunIncremental` on individual components of the input
field and combining the results is incorrect for this case.

With this fix, component modes 'Any' and 'All' are handled by applying
the threshold criteria to each component of each value of the field,
combining the results, and running the threshold worklet on the result
array.
2023-10-23 11:23:30 -04:00
Vicente Adolfo Bolea Sanchez
adf146a96e 2.1.0-rc2 is our 16th official release of VTK-m.
The major changes to VTK-m from 2.0.0 can be found in:
  docs/changelog/2.1/release-notes.md
v2.1.0-rc2
2023-10-18 18:27:15 -04:00
Vicente Adolfo Bolea Sanchez
599d8ff384 release: 2.1.0-rc2 release notes 2023-10-18 18:24:12 -04:00
Vicente Adolfo Bolea Sanchez
05e850fa85 release: update version and License 2023-10-18 18:18:57 -04:00
Vicente Bolea
4571db1249 Merge topic 'backport-3128' into release-2.1
2aa04d7c2 ci: fix ctest_memcheck args
2d47ba22b cmake: Add makefile against install test
1b0ea8af8 cmake: update vtkm.pc and vtkm_config.mk file

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3134
2023-09-11 21:52:46 -04:00