Commit Graph

1812 Commits

Author SHA1 Message Date
Oliver Ruebel
7b803eff1f Add test for joinTree.Initialise and splitTree.Initialise 2020-01-29 13:45:59 -08:00
Oliver Ruebel
9c115ec6a3 Fix bug in ActiveGraph DebugPrint 2020-01-29 12:30:18 -08:00
Oliver Ruebel
e95bb3a14d Add asserts for Active graph constructor 2020-01-29 12:07:48 -08:00
Oliver Ruebel
77ec47aa37 Rename namespace in attempt to fix Windows built 2020-01-29 12:00:34 -08:00
Oliver Ruebel
40bd949b52 Attempt to fix namespace built issue on Windows 2020-01-29 09:53:44 -08:00
Robert Maynard
36161b42c7 Renamed to SchedulingRange to follow VTK-m naming convention 2020-01-29 10:39:41 -05:00
Oliver Ruebel
fdabf794c1 Add setup to allow us to test the main steps of the contour tree 2020-01-28 16:04:29 -08:00
Robert Maynard
40c0c0fefd Allow for easier overloads of scheduling_range
This is needed to support custom types that need 3D scheduling
or to call custom methods to get the 1D scheduling size
2020-01-28 11:17:42 -05:00
Oliver Ruebel
2134acd9e6 Unit test different augmentation settings. Fix parameter warning 2020-01-27 14:17:39 -08:00
Oliver Ruebel
787b6519ab Fix shadowing parameter warning in HyperArcSuperNodeComperator 2020-01-27 13:26:02 -08:00
Oliver Ruebel
d1d7b56411 Update docs for ContourTreeUniformAugmented worklet 2020-01-27 03:13:26 -08:00
Oliver Ruebel
56df1b9b32 Renamed ActiveGraph.nSupernodes, nHypernodes member var for VTKm style compliance 2020-01-23 18:48:20 -08:00
Oliver Ruebel
3f84635c75 Renamed ActiveGraph.activeEdges, activeVertices, superID, hyperID member var for VTKm style compliance 2020-01-23 18:36:47 -08:00
Oliver Ruebel
31e2fc559d Renamed ActiveGraph.edgeMear. edgeFare, and edgeSorter member var for VTKm style compliance 2020-01-23 18:17:58 -08:00
Oliver Ruebel
a67c2db6b7 Renamed ActiveGraph.outdegree and ActiveGraph.firstEdge member var for VTKm style compliance 2020-01-23 18:07:14 -08:00
Oliver Ruebel
09a4eeeaf6 Renamed globalIndex member var for VTKm style compliance 2020-01-23 17:48:31 -08:00
Oliver Ruebel
c7f8f9393b Renamed isJoinGraph member var for VTKm style compliance 2020-01-23 17:43:26 -08:00
Oliver Ruebel
db1104a258 Renamed ContourTreeMaker.contourTree for compliance with VTKm style 2020-01-23 17:33:58 -08:00
Oliver Ruebel
e08667552d Updated names in ContourTreeMaker for compliance with VTKm 2020-01-23 17:20:31 -08:00
Oliver Ruebel
70f0b96bd8 Update names in ContourTree.h to comply with VTKm style 2020-01-23 11:32:33 -08:00
Oliver Ruebel
7ced203f6a Update names in MergeTree (and matching names in other classes) to comply with VTKm style 2020-01-23 10:46:56 -08:00
Oliver Ruebel
6bfd119220 Update var/func names in all of activegraph to comply with VTKm style 2020-01-23 03:44:25 -08:00
Oliver Ruebel
4de9647688 Update var/func names in all of contourtreemaker to comply with VTKm style 2020-01-23 03:30:22 -08:00
Oliver Ruebel
bea6997d58 Update var/func names in all of mesh_dem_meshtypes to comply with VTKm style 2020-01-23 03:21:01 -08:00
Oliver Ruebel
fed9c792ca Update func/var names in Mesh_DEM_Triangulation for VTKm style 2020-01-23 01:51:03 -08:00
Oliver Ruebel
8d25b8fa35 Update names of print functions for VTKm syle compliance 2020-01-23 00:56:02 -08:00
Oliver Ruebel
1fa1410324 Updated names in MeshExtrema to match VTKm style 2020-01-23 00:03:36 -08:00
Oliver Ruebel
fee363232d Updated names in ArrayTransforms.h to fit VTKm style 2020-01-22 23:44:00 -08:00
Oliver Ruebel
3ba516d70e Updated print functionname to VTKm style and remove unused functions 2020-01-22 23:30:44 -08:00
Oliver Ruebel
7598696656 Remove unused constexpr printCols 2020-01-22 23:21:16 -08:00
Oliver Ruebel
ff3e20dcad Update functionnames in contourtree_augmented/Types.h to match VTKm style 2020-01-22 23:15:28 -08:00
Oliver Ruebel
c51587f011 Moved EulerTour to processcontour folder/namespace 2020-01-22 15:07:30 -08:00
Oliver Ruebel
bdabb282b3 Fix naming of functions/variable in vtkm/worklet/contourtree_augmented/processcontourtree 2020-01-22 14:54:52 -08:00
Oliver Ruebel
236da581e3 Rename include guards to comply with vtk_m_ naming convention 2020-01-22 14:04:11 -08:00
Oliver Ruebel
5db7eb6969 Replace use of PPP2 acronym in names to comply with coding style 2020-01-22 01:40:49 -08:00
Oliver Ruebel
43aae4870b Replace tracking of timings in ContourTree with logging 2020-01-22 01:11:45 -08:00
Robert Maynard
a52af2d132 Correct double to float warning in CellAspectFrobeniusMetric 2020-01-14 11:18:22 -05:00
Robert Maynard
27739660b9 Add missing constructors/assignment operators
Having a custom assignment operator means that the compiler
isn't required to generate the implicit copy constructor.
This makes sure they are constructed.
2020-01-14 11:18:22 -05:00
Robert Maynard
123f8b01aa Mark virtual destructors as override where applicable 2020-01-13 15:54:33 -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
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
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
Dave Pugmire
dd9dc19410 Merge topic 'pa_storage'
e4923823b Add comment for extra casts for compiler warnings.
98d4df79a compiler warnings.
a11bc1769 compiler warnings.
5646527b6 cleanup for LCS filter.
29c21cdbc Code cleanup. Update Lagranian filter to use vtkm::Particle
136aba429 Cleanup for streamsurface.
85fc73fc4 Updates for streamline/pathline filter.
33ba234d5 code cleanup
...

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1854
2019-12-15 21:48:35 -05:00
Robert Maynard
6eddfc3d67 Merge topic 'improve_extract_structured_compile_overhead'
7b53a52e6 ExtractStructured now compiles quicker and with less compiler memory

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Allison Vacanti <allison.vacanti@kitware.com>
Merge-request: !1922
2019-12-12 11:36:37 -05:00
Dave Pugmire
98d4df79a4 compiler warnings. 2019-12-11 15:36:23 -07:00
Dave Pugmire
5646527b6b cleanup for LCS filter. 2019-12-11 13:32:40 -07:00
Dave Pugmire
29c21cdbc4 Code cleanup. Update Lagranian filter to use vtkm::Particle 2019-12-11 11:45:13 -07:00
Kenneth Moreland
2fbcc78a60 Merge topic 'simple-list-template'
4659d69c7 Remove some commented out code
aec75ab1a Suppress CUDA warning about device calling host
851864d0b Work around with Visual Studio 2015 issue
452a2e1c9 Suppress warnings about CUDA host/device mismatch
4fdefe9f1 Suppress some deprecated warnings in visual studio
5cfc14482 Implement old ListTag features with new ListTag implementations
d5fe4046c Remove instances of ListTag in favor of List
92db37623 Convert uses of ListTagBase to List
...

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Robert Maynard <robert.maynard@kitware.com>
Merge-request: !1918
2019-12-11 09:43:22 -05:00
Robert Maynard
7b53a52e6a ExtractStructured now compiles quicker and with less compiler memory
Previously ExtractStructured filter would take ~45sec to compile
with gcc 9.2 and now takes ~15sec.
2019-12-11 08:59:42 -05:00
dpugmire
ef2b97838c code cleanup. 2019-12-10 09:44:01 -05:00
Petar Hristov
bf2290c9ec Fixed an implicit conversion change warning. 2019-12-09 10:59:18 +00:00
Kenneth Moreland
d5fe4046c5 Remove instances of ListTag in favor of List 2019-12-06 21:32:36 -07:00
Kenneth Moreland
92db376236 Convert uses of ListTagBase to List 2019-12-06 15:37:46 -07:00
dpugmire
961264d16d compiler warnings. 2019-12-06 13:24:59 -05:00
dpugmire
41c03a8bcf Fix for cuda. 2019-12-06 13:05:00 -05:00
dpugmire
8054dfdafb Fixes for streamlines. 2019-12-05 15:46:41 -05:00
Kenneth Moreland
cd302effb3 Update lists in TypeListTag.h
A new header named TypeList.h and the type lists have been redefined in
this new file. All the types have been renamed from `TypeListTag*` to
`TypeList*`. TypeListTag.h has been gutted to provide deprecated
versions of the old type list names.

There were also some other type lists that were changed from using the
old `ListTagBase` to the new `List`.
2019-12-05 11:05:19 -07:00
Kenneth Moreland
6fc883213c Deprecate ListTag operations
The newer List operations should still work on the old ListTags, so make
those changes first to ensure that everything still works as expected if
given an old ListTag.

Next step is to deprecate ListTagBase itself and move all the lists to
the new types.
2019-12-05 11:27:31 -05:00
Petar Hristov
18caed60e3 Fixed some of the compiler warning from CDash. 2019-12-05 13:50:44 +00:00
Robert Maynard
50d2989483 Slightly improve compile times by making less unique temp types
Instead of incrementally building a new Invocation object
for each modified parameter, we construct a single new type
with all the new parameters.

GCC 9.2, Release, Contour Filter:
Master: 1:08.96min, max memory: 1762644 KB
This: 1:04.56min, max memory: 1730376 KB
2019-12-05 08:19:07 -05:00
dpugmire
bdab4a56d2 Merge branch 'master' of https://gitlab.kitware.com/vtk/vtk-m into pa_storage 2019-12-04 11:59:14 -05:00
dpugmire
115f0a6ee3 Changes to particle advection worklets. 2019-12-04 11:52:08 -05:00
Robert Maynard
a9f5279b28 Merge topic 'add_ninja_job_pools'
7fc7c61a9 VTK-m use a jobs pool for compiling large compilation units.

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1911
2019-12-03 09:00:22 -05:00
Robert Maynard
65347bf948 Correct warnings found by GCC 9.2 2019-12-02 09:33:35 -05:00
Robert Maynard
d6d40c90d7 Simplify FunctionInterface
This includes removing Exec, and Cont methods that VTK-m is no longer
using. Also we simplify the used methods as much as possible.
2019-12-02 09:33:35 -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
462aacebb3 Merge topic 'simplify_threshold_implementation'
a92ad22c7 Improve Threshold runtime and compile performance

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Allison Vacanti <allison.vacanti@kitware.com>
Merge-request: !1909
2019-11-26 19:48:24 -05:00
Robert Maynard
a92ad22c73 Improve Threshold runtime and compile performance
Using GCC 9.2 the pre change vtkm::filter::Threshold would
take 31.84sec to compile and use 1.1GB of memory. After
these changes the filter takes 24.16sec to compile and
uses 885MB of memory.
2019-11-26 16:53:56 -05:00
Robert Maynard
5ea5e1b37b Merge topic 'vtkm_mark_files_as_not_good_for_unity'
a1af800cc VTK-m now excludes large files from CMake Unity builds

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1907
2019-11-26 12:04:33 -05:00
Robert Maynard
a1af800cc0 VTK-m now excludes large files from CMake Unity builds
CMake 3.16 includes support for unity builds which merge multiple
translation units together automatically for faster builds.
A couple of translation units in VTK-m already require lots of
system memory, and merging them actually decreases compile performance
2019-11-26 11:22:03 -05:00
peter
9a6dec8bc4 Refactored control side function call from a VTKM_EXEC function. 2019-11-21 10:01:46 +00:00
Kenneth Moreland
cd30bc5875 Fix compiler warning in Tube worklet
Older GCC compilers were giving warnings in the operator of the
GeneratePoints worklets for tubes because they could not completely
determine that variables were being properly initialized in the first
loop iteration (and therefore initialized for every subsequent
iteration). Fixed that by moving the initialization for the first
iteration outside of the loop.
2019-11-06 17:06:11 -07:00
peter
da83076d7f Merge branch 'master' into peter-changes 2019-10-30 09:36:53 +00:00
Robert Maynard
0fccc5f2c4 improve moments algorithm performance 2019-10-17 11:51:05 -04:00
Kenneth Moreland
d3d3e441d7 Merge topic 'cell-metrix-missing-include'
677962f93 Add Matrix.h to cellmetrics include

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Hank <hank@uoregon.edu>
Merge-request: !1892
2019-10-14 17:01:32 -04:00
Kenneth Moreland
677962f939 Add Matrix.h to cellmetrics include
This file was using the Matrix class but not including Matrix.h. When I
tried to use the MeshQuality filter in an example that did not include
Matrix.h on its own, I got a compile error.
2019-10-11 00:08:04 -04:00
Dave Pugmire
665f323db0 optimization for mask select for all masks active. 2019-10-10 16:56:26 -04:00
Dave Pugmire
46c4c0e443 First light for streamlines.. 2019-10-10 09:46:29 -04:00
Dave Pugmire
4a7129db01 compiler warnings. 2019-10-10 08:43:39 -04:00
Robert Maynard
1de5774d57 Merge topic 'just_infer_execution_signature'
cf2d62fb9 Remove unneeded ExecutionSignatures
c3f0060cc ExecutionSignatures are now optional for simple worklets
1b08521fa Merge branch 'upstream-taotuple'
c6d309566 taotuple 2019-10-08 (0d1e4dfd)

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Kenneth Moreland <kmorel@sandia.gov>
Merge-request: !1882
2019-10-09 15:44:36 -04:00
Dave Pugmire
02b0fd51e4 remove cout commands. 2019-10-09 15:37:42 -04:00
Dave Pugmire
3be90354ff compiler warnings, etc. 2019-10-09 15:28:42 -04:00
Robert Maynard
cf2d62fb90 Remove unneeded ExecutionSignatures 2019-10-09 14:56:07 -04:00
Dave Pugmire
d2cdbd66c0 Remove compiler warnings. Move functionality to Bitset class. 2019-10-09 13:31:45 -04:00
Dave Pugmire
ddd4451102 fix compiler warnings. 2019-10-09 10:39:49 -04:00
Dave Pugmire
fc0e5dfe82 temporal fixes. 2019-10-08 22:31:11 -04:00
Dave Pugmire
40cdc99202 Compile error fixes. 2019-10-08 13:53:35 -04:00
Robert Maynard
c3f0060cc5 ExecutionSignatures are now optional for simple worklets
If a worklet doesn't explicitly state an ExecutionSignature, VTK-m
assumes the worklet has no return value, and each ControlSignature
argument is passed to the worklet in the same order.

For example if we had this worklet:
```cxx
struct DotProduct : public vtkm::worklet::WorkletMapField
{
  using ControlSignature = void(FieldIn, FieldIn, FieldOut);
  using ExecutionSignature = void(_1, _2, _3);

  template <typename T, vtkm::IdComponent Size>
  VTKM_EXEC void operator()(const vtkm::Vec<T, Size>& v1,
                            const vtkm::Vec<T, Size>& v2,
                            T& outValue) const
  {
    outValue = vtkm::Dot(v1, v2);
  }
};
```

It can be simplified to be:

```cxx
struct DotProduct : public vtkm::worklet::WorkletMapField
{
  using ControlSignature = void(FieldIn, FieldIn, FieldOut);

  template <typename T, vtkm::IdComponent Size>
  VTKM_EXEC void operator()(const vtkm::Vec<T, Size>& v1,
                            const vtkm::Vec<T, Size>& v2,
                            T& outValue) const
  {
    outValue = vtkm::Dot(v1, v2);
  }
};
2019-10-08 11:14:11 -04:00
Dave Pugmire
9e486e075b Fix for smallStep in integrator. 2019-10-04 08:59:28 -04:00
Robert Maynard
308552bd62 Merge topic 'improve_connectivity_worklet_perf'
973878b8b Improve the performance of the Image and Graph Connectivity algorithms

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Li-Ta Lo <ollie@lanl.gov>
Merge-request: !1873
2019-10-02 11:41:57 -04:00
Robert Maynard
973878b8ba Improve the performance of the Image and Graph Connectivity algorithms
The collection of connectivity algorithms had a couple of inefficiencies.
By moving to using WorkId we can remove a couple of arrays of the same size
as the input domain. In addition by moving to using atomics we can remove
an bool output array with a size equivalent to the input domain and
a call to reduce.
2019-10-02 08:25:10 -04:00
Dave Pugmire
ec89b43c6c update unit tests 2019-10-01 13:56:08 -04:00
Dave Pugmire
6e9ab1ce5d Unit tests for AOS particle advection. 2019-10-01 13:33:12 -04:00
Allison Vacanti
43e2b5498d Merge topic '408_CSExplicit_Refactor'
3886b7dfb Refactor CellSetExplicit to remove NumIndices.
b2daec0e3 Stick with brigand sequences for CUDA device passes.

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Kenneth Moreland <kmorel@sandia.gov>
Merge-request: !1874
2019-10-01 09:43:33 -04:00
Allison Vacanti
3886b7dfb8 Refactor CellSetExplicit to remove NumIndices.
See #408 for details.
2019-09-30 12:27:13 -04:00
Robert Maynard
0ca6023650 Merge topic 'mask_supported_by_invoker'
445e4d818 vtkm::cont::Invoker supports both Masks and Scatter

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Kenneth Moreland <kmorel@sandia.gov>
Merge-request: !1876
2019-09-30 12:03:31 -04:00
Hank Childs
9b46a0f026 fix cast warning 2019-09-29 12:03:15 -07:00
Robert Maynard
445e4d8186 vtkm::cont::Invoker supports both Masks and Scatter
Fixes #420
2019-09-27 17:11:18 -04:00
Hank Childs
440c15ea97 explicitly add header; addresses nasty issue due to robot autoformat 2019-09-27 13:23:20 -07:00
Hank Childs
c3fd04c498 remove trailing whitespace 2019-09-27 12:42:10 -07:00