Commit Graph

4170 Commits

Author SHA1 Message Date
Robert Maynard
10895f0ea5 RuntimeDeviceTracker DeepyCopy is better optimized.
The DeepCopy method is used when a ScopedGlobalRuntimeDeviceTracker
is constructed. This in turn causes the rebuilding of the device
names and states which isn't a free operation. Now we copy the already
computed information.

This was noticeable when using ArrayHandleTransform since it uses
ScopedGlobalRuntimeDeviceTracker when construction host side
portals.
2019-01-03 15:03:35 -05:00
Robert Maynard
f955103cad Merge topic 'add_more_types_to_move_constructor_test'
4e9b4c37e Verify more core vtkm types have proper move semantics.

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Allison Vacanti <allison.vacanti@kitware.com>
Merge-request: !1499
2019-01-02 16:50:31 -05:00
Robert Maynard
4e9b4c37e1 Verify more core vtkm types have proper move semantics. 2019-01-02 12:46:30 -05:00
Robert Maynard
0ee5753724 VTK-m now logs whenever at runtime a device is enabled/disabled.
Previously we only logged when a user requested a device on the
command line, but that doesn't capture when code forces a device
2019-01-02 09:34:50 -05:00
Robert Maynard
169f55161f Merge topic 'run_filter_tests_with_per_device'
fda911377 vtkm::filter now run each test with an explicit device adapter set

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1497
2019-01-01 16:05:26 -05:00
Robert Maynard
fda9113779 vtkm::filter now run each test with an explicit device adapter set
This allows the filters to be tested with each device
2019-01-01 14:13:08 -05:00
Robert Maynard
ee6917a5c5 Merge topic 'array_handle_virtual_is_type_no_static_asserts'
61b1b5157 Make IsType and Cast not error at compile time when given bad types

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1496
2019-01-01 08:58:06 -05:00
Robert Maynard
61b1b51577 Make IsType and Cast not error at compile time when given bad types
Previously these two functions would give compile errors when asked to
compare against an Array with a different value type. This makes it easier
to write generic code that compares virtual handles.
2018-12-31 13:03:42 -05:00
ayenpure
7ee51f65de Adding clipping test for volumetric data
- Added to detect cases like bug #329
  https://gitlab.kitware.com/vtk/vtk-m/issues/329
- This is just to execute the clipping filter with a larger
  dataset, and to ensure it can pass without failures and crashes.
2018-12-30 12:36:01 -08:00
ayenpure
f0a342e4d1 Adding fix for Clip failure
- Failure reported by Matt Larsen
  Bug : https://gitlab.kitware.com/vtk/vtk-m/issues/329
2018-12-29 13:50:43 -08:00
Robert Maynard
718caaaeac CudaAllocator allows managed memory to be explicitly disabled 2018-12-28 11:30:29 -05:00
Robert Maynard
3445047f9e Refactor vtkm::cont::ArrayHandleAny into vtkm::cont::ArrayHandleVirtual
ArrayHandleVirtual can automatically be constructed from any ArrayHandle.
In the cases where the input ArrayHandle doesn't derived from ArrayHandleVirtual,
it will automatically construct StorageAny to hold the array.
2018-12-27 15:42:03 -05:00
Robert Maynard
bef70820c9 Update new worklets to work with ArrayHandleVariant 2018-12-27 14:35:56 -05:00
Robert Maynard
1f2abbc9c4 vtkm::cont::IsType and vtkm::cont::Cast support VariantArrayHandle 2018-12-27 14:35:56 -05:00
Robert Maynard
acf825b279 Correct IsType and Cast on ArrayHandleVirtual to work on OSX. 2018-12-27 14:35:56 -05:00
Robert Maynard
7b9fa975f2 Rename: IsVirtualType to IsValueType. 2018-12-27 14:35:56 -05:00
Robert Maynard
9c496e5da0 Correct warning found in ArrayHandleVirtualCoordinates with cuda 8.0 2018-12-27 14:35:56 -05:00
Robert Maynard
78e9cf0929 ArrayRangeCompute now supports ArrayHandleVirtual<vec3f> 2018-12-27 14:35:56 -05:00
Robert Maynard
7eb1e31b11 Remove vtkm::cont::DynamicArrayHandle. 2018-12-27 14:35:56 -05:00
Robert Maynard
0a40c620ac Rename ArrayHandleVariant to VariantArrayHandle. 2018-12-27 14:35:56 -05:00
Robert Maynard
f63be1abe6 Update vtkm/filter to work with ArrayHandleVariant 2018-12-27 14:35:56 -05:00
Robert Maynard
eed321aad0 Update vtkm/worklet to work with ArrayHandleVariant 2018-12-27 14:35:56 -05:00
Robert Maynard
09383ceb52 Update vtkm/rendering to work with vtkm::cont::ArrayHandleVariant 2018-12-27 14:35:56 -05:00
Robert Maynard
39929d5a7c Update vtkm/io to work with vtkm::cont::ArrayHandleVariant 2018-12-27 14:35:56 -05:00
Robert Maynard
0c72555ee1 Update vtkm/cont/testing to work with ArrayHandleVariant 2018-12-27 14:35:56 -05:00
Robert Maynard
8deb661409 Add serialization support to ArrayHandle Virtual, Any, and Variant. 2018-12-27 14:35:56 -05:00
Robert Maynard
28757bda4b ArrayHandleVirtual supports comparison operators 2018-12-27 14:35:56 -05:00
Robert Maynard
4c23f50227 ArrayHandleVirtual can be used as AtomicArrayInOut tag type 2018-12-27 14:35:56 -05:00
Robert Maynard
b57dc5d289 Update ArrayHandleVirtual to handle PrepareForInPlace. 2018-12-27 14:35:56 -05:00
Robert Maynard
3c6246140d ArrayRangeCompute now states it has uniform point coord optimization 2018-12-27 14:35:56 -05:00
Robert Maynard
ef83adf3bd Field, CoordinateSystem, VirtualCoordinates all use the new virtual code 2018-12-27 14:35:56 -05:00
Robert Maynard
3d67a00822 Add ArrayHandleVariant to vtkm::cont which will replace DynamicArrayhandle 2018-12-27 14:35:56 -05:00
Robert Maynard
90223b390c Add ArrayHandleAny to vtkm::cont 2018-12-27 14:35:56 -05:00
Robert Maynard
6e1cbaa16a Add StorageVirtual and ArrayHandleVirtual to vtkm::cont 2018-12-27 14:35:56 -05:00
Robert Maynard
20d02fdec2 Support pointers in vtkm::exec::Fetch classes 2018-12-27 13:19:40 -05:00
Robert Maynard
65b019d443 raytracing intersector kernels use FieldOut where appropriate.
Previously a couple used FieldInOut when they only needed FieldOut,
this can help performance if the input is not already on the device
2018-12-27 13:19:40 -05:00
Robert Maynard
7ba3c66727 Make sure rendering builds Actor with cuda as it calls worklets 2018-12-27 13:19:40 -05:00
Robert Maynard
36100311d0 BoundingVolumeHierarchy now uses Invoker to simplify worklet dispatching 2018-12-27 13:19:40 -05:00
Robert Maynard
e31c73ef69 vtkm::cont Locators include all headers they need. 2018-12-27 13:19:40 -05:00
Robert Maynard
181d5f9f30 ArrayHandleZip now gracefully handles writes to implicit handles. 2018-12-27 13:19:40 -05:00
Sujin Philip
7c27bedc08 Enable Separable Compilation for CUDA 2018-12-27 13:19:40 -05:00
Robert Maynard
ecd6e3684c Merge topic 'correct_issues_found_in_examples'
6e22bb5dc Cosmotools exmaples builds again with the change of vtkm::cont::Initialize
ab3d89d4e Simplify the example/demo CMakeLists.txt
028e954b4 Game Of Life example now supports -d/--device command line argument
e2c61e010 Update the HelloWorld example to use VTK-m runtime device adapter logic
34165c8e7 Correct crashes in the GameOfLife example
cdbee58c1 Remove the dynamic_dispatcher example as is a compiler benchmark
7c2c1d5fb Interop now works when device adapter isn't known.

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1491
2018-12-27 13:10:39 -05:00
Robert Maynard
7c2c1d5fbc Interop now works when device adapter isn't known.
Additionally the Interop calls now pass the ArrayHandle by const ref.
2018-12-27 11:44:19 -05:00
Robert Maynard
fcced13475 Correct maybe-uninitialized warnings found from examples 2018-12-27 10:10:36 -05:00
Robert Maynard
161ffdff3a Move zfp helper functions to zfp namespace and remove debug code 2018-12-21 16:36:09 -05:00
Robert Maynard
bb74e17738 zfp worklets now don't dump data to file when executing 2018-12-21 16:36:09 -05:00
Robert Maynard
f5ce79e42d zfp worklets now can handle array handles with non default storage 2018-12-21 16:36:09 -05:00
Allison Vacanti
35b739083a Merge topic 'return_args_exec_sig'
58509f647 Store return value after parameters.

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Kenneth Moreland <kmorel@sandia.gov>
Merge-request: !1487
2018-12-21 13:44:48 -05:00
Robert Maynard
a507e784fe Merge topic 'fix_logic_error_in_enable_cuda_managed_memory'
90bb23de6 CudaAllocator::Initialize correctly uses managed memory when possible

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Haocheng LIU <haocheng.liu@kitware.com>
Merge-request: !1486
2018-12-21 13:23:56 -05:00
Allison Vacanti
58509f647e Store return value after parameters.
This allows execution signatures like

using ExecutionSignature = _1(_1, ...)

to work as expected.
2018-12-21 11:37:45 -05:00