Commit Graph

4331 Commits

Author SHA1 Message Date
Robert Maynard
e630ac5aa4 Merge branch 'master' into vtk-m-cmake_refactor 2018-02-23 14:52:00 -05:00
Robert Maynard
01c9d6e2a6 Merge topic 'vtkm_prefers_using_over_typedef'
182f4707 vtkm prefers 'using' over typedef.

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1092
2018-02-23 13:15:02 -05:00
Robert Maynard
182f4707e7 vtkm prefers 'using' over typedef. 2018-02-23 10:47:20 -05:00
Robert Maynard
c47ccee11e Merge topic 'reduce_arrayrange_library_size'
ae23f180 Refactor ArrayRange to do as little as possible inside TryExecute
12b5aac0 Leverage try_executes perfect forwarding in ArrayRange

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Kenneth Moreland <kmorel@sandia.gov>
Merge-request: !1085
2018-02-23 08:11:48 -05:00
Utkarsh Ayachit
752d46e431 Merge topic 'update_diy'
61e28ae1 Merge branch 'upstream-diy' into update_diy
e734bab5 diy 2018-02-15 (3c908c14)

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Robert Maynard <robert.maynard@kitware.com>
Merge-request: !1089
2018-02-21 20:37:40 -05:00
Robert Maynard
043afd326a Merge topic 'refactor_arrayhandle_to_reduce_lib_size'
9bf14b78 Correct warnings inside worklet::Clip when making array handles
1b6d67e0 Always defer to the serial allocator when allocating basic storage
bf2b4169 Refactor vtk-m ArrayHandle to use mutable over const_cast
705528bf vtk-m ArrayHandle + basic storage has an optimized PrepareForDevice method
22f9ae3d vtk-m ArrayHandle + basic holds control data by StorageBasicBase
b1d0060d Make Storage and ArrayHandle export for the same value types.
d0a68d32 Refactor vtk-m storage basic to generate less code

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1084
2018-02-21 16:56:53 -05:00
Utkarsh Ayachit
61e28ae1cb Merge branch 'upstream-diy' into update_diy
* upstream-diy:
  diy 2018-02-15 (3c908c14)
2018-02-21 13:16:12 -05:00
Diy Upstream
e734bab55a diy 2018-02-15 (3c908c14)
Code extracted from:

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

at commit 3c908c14da757bff224b91d2b0ebd7db0af1f2ab (for/vtk-m).
2018-02-21 13:16:12 -05:00
Robert Maynard
85058b3e25 Merge topic 'cpu_parallel_radix_sort_thread_fix'
1dabda42 Bug fix for max threads in radix sort

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Sujin Philip <sujin.philip@kitware.com>
Merge-request: !1087
2018-02-21 13:04:52 -05:00
Kenneth Moreland
7a8e469d23 Merge topic 'union-empty-ranges'
e7e39e9e Fix including empty range

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Matt Larsen <mlarsen@cs.uoregon.edu>
Merge-request: !1086
2018-02-20 12:27:35 -05:00
Thomas Otahal
1dabda4216 Bug fix for max threads in radix sort
Use PlainType to get max threads instead of
ValueType for key-value radix sorts.
2018-02-20 08:28:29 -07:00
Kenneth Moreland
e7e39e9ed6 Fix including empty range
There was a bug where if you included an empty range into another range,
the range suddenly became infinite. This is because empty ranges have
the max at -infinity and the min at infinity. If you just include the
endpoints independently (which is what include does), then the min gets
-infinity and the max gets infinity. This gets a check to make sure that
empty ranges are ignored.
2018-02-19 10:13:07 -07:00
Robert Maynard
9bf14b7894 Correct warnings inside worklet::Clip when making array handles 2018-02-16 14:18:00 -05:00
Robert Maynard
1b6d67e022 Always defer to the serial allocator when allocating basic storage 2018-02-16 10:00:28 -05:00
Robert Maynard
bf2b41699a Refactor vtk-m ArrayHandle to use mutable over const_cast 2018-02-16 10:00:28 -05:00
Robert Maynard
705528bf17 vtk-m ArrayHandle + basic storage has an optimized PrepareForDevice method
By hard coding the PrepareForDevice to know about all the different VTK-m
devices, we can have a single base class do the execution allocation, and not
have that logic repeated in each child class.
2018-02-16 10:00:28 -05:00
Robert Maynard
22f9ae3d24 vtk-m ArrayHandle + basic holds control data by StorageBasicBase
By making the array handle hold the control side data by the parent storage
class we remove significant code generation.
2018-02-16 09:59:20 -05:00
Robert Maynard
b1d0060dff Make Storage and ArrayHandle export for the same value types.
Previously Storage would not export for all the same types as Array Handle.
2018-02-16 09:59:20 -05:00
Robert Maynard
d0a68d3266 Refactor vtk-m storage basic to generate less code
By moving all common operations to a parent class we can
significantly reduce the vtk-m library size.
2018-02-16 09:59:19 -05:00
Robert Maynard
39c4aacce2 Merge topic 'cpu_parallel_radix_sort'
30f6e53c Fixed compiler warning for char type with kxsort
8f75df65 Fix Visual Studio compiler warnings.
d7a98057 Move kxsort.h inside VTKM_THIRDPARTY_PRE_INCLUDE
f53d0789 Removed debug output statements.
7c0b09de Removed Gnu specific __attribute__ macro for unused variables
78bf34dd Merge branch 'cpu_parallel_radix_sort' of https://gitlab.kitware.com/Otahal/vtk-m into cpu_parallel_radix_sort
77389765 Added missing files from Rob's patch.
84de5192 Applied patch from Rob Maynard
...

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Robert Maynard <robert.maynard@kitware.com>
Merge-request: !1053
2018-02-15 12:59:44 -05:00
Robert Maynard
ae23f18059 Refactor ArrayRange to do as little as possible inside TryExecute 2018-02-15 11:42:48 -05:00
Thomas Otahal
30f6e53c27 Fixed compiler warning for char type with kxsort
Added check for long double arrays, use TBB parallel_sort

Added radix sort instantiations for char16_t, char32_t, and
wchar_t. std::is_arithmetic<T> will evaluate to true for these
types.

Removed VTKM_CONT_EXPORT in DeviceAdapterAlgorithmTBB.h to try
and fix dll related error on Windows.
2018-02-14 09:44:11 -07:00
Thomas Otahal
8f75df65c5 Fix Visual Studio compiler warnings. 2018-02-14 07:44:37 -07:00
Robert Maynard
12b5aac015 Leverage try_executes perfect forwarding in ArrayRange 2018-02-14 09:25:02 -05:00
Thomas Otahal
d7a98057b1 Move kxsort.h inside VTKM_THIRDPARTY_PRE_INCLUDE 2018-02-13 15:27:59 -07:00
Thomas Otahal
f53d0789b0 Removed debug output statements. 2018-02-13 12:32:53 -07:00
Thomas Otahal
7c0b09deb4 Removed Gnu specific __attribute__ macro for unused variables
Replaced with (void)parameter
2018-02-13 11:36:47 -07:00
Matt Larsen
b86e1c8cd8 Merge topic 'follow-up-typo'
9b430618 Follow-up typo

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1083
2018-02-13 11:35:57 -05:00
Thomas Otahal
78bf34ddf1 Merge branch 'cpu_parallel_radix_sort' of https://gitlab.kitware.com/Otahal/vtk-m into cpu_parallel_radix_sort
Conflicts:
	vtkm/cont/tbb/internal/DeviceAdapterAlgorithmTBB.h
	vtkm/cont/tbb/internal/ParallelSortTBB.cxx
	vtkm/cont/tbb/internal/ParallelSortTBB.hxx
2018-02-13 09:31:24 -07:00
Thomas Otahal
773897655c Added missing files from Rob's patch. 2018-02-13 09:23:10 -07:00
Thomas Otahal
84de519250 Applied patch from Rob Maynard
This makes finding the implementation and explicit instantiations easier.
It also removes most macro usage from RadixSort.
2018-02-13 09:16:45 -07:00
luz.paz
9b4306187c Follow-up typo 2018-02-12 20:48:57 -05:00
Matt Larsen
dc52d742c2 Merge topic 'more-misc-typos'
366377ad fixed revision
1e69b1a0 Follow-up misc. typos

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1080
2018-02-12 17:35:11 -05:00
luz.paz
366377ad64 fixed revision 2018-02-09 15:00:44 -05:00
luz.paz
1e69b1a053 Follow-up misc. typos
Found via `codespell -q 3`
2018-02-09 15:00:44 -05:00
Kenneth Moreland
6a908cc9da Merge topic 'fix-special-jacobian-cases'
43da67f7 Fix Jacobian cases for wedge and pyramid

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Sujin Philip <sujin.philip@kitware.com>
Merge-request: !1077
2018-02-08 11:56:23 -05:00
Sujin Philip
fd4a37a062 Merge topic 'update-probe'
f7f08d3d Update probe filter

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Robert Maynard <robert.maynard@kitware.com>
Merge-request: !1081
2018-02-08 09:58:48 -05:00
Thomas Otahal
9cf12c48ce Merge branch 'master' into cpu_parallel_radix_sort 2018-02-07 10:23:54 -07:00
Robert Maynard
847039204c Merge topic 'arrayhandle_copy_fix'
af7a4a78 Stop GetStorage copy.

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Robert Maynard <robert.maynard@kitware.com>
Merge-request: !1082
2018-02-06 17:00:27 -05:00
Mark Kim
af7a4a7805 Stop GetStorage copy. 2018-02-06 16:13:41 -05:00
Sujin Philip
50ff650f1c Merge topic 'improve-ParametricCoordinates'
fdfd62d4 Improve WorldCoordinatesToParametricCoordinates

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Robert Maynard <robert.maynard@kitware.com>
Merge-request: !1073
2018-02-06 14:27:29 -05:00
Sujin Philip
f7f08d3db2 Update probe filter
In the code path for probing on to uniform points, the code to compute the points
inside a cell has been made more accurate.
2018-02-06 14:21:01 -05:00
Sujin Philip
fdfd62d43a Improve WorldCoordinatesToParametricCoordinates
1. Add a 'FastVec' class that copies input vector types to an efficient
   Vec type on the stack. Specializations avoid copies of already efficient
   types.
2. Update 'WorldCoordinatesToParametricCoordinates' functions to utilize the
   'FastVec' class. This should improve performance when the passed in
    vectors are of slow types like 'vtkm::VecFromPortalPermute'.
3. Since most input Vec types will convert to the same 'FastVec' type this
   also reduces the code generations. Some code refactoring was required for
   this.
2018-02-05 15:52:16 -05:00
Robert Maynard
e70e6ebb82 Merge topic 'cuda_doesnt_use_thrust_pointer'
22ea5833 iVTK-m CUDA backend doesn't use thrust::cuda::pointer any more.

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Allison Vacanti <allison.vacanti@kitware.com>
Merge-request: !1076
2018-02-02 15:28:22 -05:00
Robert Maynard
22ea58335a iVTK-m CUDA backend doesn't use thrust::cuda::pointer any more.
This was removed as CUDA 9.0 on MSVC has issues where CUB/Thrust
would fail to compile when given these types.
2018-02-02 08:33:17 -05:00
Robert Maynard
d1c25ea127 Merge topic 'correct_scalars_to_colors_range_no_updating'
67e6a5c3 Make sure ScalarsToColors actually updates the Range it stores

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1079
2018-02-02 08:32:06 -05:00
Kenneth Moreland
0766075293 Merge topic 'revert-gitsetup-changes'
39436936 Revert spelling correction in GitSetup script

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Robert Maynard <robert.maynard@kitware.com>
Merge-request: !1078
2018-02-01 13:05:05 -05:00
Robert Maynard
67e6a5c36a Make sure ScalarsToColors actually updates the Range it stores 2018-02-01 10:28:38 -05:00
Kenneth Moreland
394369368c Revert spelling correction in GitSetup script
A recent merge request corrected several spelling errors in VTK-m.
One such correction was in the git-gitlab-sync script in the
Utilities/GitSetup directory. This commit reverts the change in
this specific file for two reasons.

1. The changed introduced a \' inside a single quote string (to
correct cant to can't). However, single quotes in shell scripts
do not allow you to escape characters like that, and thus this
causes an error when running the script.

2. This script actually comes from a separate repository
(https://gitlab.kitware.com/utils/gitsetup) that we occasionally
syncronize with. To prevent confusion, we should minimize the
divergence between this repository and that one. If someone wants
to make this change, it should really be made in the GitSetup
repository.
2018-01-31 15:59:57 -07:00
Kenneth Moreland
43da67f747 Fix Jacobian cases for wedge and pyramid
When the implementation for the cell derivative functions was made, the
special cases for creating the Jacobian for wedge and pyramid cell
shapes was not working. Instead, it just used the hexahedra case for a
degenerate cell. This fixes the issues with the special cases.

There were multiple issues to be fixed. There were some complaints
by the compiler about types. There was a mistake in the pyramid table.
But the biggest issue was a problem with macro expansions. It was
the classic tale of forgetting that you have to encase parameters
in parenthesis to make sure that operator precedence comes out as
expected.
2018-01-31 15:45:12 -07:00