Commit Graph

161 Commits

Author SHA1 Message Date
Dave Pugmire
46a82c6985 add data generation functions. 2020-10-26 14:37:20 -04:00
Li-Ta Lo
83b90f9fce time to test on GPU 2020-08-20 10:49:00 -06:00
dpugmire
4744730630 Merge branch 'master' of https://gitlab.kitware.com/vtk/vtk-m into betterParticleAdvectionDiffs2 2020-06-17 11:12:11 -04:00
Li-Ta Lo
c25f0b4bb8 Rename StatisticalMoments. more unit tests
Change StatisticalMoments to the more descriptive DescriptiveStatistics,
add some more property based tests.
2020-06-15 14:24:00 -06:00
NAThompson
755137a822 Particle advection tests with file. 2020-06-13 10:58:45 -04:00
Li-Ta Lo
991e7eac2a United We Stand
Implemented a one-pass, Divide and Conqur algorithm to calculate various statistical
moments. Only one call to Reduce is needed.
2020-06-05 16:09:10 -06:00
Kenneth Moreland
4f9fa08fa1 Remove ArrayHandleStreaming capabilities
The `ArrayHandleStreaming` class stems from an old research project
experimenting with bringing data from an `ArrayHandle` in parts and
overlapping device transfer and execution. It works, but only in very
limited contexts. Thus, it is not actually used today. Plus, the feature
requires global indexing to be permutated throughout the worklet
dispatching classes of VTK-m for no further reason.

Because it is not really used, there are other more promising approaches
on the horizon, and it makes further scheduling improvements difficult,
we are removing this functionality.
2020-03-24 15:01:56 -06:00
Vicente Adolfo Bolea Sanchez
e2c32ffac7 add unit test for WorkletMapTopology
Signed-off-by: Vicente Adolfo Bolea Sanchez <vicente.bolea@kitware.com>
2020-03-18 10:26:58 -04:00
Robert Maynard
1f1688483e Initial infrastructure to allow WorkletMapField to have 3D scheduling 2020-02-25 15:23:41 -05:00
Robert Maynard
7fc7c61a9b VTK-m use a jobs pool for compiling large compilation units.
When building with the ninja generator VTK-m now uses a job pool
to help limit the chances of a machine going out of memory
when compiling VTK-m.
2019-11-29 15:49:54 -05:00
Robert Maynard
4faf1bf0b8 Merge topic 'build_filter_lib'
8520d70e0 Compile most frequently used VTK-m filters into a library
d1d61b9eb vtkm::filter::Filter passes filter policies by value
4ff021b08 Improve VTK-m compilation times by compiling more keys<T> types

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1836
2019-09-18 15:01:39 -04:00
Robert Maynard
8520d70e0d Compile most frequently used VTK-m filters into a library
VTK-m now provides the following filters with the default policy
as part of the vtkm_filter library:
  - CellAverage
  - CleanGrid
  - ClipWithField
  - ClipWithImplicitFunction
  - Contour
  - ExternalFaces
  - ExtractStructured
  - PointAverage
  - Threshold
  - VectorMagnitude

By building these as a library we hope to provide faster compile
times for consumers of VTK-m when using common configurations.
2019-09-18 12:06:13 -04:00
Robert Maynard
257dc1f84e Sources have a more consistent API and internal style.
`vtkm::source::Source` now uses virtual inheritance for
the `Execute` method. This will allow us to enforce that
all vtkm::source have a consistent calling convention.

To make the code inside filters and sources more similar the
base `vtkm::source::Source` class has a `vtkm::cont::Invoker`
as a member variable. This will allow sources to use the
`this->Invoke()` pattern that filters use to launch worklets.
2019-09-13 10:22:25 -04:00
Li-Ta Lo
c8af7699fd split generation of Tangle DataSet into a vtkm source 2019-08-22 18:23:34 -06:00
Li-Ta Lo
0a020c77a8 fixed error in TetrahedralizedExplicit, rename MarchineCubes to Contour 2019-08-19 11:45:58 -06:00
Allison Vacanti
320a5257ad Add TriangleWinding worklet. 2019-08-01 10:57:58 -04:00
Allison Vacanti
ab627b61d6 Add OrientNormals worklet. 2019-08-01 10:57:58 -04:00
Dave Pugmire
703e4c254c Stream surface worklet 2019-07-26 11:20:12 -04:00
Dave Pugmire
03e7b77fc9 Initial modifications for tube filter. 2019-06-18 10:38:41 -04:00
Robert Maynard
2a7ef30116 CMake: Don't presume the cuda compilers is always NVCC. 2019-05-29 09:24:01 -04:00
nadavi
fbcea82e78 conslidate the license statement 2019-04-17 10:57:13 -06:00
Abhishek Yenpure
02af238c69 Merge topic 'temporal_particle_advect'
525317249 Merge branch 'master' of https://gitlab.kitware.com/vtk/vtk-m into temporal_particle_advect
2c1d3ee51 Updating example with new interfaces
cb8ea7dff Adding missing APIs
a7510a3c0 Fixing out of seq init warning
f3f2469b8 Adding direct constructor and vtkm::Lerp
2daf18956 Updating copyright for Unit Test
eca618e10 Fixing typos
be80dcc1a Adding changes for temporal advection, and adding test

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Dave Pugmire <dpugmire@gmail.com>
Merge-request: !1590
2019-03-25 13:47:36 -04:00
ayenpure
be80dcc1ab Adding changes for temporal advection, and adding test 2019-03-19 17:11:36 -07:00
Li-Ta Lo
55910e5a76 Merge branch 'master' into connected_component 2019-02-28 11:31:56 -07:00
Kenneth Moreland
191d6e5580 Add Mask capabilities to worklets
Mask objects allow you to specify which output values should be
generated when a worklet is run. That is, the Mask allows you to skip
the invocation of a worklet for any number of outputs.
2019-02-25 08:58:39 -07:00
Kenneth Moreland
887f79c6f4 Make a vtkm_worklet library
This is a library that contains parts of worklets that can be
precompiled into a library.

Currently, this library contains the implementation of ScatterCounting.
2019-01-23 17:09:15 -07:00
Robert Maynard
c36b45435b Add UnitTestWorkletMapFieldWholeArrayAtomic
This covers the atomic tests that was previously part of WorkletMapFieldWholeArray
2019-01-18 13:30:37 -06:00
Haocheng LIU
5251091e54 Remove compile time adapter checks in UnitTestBoundingIntervalHierarchy 2019-01-03 09:22:35 -05:00
mclarsen
1c45e48fac compression working and benchmarked 2018-12-13 14:49:36 -05:00
mclarsen
ea9bef19da init zfp 2018-12-13 14:49:36 -05:00
Li-Ta Lo
2af1162a01 Merge branch 'master' into connected_component 2018-12-12 14:12:34 -07:00
Robert Maynard
dd0cbc3689 Merge topic 'disable_cuda_optimizations_for_UnitTestBoundingIntervalHierarchy'
a9c151188 Disable ptxas for CUDA 8 && 9 for UnitTestBoundingIntervalHierarchy.

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1465
2018-12-07 08:28:04 -05:00
Li-Ta Lo
c75ec7bfc7 Updated unit tests, add filter interface 2018-12-04 16:42:34 -07:00
Haocheng LIU
0d39806f4f Rename worklet testing executable
Now it's in accordance with vtkm testing name convension as
UnitTests_vtkm_worklet_testing.
2018-11-29 15:51:41 -05:00
Robert Maynard
a9c1511888 Disable ptxas for CUDA 8 && 9 for UnitTestBoundingIntervalHierarchy. 2018-11-28 11:14:59 -05:00
Haocheng LIU
8859636672 Merge worklet testing executables into a device dependent shared library
VTK-m has been updated to replace old per device worklet testing executables with a device
dependent shared library so that it's able to accept a device adapter
at runtime.
Meanwhile, it updates the testing infrastructure APIs. vtkm::cont::testing::Run
function would call ForceDevice when needed and if users need the device
adapter info at runtime, RunOnDevice function would pass the adapter into the functor.

Optional Parser is bumped from 1.3 to 1.7.
2018-11-23 10:13:56 -05:00
Robert Maynard
cd6367646c ParticeAdvection for cuda <= 9 now built without ptxas optimizations
The ParticleAdvection code would always cause cuda 9's ptxas phase
to crash, so we disable optimization to work around this issue
2018-10-18 11:19:23 -04:00
Kenneth Moreland
f3b923a597 Temporarily remove UnitTestParticleAdvection.cxx from CUDA tests
The CUDA compiler is giving us grief while compiling
UnitTestParticleAdvection.cxx even though the code is correct. Disable
it for now until we figure out what can be done with the compiler.
2018-10-16 10:42:45 -06:00
Haocheng LIU
246a58309c Add a split sharp edge worklet and filter
It's a filter that Split sharp manifold edges where the feature angle
between the adjacent surfaces are larger than the threshold value.
When an edge is split, it would add a new point to the coordinates
and update the connectivity of an adjacent surface.
Ex. there are two adjacent triangles(0,1,2) and (2,1,3). Edge (1,2) needs
to be split. Two new points 4(duplication of point 1) an 5(duplication of point 2)
would be added and the later triangle's connectivity would be changed
to (5,4,3).
By default, all old point's fields would be copied to the new point.
Use with caution.
2018-10-09 15:33:47 -04:00
Robert Maynard
12b90c434b Rename PPP2 to Augmented. 2018-09-26 10:48:37 -07:00
Oliver Ruebel
2370a6cc5d Refactor the PPP2 work based on Code Review and add UnitTests. 2018-09-18 08:54:22 -04:00
Robert Maynard
35145fedb4 Re-enable UnitTestBoundingIntervalHierarchy 2018-08-28 13:45:02 -04:00
Haocheng LIU
39f791e6ee Disable the UnitTestBoundingIntervalHierarchy test 2018-08-10 14:19:06 -04:00
Robert Maynard
2c6ca906f1 Enable building the worklets when OpenMP is enabled. 2018-07-23 14:33:03 -04:00
Allison Vacanti
3089609b98 Merge topic 'wavelet_source'
0d6834476 Add WaveletGenerator worklet.

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Robert Maynard <robert.maynard@kitware.com>
Merge-request: !1310
2018-07-16 11:27:30 -04:00
Allison Vacanti
0d68344769 Add WaveletGenerator worklet. 2018-07-13 14:20:49 -04:00
Haocheng LIU
56993bc9e2 Add a warpScalar worklet and filter
This commit adds a worklet as well as a filter that modify point coordinates by moving points
along point normals by the scalar amount times the scalar factor.
It's a simpified version of the vtkWarpScalar class in VTK. Additionally the filter doesn't
modify the point coordinates, but creates a new point coordinates that have been warped.
2018-07-09 15:33:25 -04:00
Haocheng LIU
a4c4c1931c Add a warpVector worklet and filter
This commit adds a worklet as well as a filter that modify point coordinates by moving points
along a vector by a certain scalar amount.
It's a simpified version of the vtkWarpVector in VTK.
It doesn't modify the point coordinates, but creates a new point coordinates that have been warped.
2018-07-09 14:22:12 -04:00
ayenpure
e2dccee099 Merge branch 'master' of https://gitlab.kitware.com/vtk/vtk-m into spatialsearch 2018-06-30 11:56:33 -06:00
Dave Pugmire
961f6a5851 Add coordinate system transformation. 2018-06-20 16:40:47 -04:00