Commit Graph

1709 Commits

Author SHA1 Message Date
Kenneth Moreland
b20c4fc8ef Fix test that fails during optimization.
After the most recent changes, I noticed that the matrix unit test
started failing for some optimized compiles. I'm not sure if it was
these changes or others. What I think happened is that it was a check
for a Matrix operation that should be invalid. It checked the valid flag
without checking the data (which, of course, is invalid). However, I
think the optimizer saw that the data generated was never used so
removed that part of the computation so the invalid flag was never set.
Add a condition that uses the result even though it should never be
called to hopefully force the compiler to compute it.
2016-04-21 11:02:45 -06:00
Kenneth Moreland
b87cac7492 Fix warnings about unused parameters. 2016-04-21 09:32:02 -06:00
Kenneth Moreland
860649acf6 Fix error about redefinition of GetMessageA or GetMessageB
If Error.h was loaded before windows.h on windows compilers, then it
happily defined GetMessage and then GetMessageA and GetMessageB. However,
if the load order was reversed, then GetMessage is a macro that changes
it to GetMessageA or GetMessageB and you get an error about the same
method being declared twice.

Get around the problem by not defining GetMessage if it is already
declared as a macro.
2016-04-21 08:23:34 -06:00
Kenneth Moreland
cc497e6a1b Remove cont/Assert.h and exec/Assert.h
These asserts are consolidated into the unified Assert.h. Also made some
minor edits to add asserts where appropriate and a little bit of
reconfiguring as found.
2016-04-20 15:41:14 -06:00
Kenneth Moreland
2ddad8bcc5 Add POSIX assert wrapper
Add in the vtkm namespace an assert macro (technically VTKM_ASSERT) that
basically replicates the functionality of the POSIX assert macro. This
form of assert is set to replace the separate control/exection asserts.

It has been decided that an assert that throws an exception instead of
terminating the program is not all that great of a feature and it causes
some limitations on how it is used. The next commit will remove the
other forms of VTK-m assert.
2016-04-20 14:19:22 -06:00
Kenneth Moreland
eede71f918 Merge branch 'fix-vector-analysis-failure' into 'master'
Fix issues with UnitTestVectorAnalysis for MSVC.

We have been having a problem with one of the MSVC dashboards failing
the UnitTestVectorAnalysis test. The test just dies in the middle with
no indication of what problematic thing was run.

After playing with this for quite a while, I found that it could by
triggered exclusively in the Lerp test. I further found that if I
switched the order of the test and check Lerp the test worked. This is
strange behavior and leads me to believe one of the following is going
on:

1. There is an error such as an invalid memory access happening in
the VTK-m code that is sometimes corrupting the stack.
2. Somewhere there is an expression that has undefined behavior. Usually
it works OK, but some optimization sequence causes it to fail.
3. There is a bug in one of the compiler's optimizations.

It concerns me that I cannot identify exactly where the problem lies.
I've looked very hard at the vtkm::Vec and vtkm::Lerp code to try to find
possible problems, but I have not been able to find anything.

See merge request !399
2016-04-20 12:05:31 -04:00
Kenneth Moreland
0efd08d3ef Merge branch 'move-newtons-method' into 'master'
Move NewtonsMethod to the vtkm package

All the other math functions are in the vtkm package. This one was in
vtkm::exec because it uses a callback method. This can be problematic on
CUDA the the declaration of NewtonsMethod does not match the callback
method. However, we now have a VTKM_SUPPRESS_EXEC_WARNINGS macro that
allows a VTKM_EXEC_CONT_EXPORT function (like NewtonsMethod) to call
either a VTKM_EXEC_EXPORT or VTKM_CONT_EXPORT without a warning.

See merge request !398
2016-04-19 16:50:17 -04:00
Kenneth Moreland
7e1b9b8886 Fix issues with UnitTestVectorAnalysis for MSVC.
We have been having a problem with one of the MSVC dashboards failing
the UnitTestVectorAnalysis test. The test just dies in the middle with
no indication of what problematic thing was run.

After playing with this for quite a while, I found that it could by
triggered exclusively in the Lerp test. I further found that if I
switched the order of the test and check Lerp the test worked. This is
strange behavior and leads me to believe one of the following is going
on:

1. There is an error such as an invalid memory access happening in
the VTK-m code that is sometimes corrupting the stack.
2. Somewhere there is an expression that has undefined behavior. Usually
it works OK, but some optimization sequence causes it to fail.
3. There is a bug in one of the compiler's optimizations.

It concerns me that I cannot identify exactly where the problem lies.
I've looked very hard at the vtkm::Vec and vtkm::Lerp code to try to find
possible problems, but I have not been able to find anything.
2016-04-19 14:39:16 -06:00
Robert Maynard
7b608c2470 Merge topic 'fix_cell_to_point_count'
c24d4395 Change max # of cells associated with a point in a 3-D grid from 6 to 8.

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Robert Maynard <robert.maynard@kitware.com>
Acked-by: Kenneth Moreland <kmorel@sandia.gov>
Merge-request: !395
2016-04-15 15:18:41 -04:00
Kenneth Moreland
c503e0ce8a Move NewtonsMethod to the vtkm package
All the other math functions are in the vtkm package. This one was in
vtkm::exec because it uses a callback method. This can be problematic on
CUDA the the declaration of NewtonsMethod does not match the callback
method. However, we now have a VTKM_SUPPRESS_EXEC_WARNINGS macro that
allows a VTKM_EXEC_CONT_EXPORT function (like NewtonsMethod) to call
either a VTKM_EXEC_EXPORT or VTKM_CONT_EXPORT without a warning.
2016-04-14 14:36:02 -06:00
Kenneth Moreland
331759099a Merge branch 'consistent-make-arrayhandlecompositevector-return' into 'master'
Have make_ArrayHandleCompositeVector consistent with fancy arrays

Previously the make_ArrayHandleCompositeVector template was declared in
such a way that if you passed it a fancy array handle, it would change
the type to a base ArrayHandle with a fancy storage. This was
inconsistent with types generated from ArrayHandleCompositeVectorType
when using the same fancy array handle types. This change makes that
more consistent.

See merge request !396
2016-04-14 15:35:03 -04:00
Kenneth Moreland
da82d248c9 Merge branch 'rename_opengl_to_interop' into 'master'
Rename the opengl folder / namespace to interop.

To clarify what functionality the classes inside provide.

See merge request !394
2016-04-14 12:07:12 -04:00
Kenneth Moreland
63f8c8abcb Have make_ArrayHandleCompositeVector consistent with fancy arrays
Previously the make_ArrayHandleCompositeVector template was declared in
such a way that if you passed it a fancy array handle, it would change
the type to a base ArrayHandle with a fancy storage. This was
inconsistent with types generated from ArrayHandleCompositeVectorType
when using the same fancy array handle types. This change makes that
more consistent.
2016-04-14 09:25:40 -06:00
T.J. Corona
c24d439532 Change max # of cells associated with a point in a 3-D grid from 6 to 8. 2016-04-13 17:44:29 -04:00
Robert Maynard
1ec3bc0e7a Rename the opengl folder / namespace to interop.
To clarify what functionality the classes inside provide.
2016-04-13 15:52:15 -04:00
Robert Maynard
59f5f24845 Merge topic 'simplify_cellset_permutation_templates'
6883a5ac Simplify using CellSetPermutation by providing a default permutation type.

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !391
2016-04-13 09:17:01 -04:00
Robert Maynard
6883a5ac94 Simplify using CellSetPermutation by providing a default permutation type.
Previously you had to explicitly state you wanted a CellSetPermutation
with an ArrayHanlde of Id's, now that is done automatically.
2016-04-12 14:24:51 -04:00
Matt Larsen
5f66fb0015 Merge topic 'fix/remove_unused_file'
80b01154 removing unused file

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !393
2016-04-11 18:23:14 -04:00
Matt Larsen
80b011542e removing unused file 2016-04-11 12:12:44 -07:00
T.J. Corona
3c1fb731a9 Merge topic 'marching_cubes_inline_constructor'
2f75d4ee Declare MarchingCubes constructor inline to avoid symbol clashes.

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Robert Maynard <robert.maynard@kitware.com>
Merge-request: !392
2016-04-11 10:20:03 -04:00
T.J. Corona
2f75d4eec6 Declare MarchingCubes constructor inline to avoid symbol clashes. 2016-04-11 10:16:49 -04:00
Kenneth Moreland
4b725d0dbf Merge branch 'minor-array-handle-changes' into 'master'
Some minor changes to fancy array handles.

This are just some minor things I ran into while documenting these classes.
One change is just an error in a comment. The other change allows you
to specify the type in make_ArrayHandleCast as a template argument instead
of creating an instance.

See merge request !388
2016-04-10 10:42:50 -04:00
Robert Maynard
bb60abb1af Merge topic 'correct_bug_in_TestAtomicArrayWorklet'
6ac50adc Correct an off by 1 error in UnitTestWorkletMapFieldWholeArray.

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !390
2016-04-08 00:07:36 -04:00
Robert Maynard
6ac50adcee Correct an off by 1 error in UnitTestWorkletMapFieldWholeArray.
The sum presumption was presuming 1 to 10 inclusive, when we actually have
0 to 9 inclusive.
2016-04-07 22:59:59 -04:00
Robert Maynard
42836b5123 Merge topic 'correct_rendering_warnings'
27f23480 Correct more warnings and formatting issues with vtkm::rendering.
4269e007 Only build the rendering example if MESA has been found.
daf419fe Correct unused and casting warnings in Scene.h

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !389
2016-04-07 20:50:20 -04:00
Robert Maynard
27f23480b3 Correct more warnings and formatting issues with vtkm::rendering. 2016-04-07 20:07:22 -04:00
Robert Maynard
4269e0070c Only build the rendering example if MESA has been found. 2016-04-07 20:07:22 -04:00
Robert Maynard
daf419feb7 Correct unused and casting warnings in Scene.h 2016-04-07 20:07:22 -04:00
Robert Maynard
465250f82c Merge topic 'filter_corrections'
779bd587 Bug: CellAverage output storage type can be different than the input.
c0bd0a67 Add missing new lines and #endif comments to vtkm::filter

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !387
2016-04-07 19:50:40 -04:00
Kenneth Moreland
6543ae4cb8 Some minor changes to fancy array handles.
This are just some minor things I ran into while documenting these classes.
One change is just an error in a comment. The other change allows you
to specify the type in make_ArrayHandleCast as a template argument instead
of creating an instance.
2016-04-07 16:48:49 -06:00
Robert Maynard
779bd58792 Bug: CellAverage output storage type can be different than the input. 2016-04-07 17:09:46 -04:00
Robert Maynard
c0bd0a67d4 Add missing new lines and #endif comments to vtkm::filter 2016-04-07 17:09:11 -04:00
Kenneth Moreland
0bcd172d39 Merge branch 'atomic-improvements' into 'master'
Add AtomicArrayInOut ControlSignature tag

This makes it easier to pass arrays with atomics to a worklet.

See merge request !382
2016-04-05 15:23:37 -04:00
Robert Maynard
6989f15159 Merge topic 'demo_example'
d8175015 Fixed issues with NVCC and anonymous namespace compilation issues.
12ffd536 Suppress false positive warnings from nvcc about host/device.
1edc4650 Add a demo for GTC2016 that covers io/filters/rendering.
7543bfe1 Fixed warning about unused variables in RenderSurface.
e0f496ce Fix warnings about unreachable break statement in ParametricCoordinates.
0c36aef5 Fix warnings about unreachable break statement in CellInterpolate.
ec1e1a3a Fix warnings about unreachable break statement in CellDerivative.
265b778a Fix unused warning in VTKDataSetReaderBase.
...

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !386
2016-04-01 16:25:32 -04:00
Robert Maynard
d817501565 Fixed issues with NVCC and anonymous namespace compilation issues. 2016-04-01 15:50:52 -04:00
Robert Maynard
12ffd536fd Suppress false positive warnings from nvcc about host/device. 2016-04-01 15:50:52 -04:00
Robert Maynard
1edc465055 Add a demo for GTC2016 that covers io/filters/rendering. 2016-04-01 15:50:52 -04:00
Robert Maynard
7543bfe159 Fixed warning about unused variables in RenderSurface. 2016-04-01 15:50:52 -04:00
Robert Maynard
e0f496ceec Fix warnings about unreachable break statement in ParametricCoordinates. 2016-04-01 15:50:52 -04:00
Robert Maynard
0c36aef539 Fix warnings about unreachable break statement in CellInterpolate. 2016-04-01 15:50:51 -04:00
Robert Maynard
ec1e1a3adf Fix warnings about unreachable break statement in CellDerivative. 2016-04-01 13:47:41 -04:00
Robert Maynard
265b778ab9 Fix unused warning in VTKDataSetReaderBase. 2016-03-31 14:37:50 -04:00
Robert Maynard
af2ae8e6e2 Correct issue in matrix mult in View. 2016-03-30 11:35:01 -04:00
Robert Maynard
660ee99752 vtkm::rendering::Triangluator now support CellSetSingleType of triangles. 2016-03-30 10:14:21 -04:00
Robert Maynard
43bb6acdb8 Merge topic 'mclarsen/vtk-m-rendering'
76b6179a Add missing copyright headers.
6a2a47d3 Remove order from new entries in MakeTestDataSet
d7c295f4 added rectilinear to test.
a8c7f92d Move mesa package to right place. Also, add in code for rectlinear mesh.
294b73e0 Make the rendering part of the build optional. Add the mesa libs to the link line.
719b715b Support for explicit cell sets.
98837735 Corrected error in projection matrix that was causing mismatches with ray tracing image and depth buffers.
f9c6f9cd cleanup of code.
...

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !383
2016-03-29 13:15:00 -04:00
Robert Maynard
220b0f7959 Merge topic 'filter_coordinate_casting'
2d3d157e Properly use the policy to determine the coordiante policy conversions.

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: T.J. Corona <tj.corona@kitware.com>
Merge-request: !385
2016-03-29 12:50:06 -04:00
Robert Maynard
2d3d157ecd Properly use the policy to determine the coordiante policy conversions. 2016-03-29 10:12:49 -04:00
Chuck Atkins
19def117b5 Merge topic 'fix-missing-switch-default'
8d5833ef Add a missing switch default to cleanup more warnings.

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Robert Maynard <robert.maynard@kitware.com>
Merge-request: !384
2016-03-28 11:34:08 -04:00
Robert Maynard
76b6179abf Add missing copyright headers. 2016-03-28 11:16:35 -04:00
Chuck Atkins
8d5833ef41 Add a missing switch default to cleanup more warnings. 2016-03-28 09:51:04 -04:00