Go to file
Kenneth Moreland f7789f0ed7 Fix issue with const types in Thrust array management
Previously, there was a declaration ConstArrayPortalFromThrust<const T>
in ArrayManagerExecutionThrustDevice. This proved problematic because
values read from the array in the worklet were typed as const T rather
than simply T. Any Vec or Matrix built from that type would then fail
because they are not meant to work with a const value (which means they
have to be set on construction and never changed.

Instead, declare ConstArrayPortalFromThrust<T> and internally set all
the Thrust pointers to have type const T. Also declare other thrust
pointers used as method parameters to have const T rather than T. This
should work as conversion from T to const T should be fine, but not the
other way around.
2015-11-06 18:05:21 -07:00
CMake Fix line endings. 2015-10-20 12:32:29 -06:00
docs The Copyright statement now has all the periods in the correct location. 2015-05-21 10:30:11 -04:00
examples Fix spacing in Isosurface test code. 2015-11-06 18:05:20 -07:00
vtkm Fix issue with const types in Thrust array management 2015-11-06 18:05:21 -07:00
CMakeLists.txt More CMake policies that we need to set. 2015-10-22 12:21:34 -04:00
CONTRIBUTING.md Add a contributing guide to vtk-m. 2015-07-29 17:33:30 -04:00
CTestConfig.cmake The Copyright statement now has all the periods in the correct location. 2015-05-21 10:30:11 -04:00
LICENSE.txt Fix compile time errors 2015-08-21 11:17:10 -07:00
README.md Update ReadMe to reference gitlab. 2015-05-13 08:45:52 -04:00

VTK-m

One of the biggest recent changes in high-performance computing is the increasing use of accelerators. Accelerators contain processing cores that independently are inferior to a core in a typical CPU, but these cores are replicated and grouped such that their aggregate execution provides a very high computation rate at a much lower power. Current and future CPU processors also require much more explicit parallelism. Each successive version of the hardware packs more cores into each processor, and technologies like hyperthreading and vector operations require even more parallel processing to leverage each cores full potential.

VTK-m is a toolkit of scientific visualization algorithms for emerging processor architectures. VTK-m supports the fine-grained concurrency for data analysis and visualization algorithms required to drive extreme scale computing by providing abstract models for data and execution that can be applied to a variety of algorithms across many different processor architectures.

Getting VTK-m

The VTK-m repository is located at https://gitlab.kitware.com/vtk/vtk-m

VTK-m dependencies are:

git clone https://gitlab.kitware.com/vtk/vtk-m.git vtkm
mkdir vtkm-build
cd vtkm-build
cmake-gui ../vtkm

A detailed walk-through of installing and building VTK-m can be found on our Contributing page