vtk-m2/vtkm/cont/testing
Kenneth Moreland 58fc99c2f8 Fix fast paths for ArrayRangeCompute
The precompiled `ArrayRangeCompute` function was not following proper fast
paths for special arrays. For example, when computing the range of an
`ArrayHandleUniformPointCoordinates`, the ranges should be taken from the
origin and spacing of the special array. However, the precompiled version
was calling the generic range computation, which was doing an unnecessary
reduction over the entire array. These fast paths have been fixed.

These mistakes in the code were caused by quirks in how templated method
overloading works. To prevent this mistake from happening again in the
precompiled `ArrayRangeCompute` function and elsewhere, all templated forms
of `ArrayRangeCompute` have been deprecated. Most will call
`ArrayRangeCompute` with no issues. For those that need the templated
version, `ArrayRangeComputeTemplate` replaces the old templated
`ArrayRangeCompute`. There is exactly one templated declaration of
`ArrayRangeComputeTemplate` that uses a class, `ArrayRangeComputeImpl`,
with partial specialization to ensure the correct form is used.
2023-03-08 12:36:53 -07:00
..
CMakeLists.txt Merge topic 'runtime-vec-array' 2023-02-17 13:35:47 -05:00
ExplicitTestData.h conslidate the license statement 2019-04-17 10:57:13 -06:00
MakeTestDataSet.h testing: remove vtkm/cont/testing relative path 2023-01-19 17:11:20 +09:00
Testing.h Add module mechanism 2022-10-26 12:51:05 -06:00
TestingDeviceAdapter.h Remove deprecated virtual methods 2022-10-28 10:56:52 -06:00
TestingRuntimeDeviceConfiguration.h Remove NUMA regions option 2023-01-30 09:53:57 -07:00
TestingSerialization.h Deprecate VariantArrayHandle 2021-04-07 16:12:38 -06:00
UnitTestAbort.cxx Fix unreferenced local variable warning 2023-02-13 13:29:26 -05:00
UnitTestAlgorithm.cxx Check results of Algorithm tests 2022-07-07 15:21:25 -06:00
UnitTestArrayCopy.cxx CI: remove unused variable warnings 2022-10-25 15:40:48 -04:00
UnitTestArrayExtractComponent.cxx Automatically convert between ArrayHandleBasic and ArrayHandleRuntimeVec 2023-02-20 07:39:49 -07:00
UnitTestArrayGetValues.cxx Allow ArrayExtractComponent to work with Vec-like value types 2022-01-25 10:55:41 -07:00
UnitTestArrayHandle.cxx Consolidate UnitTestArrayHandle 2022-07-13 11:49:26 -06:00
UnitTestArrayHandleCartesianProduct.cxx Add DEVICE_SOURCES to vtkm_unit_tests 2022-07-08 06:28:51 -06:00
UnitTestArrayHandleCast.cxx Remove TestingFancyArrayHandles.h 2022-07-13 11:52:11 -06:00
UnitTestArrayHandleCompositeVector.cxx Add Fill method for non-standard Storage 2022-01-04 10:35:53 -07:00
UnitTestArrayHandleConcatenate.cxx Remove TestingFancyArrayHandles.h 2022-07-13 11:52:11 -06:00
UnitTestArrayHandleConstant.cxx Remove TestingFancyArrayHandles.h 2022-07-13 11:52:11 -06:00
UnitTestArrayHandleCounting.cxx Update ArrayHandleImplicit to new array style with Buffer 2020-10-21 08:36:29 -06:00
UnitTestArrayHandleDecorator.cxx Remove warnins about unused functions 2022-07-08 06:28:51 -06:00
UnitTestArrayHandleDiscard.cxx Add Fill method for non-standard Storage 2022-01-04 10:35:53 -07:00
UnitTestArrayHandleExtractComponent.cxx Add DEVICE_SOURCES to vtkm_unit_tests 2022-07-08 06:28:51 -06:00
UnitTestArrayHandleGroupVec.cxx Remove TestingFancyArrayHandles.h 2022-07-13 11:52:11 -06:00
UnitTestArrayHandleGroupVecVariable.cxx Remove TestingFancyArrayHandles.h 2022-07-13 11:52:11 -06:00
UnitTestArrayHandleImplicit.cxx Remove TestingFancyArrayHandles.h 2022-07-13 11:52:11 -06:00
UnitTestArrayHandleIndex.cxx ReadPortal().Get(idx) is slow in a loop. 2020-05-08 11:30:59 -04:00
UnitTestArrayHandleMultiplexer.cxx Consoidate UnitTestArrayHandleMultiplexer 2022-07-13 11:52:04 -06:00
UnitTestArrayHandleOffsetsToNumComponents.cxx Consolidate count-to-offset algorithms 2021-09-16 14:24:41 -06:00
UnitTestArrayHandlePermutation.cxx Add DEVICE_SOURCES to vtkm_unit_tests 2022-07-08 06:28:51 -06:00
UnitTestArrayHandleRandomStandardNormal.cxx Reduce data size to operate on in unit tests. 2021-04-12 18:51:52 -04:00
UnitTestArrayHandleRandomUniformBits.cxx Move test_equal_* classes to top namespace 2020-12-22 13:46:02 -07:00
UnitTestArrayHandleRandomUniformReal.cxx Reduce data size to operate on in unit tests. 2021-04-12 18:51:52 -04:00
UnitTestArrayHandleRecombineVec.cxx Support using arrays with dynamic Vec-likes as output arrays 2023-01-23 13:02:40 -07:00
UnitTestArrayHandleReverse.cxx Add Fill method for non-standard Storage 2022-01-04 10:35:53 -07:00
UnitTestArrayHandleRuntimeVec.cxx Automatically convert between ArrayHandleBasic and ArrayHandleRuntimeVec 2023-02-20 07:39:49 -07:00
UnitTestArrayHandleSOA.cxx Remove TestingFancyArrayHandles.h 2022-07-13 11:52:11 -06:00
UnitTestArrayHandleSwizzle.cxx Deprecate ArrayHandle::ExecutionTypes 2021-02-08 12:17:37 -07:00
UnitTestArrayHandleThreadSafety.cxx Fix potential deadlock in ArrayHandle::PrepareForOutput 2020-07-07 18:30:38 -06:00
UnitTestArrayHandleTransform.cxx Remove TestingFancyArrayHandles.h 2022-07-13 11:52:11 -06:00
UnitTestArrayHandleUniformPointCoordinates.cxx Properly handle Get(Id3) in ArrayPortalCheck 2020-03-18 10:51:20 -06:00
UnitTestArrayHandleView.cxx Remove TestingFancyArrayHandles.h 2022-07-13 11:52:11 -06:00
UnitTestArrayHandleXGCCoordinates.cxx Add DEVICE_SOURCES to vtkm_unit_tests 2022-07-08 06:28:51 -06:00
UnitTestArrayHandleZip.cxx Remove TestingFancyArrayHandles.h 2022-07-13 11:52:11 -06:00
UnitTestArrayPortalFromIterators.cxx Add module mechanism 2022-10-26 12:51:05 -06:00
UnitTestArrayPortalToIterators.cxx Improvements to moving data into ArrayHandle 2020-07-23 10:53:38 -06:00
UnitTestArrayRangeCompute.cxx Fix fast paths for ArrayRangeCompute 2023-03-08 12:36:53 -07:00
UnitTestBitField.cxx Changes for compiling with SYCL 2023-02-15 14:38:59 -07:00
UnitTestBuffer.cxx Add module mechanism 2022-10-26 12:51:05 -06:00
UnitTestCellLocatorChooser.cxx Add DEVICE_SOURCES to vtkm_unit_tests 2022-07-08 06:28:51 -06:00
UnitTestCellLocatorGeneral.cxx Add function to reduce code in tests. 2022-08-10 11:57:18 -04:00
UnitTestCellLocatorPartitioned.cxx Make source parameters more clear 2022-12-01 08:13:58 -07:00
UnitTestCellLocatorRectilinearGrid.cxx Removed ExecutionWholeArray class 2022-10-27 15:07:41 -06:00
UnitTestCellLocatorUniformGrid.cxx Consolidate UnitTestCellLocator* 2022-07-13 12:03:25 -06:00
UnitTestCellLocatorUnstructured.cxx Add a new unstructured cell locator 2022-11-22 09:51:40 -05:00
UnitTestCellSet.cxx Remove deprecated features from VTK-m 2022-11-17 07:12:31 -06:00
UnitTestCellSetExplicit.cxx CI: remove unused variable warnings 2022-10-25 15:40:48 -04:00
UnitTestCellSetExtrude.cxx Fix warnings about unreachable statements 2022-07-08 06:35:13 -06:00
UnitTestCellSetPermutation.cxx Deprecate old methods from DynamicCellSet 2022-01-05 08:18:17 -07:00
UnitTestColorTable.cxx Consolidate UnitTestColorTable 2022-07-13 12:05:39 -06:00
UnitTestComputeRange.cxx Consolidate UnitTestComputeRange 2022-07-13 12:07:10 -06:00
UnitTestControlSignatureTag.cxx Add module mechanism 2022-10-26 12:51:05 -06:00
UnitTestContTesting.cxx conslidate the license statement 2019-04-17 10:57:13 -06:00
UnitTestDataSetBuilderCurvilinear.cxx Coordinate systems are stored as Fields 2022-11-11 06:17:58 -07:00
UnitTestDataSetBuilderExplicit.cxx Coordinate systems are stored as Fields 2022-11-11 06:17:58 -07:00
UnitTestDataSetBuilderRectilinear.cxx Coordinate systems are stored as Fields 2022-11-11 06:17:58 -07:00
UnitTestDataSetBuilderUniform.cxx Coordinate systems are stored as Fields 2022-11-11 06:17:58 -07:00
UnitTestDataSetConvertToExpected.cxx Check to make sure that the fields in a DataSet are the proper length 2022-11-01 12:05:59 -06:00
UnitTestDataSetExplicit.cxx Coordinate systems are stored as Fields 2022-11-11 06:17:58 -07:00
UnitTestDataSetPermutation.cxx Change CellAverage to work on fields of any type 2023-02-03 14:51:40 -05:00
UnitTestDataSetRectilinear.cxx Coordinate systems are stored as Fields 2022-11-11 06:17:58 -07:00
UnitTestDataSetSingleType.cxx Consolidate UnitTestDataSet* 2022-07-13 12:09:24 -06:00
UnitTestDataSetUniform.cxx Coordinate systems are stored as Fields 2022-11-11 06:17:58 -07:00
UnitTestDeviceAdapterAlgorithmDependency.cxx CI: remove unused variable warnings 2022-10-25 15:40:48 -04:00
UnitTestDeviceAdapterAlgorithmGeneral.cxx Remove deprecated virtual methods 2022-10-28 10:56:52 -06:00
UnitTestDeviceSelectOnThreads.cxx Add DEVICE_SOURCES to vtkm_unit_tests 2022-07-08 06:28:51 -06:00
UnitTestError.cxx Update UnitTestError.cxx 2021-04-16 17:46:43 +00:00
UnitTestFieldRangeCompute.cxx Deprecate DataSetFieldAdd. 2020-05-27 15:27:47 -04:00
UnitTestFieldRangeGlobalCompute.cxx clang-format: reformat the repository with clang-format-9 2020-08-24 14:01:08 -04:00
UnitTestImplicitFunction.cxx Remove deprecated virtual methods 2022-10-28 10:56:52 -06:00
UnitTestInitialize.cxx Remove NUMA regions option 2023-01-30 09:53:57 -07:00
UnitTestIteratorFromArrayPortal.cxx Add module mechanism 2022-10-26 12:51:05 -06:00
UnitTestLateDeallocate.cxx Add test for array and datas that are cleaned up after finalize 2022-07-01 12:36:55 -06:00
UnitTestLogging.cxx Remove deprecated features from VTK-m 2022-11-17 07:12:31 -06:00
UnitTestMergePartitionedDataSet.cxx remove unnecessary includes 2021-10-28 15:39:42 -06:00
UnitTestMoveConstructors.cxx Be more conservative about is_trivial support 2021-03-01 15:12:27 -07:00
UnitTestParticleArrayCopy.cxx Hide Particle class members 2022-12-13 13:19:21 -05:00
UnitTestPartitionedDataSet.cxx Coordinate systems are stored as Fields 2022-11-11 06:17:58 -07:00
UnitTestPointLocatorSparseGrid.cxx Consolidate UnitTestPointLocatorSparseGrid 2022-07-13 13:27:38 -06:00
UnitTestRuntimeConfigurationOptions.cxx Remove NUMA regions option 2023-01-30 09:53:57 -07:00
UnitTestRuntimeDeviceInformation.cxx Add DEVICE_SOURCES to vtkm_unit_tests 2022-07-08 06:28:51 -06:00
UnitTestRuntimeDeviceNames.cxx Add DEVICE_SOURCES to vtkm_unit_tests 2022-07-08 06:28:51 -06:00
UnitTestScopedRuntimeDeviceTracker.cxx Add DEVICE_SOURCES to vtkm_unit_tests 2022-07-08 06:28:51 -06:00
UnitTestSerializationArrayHandle.cxx Automatically convert between ArrayHandleBasic and ArrayHandleRuntimeVec 2023-02-20 07:39:49 -07:00
UnitTestSerializationDataSet.cxx Simplify serialization of DataSet objects 2023-03-03 09:17:44 -07:00
UnitTestStorageList.cxx Remove instances of ListTag in favor of List 2019-12-06 21:32:36 -07:00
UnitTestTimer.cxx Fix intermittent UnitTestTimer failures with CUDA 2022-07-12 08:52:12 -06:00
UnitTestToken.cxx Revert removal of print statements. 2021-04-12 18:51:53 -04:00
UnitTestTransportArrayIn.cxx Add module mechanism 2022-10-26 12:51:05 -06:00
UnitTestTransportArrayInOut.cxx Add module mechanism 2022-10-26 12:51:05 -06:00
UnitTestTransportArrayOut.cxx Add module mechanism 2022-10-26 12:51:05 -06:00
UnitTestTransportCellSetIn.cxx Add module mechanism 2022-10-26 12:51:05 -06:00
UnitTestTransportExecObject.cxx Add module mechanism 2022-10-26 12:51:05 -06:00
UnitTestTransportWholeArray.cxx Add module mechanism 2022-10-26 12:51:05 -06:00
UnitTestTryExecute.cxx Add DEVICE_SOURCES to vtkm_unit_tests 2022-07-08 06:28:51 -06:00
UnitTestTypeCheckArray.cxx Add module mechanism 2022-10-26 12:51:05 -06:00
UnitTestTypeCheckCellSet.cxx Add module mechanism 2022-10-26 12:51:05 -06:00
UnitTestTypeCheckExecObject.cxx Add module mechanism 2022-10-26 12:51:05 -06:00
UnitTestTypeCheckKeys.cxx Add module mechanism 2022-10-26 12:51:05 -06:00
UnitTestUnknownArrayHandle.cxx Automatically convert between ArrayHandleBasic and ArrayHandleRuntimeVec 2023-02-20 07:39:49 -07:00
UnitTestUnknownCellSet.cxx Add UncertainCellSet 2021-12-15 12:59:18 -07:00