Commit Graph

437 Commits

Author SHA1 Message Date
Chun-Ming Chen
6ec7f4469d indexed sortByKey in serial 2015-06-08 12:23:03 -04:00
Robert Maynard
252c8563ed Merge branch 'allow_creating_output_arrayhandle_zip' 2015-06-08 10:46:57 -04:00
Robert Maynard
0bd7d5e0f5 Merge branch 'schedule_id3_serial' 2015-06-08 10:38:20 -04:00
Robert Maynard
d47ba3f222 Merge branch 'reduce_nvcc_namespace_issues' 2015-06-08 10:37:40 -04:00
Robert Maynard
95cf2edc37 Allow the creation of array handle zips.
We now allow the user to use array handle zips as output with knowing
the size of the output.
2015-06-08 10:17:46 -04:00
Robert Maynard
2d6bdd1496 Correct a bug in the TBB Schedule 3D implementation. 2015-06-08 09:49:08 -04:00
Robert Maynard
34c005104f Simplify the implementation of Schedule 3D for the serial background. 2015-06-08 09:48:46 -04:00
Robert Maynard
1d595b868c Make Schedule 3D use a larger dim size to throughly test implementations.
A smaller dim size can hide problems with algorithms that don't sum properly,
or do to much math per iteration.
2015-06-08 09:47:17 -04:00
Robert Maynard
eb572169a5 Make sure each worklet test uses a different namespace.
Otherwise NVCC compiler has issues are we are breaking ODR, since it smashes
all these files into a single compilation unit.
2015-06-08 09:02:23 -04:00
Robert Maynard
bdbced9c4f Merge branch 'add-simple-cell-worklets' 2015-06-08 08:53:05 -04:00
Robert Maynard
8a8fc9ea73 Remove unused code from TestingDeviceAdapter. 2015-06-08 08:45:38 -04:00
Robert Maynard
18dbdd5d52 Add in a better version of 3d scheduling to the serial backend.
This is the first step to having better 3d scheduling for the serial backend.
While this doesn't improve the performance, it lays the foundation for
allowing I,J,K indexing when iterating Cells of a uniform grid.
2015-06-08 08:32:07 -04:00
Robert Maynard
98b13aae2f Merge branch 'allow_modification_of_user_storage' 2015-06-08 08:26:33 -04:00
Robert Maynard
441feb151f Merge branch 'fix-missing-endoffile-newline' 2015-06-08 08:24:57 -04:00
Sujin Philip
4c51138f60 Add new lines at end of files. 2015-06-05 13:14:28 -04:00
Sujin Philip
0127e4d9d7 Add cell average worklet 2015-06-05 12:48:29 -04:00
Robert Maynard
b43fb01ff0 Redesign StorageBasic to allow modification of user provided memory.
The driving desire for this change was to make vtk-m ArrayHandle behave more
like the standard vector. The canonical example of what we want to support is:

```
std::vector<vtkm::Id> values;
values.resize(100);
vtkm::cont::ArrayHandle<vtkm::Id> array = vtkm::cont::make_ArrayHandle(values);
vtkm::cont::DeviceAdapterAlgorithm<DeviceAdapter>::Sort(array);
```

And with-out the ability to modify user provided memory, this was impossible.
2015-06-05 10:32:48 -04:00
Robert Maynard
73d27435f1 Merge branch 'dynamic_handles_to_worklet_warnings' 2015-06-04 13:49:28 -04:00
Robert Maynard
e1de1dc5b8 Merge branch 'add_multi_param_worklet_test' 2015-06-04 13:49:20 -04:00
Robert Maynard
60e8166290 Add a simple example on how to handle multiple params to a worklet.
Mainly showing how to constrain the type for all parameters to be the
same, and to throw an error otherwise.
2015-06-04 13:12:52 -04:00
Robert Maynard
ae9914e9c8 Add full support for dynamic array handles to Topology test worklets.
Currently the topology test worklets only worked for Float32, and produced
warnings when generating the Float64 code paths, this solves this problem.
2015-06-04 13:11:49 -04:00
Robert Maynard
95f58564c9 Merge branch 'datamodel_conversion_warnings' 2015-06-04 09:28:50 -04:00
Robert Maynard
342a9989a5 Correct double to float conversion warnings. 2015-06-04 09:06:47 -04:00
Robert Maynard
85538cfa25 Merge branch 'datamodel-design' 2015-06-03 15:19:53 -04:00
Robert Maynard
0a433303e6 Correct headers to have the new copyright. 2015-06-03 15:06:43 -04:00
Robert Maynard
6af4961e40 Remove unneeded test file. 2015-06-03 15:06:32 -04:00
Robert Maynard
7f2ee8d050 Merge branch 'master' into datamodel-design 2015-06-03 14:36:53 -04:00
Robert Maynard
48c221ef67 Merge branch 'default-to-64bit-ids' 2015-06-03 11:35:00 -04:00
Sujin Philip
e556748d2c Make 64 bit ids as default 2015-06-03 10:37:23 -04:00
Robert Maynard
0748cdb320 Merge branch 'implicit_shortening_on_mult' 2015-06-03 08:46:30 -04:00
Robert Maynard
d15380b4ca Merge branch 'suppress_warnings_in_tbb' 2015-06-03 08:46:22 -04:00
Robert Maynard
e0e6ffb705 Suppress warnings generated by TBB code, which we can change.
These warnings are caused by tbb code, which we have zero control over.
2015-06-02 09:42:40 -04:00
Robert Maynard
f427d6d8d8 Cast back to int8/16 after compiler does integer promotion.
When multiplying integer values of a width less than an integer c++ actually
converts up to an integer implicitly. So we silence the warnings that the
result of the multiply could be larger than the original type. If people want
to do multiplies on int8/16 they better know what they are doing.
2015-06-02 09:10:46 -04:00
Robert Maynard
9332becc47 Merge branch 'correct_vec_constructor' 2015-06-01 17:20:34 -04:00
Robert Maynard
f88992e2f7 cuda can't handle invoking worklets from anonymous namespaces. 2015-06-01 17:20:02 -04:00
Robert Maynard
3a532160c9 cuda device adapter now support different value types for keys and values. 2015-06-01 17:19:33 -04:00
Robert Maynard
d2b8e922a2 Merge branch 'correct_vec_constructor' 2015-06-01 14:51:22 -04:00
Robert Maynard
98bd557a4f TestingDeviceAdapter now doesn't use initializer lists for vtkm::Vec
Since initializer lists are a c++11 feature we shouldn't use them.
2015-06-01 14:50:35 -04:00
Robert Maynard
ca3a91ef6e Merge branch 'add-tbb-backend' 2015-06-01 14:31:01 -04:00
Sujin Philip
08f88b1cb9 Add TBB backend. 2015-06-01 13:57:37 -04:00
Robert Maynard
c2ff4d5870 Merge branch 'correct_reduce_by_key_serial' 2015-06-01 12:33:31 -04:00
Chun-Ming Chen
7ea9563d19 Fixed bug in ReduceByKey 2015-06-01 12:33:08 -04:00
Robert Maynard
81450f2317 CellSetExplicit can now use different storage backends.
CellSetExplicit can now use different storage backends to allow
for cheaper representations of the data. For example a pool of triangles
can now implicit handles for shape and num indices.

This does raise the question if runtime polymorphism is the best approach
for CellSet, or if we should do some from of CRTP.
2015-06-01 09:55:53 -04:00
Robert Maynard
ecec6945bf ExplicitConnectivity can now use different storage backends.
ExplicitConnectivity can now use different storage backends to allow
for cheaper representations of the data. For example a pool of triangles
can now implicit handles for shape and num indices.
2015-06-01 09:42:10 -04:00
Robert Maynard
9eb84295fa correct a bad file being in the cmakelists. 2015-05-29 15:53:20 -04:00
Robert Maynard
25722fec2e Merge 'origin/datamodel-design' into datamodel-design
Conflicts:
	vtkm/cont/ExplicitConnectivity.h
	vtkm/cont/Field.h
2015-05-29 13:54:10 -04:00
Dave Pugmire
089864d6f3 minor fixes and code cleanup for merge to trunk.
added vtkm_cont_export to ExplicitConnectivity classes.
2015-05-29 12:48:31 -04:00
Dave Pugmire
4af48552b8 added vtkm_cont_export 2015-05-29 12:22:00 -04:00
Robert Maynard
7552509e4b Include all the new DataSet header in CMakeLists.
This will make sure that we properly install these headers.
2015-05-29 12:07:46 -04:00
Robert Maynard
9e75fb9ca3 ExplicitConnectivity now uses ArrayHandle.allocate + std::copy in FillViaCopy.
The original implementation use the naive approach of the device adapter
to copy the memory to the dynamic array handle. The issue with this approach
is that it would do a upload to device, and than a copy on device. Instead
we should prefer a copy on host, and than an upload to device.
2015-05-29 10:42:15 -04:00