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.
The previous implementation of `RuntimeDeviceTracker` occasionally
outputted a log at level `Info` about devices being enabled or disabled.
The problem was that the information given was inconsistent (so it would
sometimes announce one change but not announce a different corrective
change). This could cause weird confusions. For example, when you used a
`ColorTable`, it would use a `ScopedRuntimeDeviceTracker` to temporarily
force the device to `Serial`. The log will just tell you that the device
was forced to `Serial` but never tell you that the devices where
restored to include actual parallel devices.
This change helps correct these with the following changes:
* Added a new log level, `DevicesEnabled`, that is a higher level than
`Info`. All logging from `RuntimeDeviceTracker` goes to this log
level.
* Change the logging output of `RuntimeDeviceTracker` to output a list
of currently enabled devices whenever a change happens. That way you
don't have to guess what happend for each change.
* Change `ScopedRuntimeDeviceTracker` to log whenever the scope is
entered or left.
The tao ones won't compile otherwise. This should be okay, since these
are all just compile time helpers on host-only functions -- they won't
generate different sized data structures etc if we mix them in the
same build.
476800fe4 Have MeshQuality use the superclass' SetOutputFieldName
216335ab4 Have MeshQuality inherit from FilterField instead of FilterCell
Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Hank <hank@uoregon.edu>
Merge-request: !1872
Previously MeshQuality defined its own SetOutputName method which broke
convention as was confusing. Deleted the output name defined in
MeshQuality and instead use the one defined in the superclass.
82a58c2f0 Fix error with whitespace at end of file
Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Robert Maynard <robert.maynard@kitware.com>
Merge-request: !1867
The VTK file reader caused an error to be thrown when reading a file
that had a METADATA section at the end of the file. The problem was that
the METADATA section had some whitespace after its last line (which is
probably typical). This caused an eof check to pass and then a
subsequent search for a token to fail.
The solution was to eat the whitespace after the METADATA section to get
the reader at the next token or in eof condition if it is at the end of
the file.
e106dc6bf changes from peer review
f4229c2e9 change variable half to be hhalf to prevent collision with NVIDIA global var
c75fdeef6 massage float/double cast issue
fcc169fdf finish copying over changes from failed firs git
8af25aca4 move cellmetrics to worklet
338b87d9f Merge branch 'master' of https://gitlab.kitware.com/vtk/vtk-m into add-16-cell-metrics
Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Kenneth Moreland <kmorel@sandia.gov>
Acked-by: Abhishek Yenpure <abhishek@uoregon.edu>
Merge-request: !1865
8edfd8eba using vtkm aligned union for all intel compilers
Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Robert Maynard <robert.maynard@kitware.com>
Merge-request: !1863
99cbbf2ff Correct a regression in ArrayHandleDecorator with VisualStudio 2017
e93ce607f Increase VecTraits GCC workaround to be for all GCC 4 and 5 versions
Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Kenneth Moreland <kmorel@sandia.gov>
Merge-request: !1860