Commit Graph

7020 Commits

Author SHA1 Message Date
Allison Vacanti
539f6e5ad7 Port benchmarking framework to Google Benchmark. 2020-01-08 10:58:51 -05:00
Allison Vacanti
39d981bcf9 Shorten names returned by testing's TypeName utility.
Eg:

```
vtkm::Float32                                       -> F32
vtkm::Int64                                         -> I64
vtkm::Vec< vtkm::Float32, 3 >                       -> Vec3f_32
vtkm::Vec< vtkm::Pair< vtkm::Int32, vtkm::Float64 > -> Vec<Pair<I32, F64>>
```

This makes the benchmark names a lot shorter to keep rows tabular
results on
a single line.
2020-01-08 10:58:51 -05:00
Kenneth Moreland
ba90057ef3 Merge topic 'shorter-fancy-array-handle-classnames'
60c57303d Fix name clash of template parameter and field
4a52a3f7a Shorter StorageTag for ArrayHandleZip
4a626b2e9 Shorter storage tag for ArrayHandleView
4c8c28d1f Shorter storage tag for ArrayHandleReverse
bfd21dfae Declare StorageTags with VTKM_ALWAYS_EXPORT
1ec716e5d Shorten storage tag for ArrayHandlePermutation
ca0ad1dc2 Shorten storage tag for ArrayHandleIndex
7bd5802dd Shorter storage tag for ArrayHandleGroupVecVariable
...

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Robert Maynard <robert.maynard@kitware.com>
Merge-request: !1937
2020-01-07 09:05:52 -05:00
Kenneth Moreland
60c57303da Fix name clash of template parameter and field 2020-01-07 07:01:35 -07:00
Kenneth Moreland
4a52a3f7a9 Shorter StorageTag for ArrayHandleZip 2020-01-07 07:01:34 -07:00
Kenneth Moreland
4a626b2e93 Shorter storage tag for ArrayHandleView 2020-01-07 07:01:13 -07:00
Kenneth Moreland
4c8c28d1f1 Shorter storage tag for ArrayHandleReverse
Also discovered that many C++ compilers have trouble giving warnings
for partial specialization of classes marked as deprecated. Fix
the problem by instead deprecating the items in the class.
2020-01-07 07:01:12 -07:00
Kenneth Moreland
bfd21dfae2 Declare StorageTags with VTKM_ALWAYS_EXPORT
This modifier is required on OSX for dynamic_cast to work properly
across libraries.
2020-01-07 07:01:11 -07:00
Kenneth Moreland
1ec716e5d2 Shorten storage tag for ArrayHandlePermutation 2020-01-07 07:01:10 -07:00
Kenneth Moreland
ca0ad1dc22 Shorten storage tag for ArrayHandleIndex 2020-01-07 07:01:10 -07:00
Kenneth Moreland
7bd5802dd8 Shorter storage tag for ArrayHandleGroupVecVariable 2020-01-07 07:01:09 -07:00
Kenneth Moreland
74df1b3857 Shorten storage tag for ArrayHandleGroupVec 2020-01-07 07:01:08 -07:00
Kenneth Moreland
1f5846b49e Shorten storage tag for ArrayHandleCounting 2020-01-07 07:01:07 -07:00
Kenneth Moreland
31898fd887 Shorten tag name for ArrayHandleConstant 2020-01-07 07:01:06 -07:00
Kenneth Moreland
b2f07511fb Shorten storage tags for ArrayHandleConcatenate 2020-01-07 07:01:05 -07:00
Kenneth Moreland
2688fc7d50 Shorten tag name for ArrayHandleCompositeVector 2020-01-07 07:01:05 -07:00
Kenneth Moreland
8516fa7ac6 Shorten tag name for ArrayHandleCartesianProduct 2020-01-07 07:01:04 -07:00
Kenneth Moreland
591d1ba264 Make ArrayHandleUniformPointCoordinates storage type shorter 2020-01-07 07:01:03 -07:00
Kenneth Moreland
944a3c4c14 Make ArrayHandleCast storage type shorter 2020-01-07 07:00:55 -07:00
Robert Maynard
c470df0015 Merge topic 'correct_gcc_9_warnings'
870bd1d17 Removed unnecessary increment and decrement from ZFPDecode
f9860b847 Correct warnings found by gcc-9 in vtkm::Particle

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1935
2020-01-01 13:49:18 -05:00
Robert Maynard
870bd1d170 Removed unnecessary increment and decrement from ZFPDecode
These extra operations caused the pointer to go out of bound and
then back in, but some compilers (gcc 9) would detect and warn
that the pointer had gone out of bounds.
2020-01-01 10:08:35 -05:00
Robert Maynard
f9860b847e Correct warnings found by gcc-9 in vtkm::Particle 2020-01-01 08:46:40 -05:00
Allison Vacanti
07283f74c1 Merge topic 'binary_search_algorithms'
44c4f0838 Add vtkm/Algorithms.h header with device-friendly binary search algorithms.
6d4e37e95 Fix brigand for CUDA 10.2.
84eedc885 Make BinaryOperators/Predicates more flexible.

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1920
2019-12-26 10:48:21 -05:00
Robert Maynard
349d1562df Merge topic 'gcc_48_iterator_fixes'
83d4d4e49 ArrayPortalToIterators now compiles with GCC-4.X

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1934
2019-12-23 10:47:03 -05:00
Robert Maynard
83d4d4e495 ArrayPortalToIterators now compiles with GCC-4.X
The draft C++11 spec that GCC-4.X implemented against had some
defects that made implementing void_t<...> tricky.
2019-12-23 09:47:54 -05:00
Allison Vacanti
90afd1eff5 Merge topic '428_decorator_improvements'
88bf38afe Add support for ArrayHandleDecorator resizing.
5834c2852 Add cont/exec markup to ArrayHandleDecorator docs.
5b1280600 Cleanup reference types when using declval.

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Kenneth Moreland <kmorel@sandia.gov>
Merge-request: !1933
2019-12-23 08:24:43 -05:00
Dave Pugmire
c9dae5a58f Merge topic 'fixParticleAdvectionStorageCommit'
c5f9b9b20 Fix to examples to use vtkm::Particle

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Robert Maynard <robert.maynard@kitware.com>
Merge-request: !1932
2019-12-21 21:09:29 -05:00
Allison Vacanti
88bf38afe2 Add support for ArrayHandleDecorator resizing.
Fixes #428.
2019-12-20 17:03:36 -05:00
Allison Vacanti
5834c28521 Add cont/exec markup to ArrayHandleDecorator docs. 2019-12-20 16:18:09 -05:00
Allison Vacanti
5b1280600d Cleanup reference types when using declval.
When expanding variadic parameter packs in ArrayHandleDecorator
implementations, make sure that the types used are appropriate.
Since std::declval is used to test whether or not a method with
specific arguments exists, it is important that the reference types
are correct to ensure that the detection works as expected.

Portals are always passed to implementation functions as rvalue
references, and array handles are always passed as lvalue refs.
2019-12-20 16:17:30 -05:00
Allison Vacanti
44c4f0838f Add vtkm/Algorithms.h header with device-friendly binary search algorithms. 2019-12-20 12:35:10 -05:00
dpugmire
c5f9b9b20f Fix to examples to use vtkm::Particle 2019-12-19 09:56:05 -05:00
Robert Maynard
b30827215c Merge topic 'dont_allow_negative_vtkm_pool_sizes'
53158aa2e Don't allow ninja job pool sizes to be negative

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1931
2019-12-19 09:06:54 -05:00
Robert Maynard
53158aa2ea Don't allow ninja job pool sizes to be negative
If the job pool size becomes negative, ninja treats
it as an absurdly large positive integer and
errors out.
2019-12-19 08:44:12 -05:00
Allison Vacanti
6d4e37e95c Fix brigand for CUDA 10.2.
There were issues with brigand::all's implementation with the new
cuda compiler.
2019-12-18 15:51:59 -05:00
Allison Vacanti
84eedc8855 Make BinaryOperators/Predicates more flexible.
Allow the argument types to differ. This allows ArrayPortalValueReferences to be used.
2019-12-18 15:51:59 -05:00
Allison Vacanti
4bf1eefd83 Merge topic 'iterator_maintainence'
813f5a422 Fixup custom portal iterator logic.
4e13f7706 Fix markup on ArrayPortalStreaming.
4805f08e1 Add host/device markup to IteratorFromArrayPortal.

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Kenneth Moreland <kmorel@sandia.gov>
Merge-request: !1929
2019-12-18 11:47:20 -05:00
Allison Vacanti
813f5a422f Fixup custom portal iterator logic.
The convenience functions `ArrayPortalToIteratorBegin()` and
`ArrayPortalToIteratorEnd()` wouldn't detect specializations of
`ArrayPortalToIterators<PortalType>` since the specializations aren't
visible when the `Begin`/`End` functions are declared.

Since the CUDA iterators rely on a specialization, the convenience
functions would not compile on CUDA.

Now, instead of specializing `ArrayPortalToIterators` to provide custom
iterators for a particular portal, the portal may advertise custom
iterators by defining `IteratorType`, `GetIteratorBegin()`, and
`GetIteratorEnd()`. `ArrayPortalToIterators` will detect such portals
and automatically switch to using the specialized portals.

This eliminates the need for the specializations to be visible to the
convenience functions and allows them to be usable on CUDA.
2019-12-17 15:39:51 -05:00
Allison Vacanti
4e13f7706c Fix markup on ArrayPortalStreaming. 2019-12-17 14:52:47 -05:00
Allison Vacanti
4805f08e1e Add host/device markup to IteratorFromArrayPortal. 2019-12-17 14:52:47 -05:00
Robert Maynard
8c96769e81 Merge topic 'aligned_union_check_handle_gcc_485'
b36846e4b UnitTestVariant uses VTKM_USING_GLIBCXX_4
cbf20ac3b Merge branch 'upstream-diy' into aligned_union_check_handle_gcc_485
ac1a23bee diy 2019-12-17 (bb86e1f7)
201e5c81d Add the gcc 4.8.5 release date to our VTKM_USING_GLIBCXX_4 check

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Matt Larsen <larsen30@llnl.gov>
Merge-request: !1930
2019-12-17 12:52:04 -05:00
Robert Maynard
b36846e4ba UnitTestVariant uses VTKM_USING_GLIBCXX_4 2019-12-17 12:21:38 -05:00
Robert Maynard
cbf20ac3bb Merge branch 'upstream-diy' into aligned_union_check_handle_gcc_485
* upstream-diy:
  diy 2019-12-17 (bb86e1f7)
2019-12-17 10:19:43 -05:00
Diy Upstream
ac1a23bee0 diy 2019-12-17 (bb86e1f7)
Code extracted from:

    https://gitlab.kitware.com/third-party/diy2.git

at commit bb86e1f7249f98fdd822fd073280e6337742be29 (for/vtk-m).
2019-12-17 10:19:43 -05:00
Robert Maynard
201e5c81d3 Add the gcc 4.8.5 release date to our VTKM_USING_GLIBCXX_4 check 2019-12-17 10:07:56 -05:00
Robert Maynard
07bb45e7a2 Merge topic 'timer_dont_init_devices_with_no_runtime_support'
64e3e8f34 VTK-m Timer now handles when devices fail at runtime

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1927
2019-12-17 09:13:56 -05:00
Sujin Philip
bdbf24d132 Merge topic 'peter-changes'
bf2290c9e Fixed an implicit conversion change warning.
18caed60e Fixed some of the compiler warning from CDash.
d7d7cdd5b Merges with upstream reformated version.
d6cbd8301 Merge with unformated previous state of the remote branch.
9a6dec8bc Refactored control side function call from a VTKM_EXEC function.
ca5f79056 Swapped x and y dimensions when reading in contour trees from text files.
da83076d7 Merge branch 'master' into peter-changes
01c49f139 Wrote some documentation for the CT Height Branch Decomposition code.
...

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1899
2019-12-16 13:52:57 -05:00
Robert Maynard
bc148cc556 Merge topic 'update_check_for_aligned_union'
2e48d98d9 Merge branch 'upstream-diy' into update_check_for_aligned_union
bbd5db31b diy 2019-12-16 (e365b66a)
269261b95 Handle compiling against 4.X versions of libstdc++

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Kenneth Moreland <kmorel@sandia.gov>
Merge-request: !1928
2019-12-16 11:14:15 -05:00
Diy Upstream
bbd5db31bf diy 2019-12-16 (e365b66a)
Code extracted from:

    https://gitlab.kitware.com/third-party/diy2.git

at commit e365b66ac9a80d73a49f1c43050bbade2752ff20 (for/vtk-m).
2019-12-16 09:49:30 -05:00
Robert Maynard
2e48d98d94 Merge branch 'upstream-diy' into update_check_for_aligned_union
* upstream-diy:
  diy 2019-12-16 (e365b66a)
2019-12-16 09:49:30 -05:00