Commit Graph

1696 Commits

Author SHA1 Message Date
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
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
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
Hank Childs
3abfea0532 remove unneeded comments 2019-09-27 12:36:53 -07:00
Hank Childs
dd57d20231 incorporate Steven's RSS fix 2019-09-27 07:57:20 -07:00
Hank Childs
38c00e0571 incorporate Steven changes 2019-09-26 17:20:01 -07:00
Hank Childs
9084b6dcbe infrastructure for rss 2019-09-25 16:46:39 -07:00
Brad King
9a906e4cbf Merge topic 'use-vtkc'
e08d862f9 Use Light-Weight Cell Library
e56b34fc9 Merge branch 'upstream-vtkc' into use-vtkc
e909edd61 vtkc 2019-09-24 (cdc72582)
2a6aadc69 Add update file for VTK-c

Acked-by: Kenneth Moreland <kmorel@sandia.gov>
Merge-request: !1852
2019-09-25 09:21:00 -04:00
Sujin Philip
e08d862f94 Use Light-Weight Cell Library 2019-09-24 21:22:10 -04:00
Hank Childs
e106dc6bff changes from peer review 2019-09-24 18:12:52 -07:00
Hank Childs
f4229c2e9d change variable half to be hhalf to prevent collision with NVIDIA global var 2019-09-23 23:35:03 -07:00
Hank Childs
c75fdeef6a massage float/double cast issue 2019-09-23 23:26:12 -07:00
Hank Childs
fcc169fdf0 finish copying over changes from failed firs git 2019-09-23 22:30:49 -07:00
Hank Childs
8af25aca48 move cellmetrics to worklet 2019-09-23 22:27:12 -07:00
Roxana Bujack
3b2fb5c8ab Merge topic 'realRadiusFix'
9c41daa2b change input to spacing and radius to make it more intuitive
b991d3c6b merge style differences
7d0ee16fd add the real double radius for scaling

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1825
2019-09-18 16:36:43 -04:00