Nikhila Ravi
c3d636dc8c
Cuda updates
...
Summary:
Updates to:
- enable cuda kernel launches on any GPU (not just the default)
- cuda and contiguous checks for all kernels
- checks to ensure all tensors are on the same device
- error reporting in the cuda kernels
- cuda tests now run on a random device not just the default
Reviewed By: jcjohnson, gkioxari
Differential Revision: D21215280
fbshipit-source-id: 1bedc9fe6c35e9e920bdc4d78ed12865b1005519
2020-04-24 09:11:04 -07:00
Jeremy Reizenstein
85c396f822
avoid using torch/extension.h in cuda
...
Summary:
Use aten instead of torch interface in all cuda code. This allows the cuda build to work with pytorch 1.5 with GCC 5 (e.g. the compiler of ubuntu 16.04LTS). This wasn't working. It has been failing with errors like the below, perhaps due to a bug in nvcc.
```
torch/include/torch/csrc/api/include/torch/nn/cloneable.h:68:61: error: invalid static_cast from type ‘const torch::OrderedDict<std::basic_string<char>, std::shared_ptr<torch::nn::Module> >’ to type ‘torch::OrderedDict<std::basic_string<char>, std::shared_ptr<torch::nn::Module> >
```
Reviewed By: nikhilaravi
Differential Revision: D21204029
fbshipit-source-id: ca6bdbcecf42493365e1c23a33fe35e1759fe8b6
2020-04-23 10:26:17 -07:00
Jeremy Reizenstein
6207c359b1
spelling and flake
...
Summary: mostly recent lintish things
Reviewed By: nikhilaravi
Differential Revision: D21089003
fbshipit-source-id: 028733c1d875268f1879e4481da475b7100ba0b6
2020-04-17 10:50:22 -07:00
Georgia Gkioxari
487d4d6607
point mesh distances
...
Summary:
Implementation of point to mesh distances. The current diff contains two types:
(a) Point to Edge
(b) Point to Face
```
Benchmark Avg Time(μs) Peak Time(μs) Iterations
--------------------------------------------------------------------------------
POINT_MESH_EDGE_4_100_300_5000_cuda:0 2745 3138 183
POINT_MESH_EDGE_4_100_300_10000_cuda:0 4408 4499 114
POINT_MESH_EDGE_4_100_3000_5000_cuda:0 4978 5070 101
POINT_MESH_EDGE_4_100_3000_10000_cuda:0 9076 9187 56
POINT_MESH_EDGE_4_1000_300_5000_cuda:0 1411 1487 355
POINT_MESH_EDGE_4_1000_300_10000_cuda:0 4829 5030 104
POINT_MESH_EDGE_4_1000_3000_5000_cuda:0 7539 7620 67
POINT_MESH_EDGE_4_1000_3000_10000_cuda:0 12088 12272 42
POINT_MESH_EDGE_8_100_300_5000_cuda:0 3106 3222 161
POINT_MESH_EDGE_8_100_300_10000_cuda:0 8561 8648 59
POINT_MESH_EDGE_8_100_3000_5000_cuda:0 6932 7021 73
POINT_MESH_EDGE_8_100_3000_10000_cuda:0 24032 24176 21
POINT_MESH_EDGE_8_1000_300_5000_cuda:0 5272 5399 95
POINT_MESH_EDGE_8_1000_300_10000_cuda:0 11348 11430 45
POINT_MESH_EDGE_8_1000_3000_5000_cuda:0 17478 17683 29
POINT_MESH_EDGE_8_1000_3000_10000_cuda:0 25961 26236 20
POINT_MESH_EDGE_16_100_300_5000_cuda:0 8244 8323 61
POINT_MESH_EDGE_16_100_300_10000_cuda:0 18018 18071 28
POINT_MESH_EDGE_16_100_3000_5000_cuda:0 19428 19544 26
POINT_MESH_EDGE_16_100_3000_10000_cuda:0 44967 45135 12
POINT_MESH_EDGE_16_1000_300_5000_cuda:0 7825 7937 64
POINT_MESH_EDGE_16_1000_300_10000_cuda:0 18504 18571 28
POINT_MESH_EDGE_16_1000_3000_5000_cuda:0 65805 66132 8
POINT_MESH_EDGE_16_1000_3000_10000_cuda:0 90885 91089 6
--------------------------------------------------------------------------------
Benchmark Avg Time(μs) Peak Time(μs) Iterations
--------------------------------------------------------------------------------
POINT_MESH_FACE_4_100_300_5000_cuda:0 1561 1685 321
POINT_MESH_FACE_4_100_300_10000_cuda:0 2818 2954 178
POINT_MESH_FACE_4_100_3000_5000_cuda:0 15893 16018 32
POINT_MESH_FACE_4_100_3000_10000_cuda:0 16350 16439 31
POINT_MESH_FACE_4_1000_300_5000_cuda:0 3179 3278 158
POINT_MESH_FACE_4_1000_300_10000_cuda:0 2353 2436 213
POINT_MESH_FACE_4_1000_3000_5000_cuda:0 16262 16336 31
POINT_MESH_FACE_4_1000_3000_10000_cuda:0 9334 9448 54
POINT_MESH_FACE_8_100_300_5000_cuda:0 4377 4493 115
POINT_MESH_FACE_8_100_300_10000_cuda:0 9728 9822 52
POINT_MESH_FACE_8_100_3000_5000_cuda:0 26428 26544 19
POINT_MESH_FACE_8_100_3000_10000_cuda:0 42238 43031 12
POINT_MESH_FACE_8_1000_300_5000_cuda:0 3891 3982 129
POINT_MESH_FACE_8_1000_300_10000_cuda:0 5363 5429 94
POINT_MESH_FACE_8_1000_3000_5000_cuda:0 20998 21084 24
POINT_MESH_FACE_8_1000_3000_10000_cuda:0 39711 39897 13
POINT_MESH_FACE_16_100_300_5000_cuda:0 5955 6001 84
POINT_MESH_FACE_16_100_300_10000_cuda:0 12082 12144 42
POINT_MESH_FACE_16_100_3000_5000_cuda:0 44996 45176 12
POINT_MESH_FACE_16_100_3000_10000_cuda:0 73042 73197 7
POINT_MESH_FACE_16_1000_300_5000_cuda:0 8292 8374 61
POINT_MESH_FACE_16_1000_300_10000_cuda:0 19442 19506 26
POINT_MESH_FACE_16_1000_3000_5000_cuda:0 36059 36194 14
POINT_MESH_FACE_16_1000_3000_10000_cuda:0 64644 64822 8
--------------------------------------------------------------------------------
```
Reviewed By: jcjohnson
Differential Revision: D20590462
fbshipit-source-id: 42a39837b514a546ac9471bfaff60eefe7fae829
2020-04-11 00:21:24 -07:00