-
Notifications
You must be signed in to change notification settings - Fork 10
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Add parallelization option to VertexErrorFunction (#227)
Summary: Pull Request resolved: #227 Added thread-count option to VertexErrorFunction for getGradient and getJacobian for speed improvements. Default value of 0 runs serial version. Benchmark results : Minor impact on performance when enabling multi-threading with low constraint count, 3-5x speedup with higher constraint counts. BM_VertexErrorFunction_getJacobian/0/10 252 us 250 us 3072 items_per_second=39.9765k/s max_threads=0 num_const=10 BM_VertexErrorFunction_getJacobian/4/10 241 us 238 us 2726 items_per_second=42.046k/s max_threads=4 num_const=10 BM_VertexErrorFunction_getJacobian/16/10 254 us 252 us 2520 items_per_second=39.6628k/s max_threads=16 num_const=10 BM_VertexErrorFunction_getJacobian/64/10 300 us 298 us 2342 items_per_second=33.5753k/s max_threads=64 num_const=10 BM_VertexErrorFunction_getJacobian/0/100 293 us 291 us 2331 items_per_second=343.775k/s max_threads=0 num_const=100 BM_VertexErrorFunction_getJacobian/4/100 290 us 288 us 2422 items_per_second=347.618k/s max_threads=4 num_const=100 BM_VertexErrorFunction_getJacobian/16/100 317 us 314 us 1949 items_per_second=318.226k/s max_threads=16 num_const=100 BM_VertexErrorFunction_getJacobian/64/100 447 us 444 us 1529 items_per_second=225.36k/s max_threads=64 num_const=100 BM_VertexErrorFunction_getJacobian/0/1000 895 us 888 us 734 items_per_second=1.12596M/s max_threads=0 num_const=1000 BM_VertexErrorFunction_getJacobian/4/1000 569 us 565 us 1210 items_per_second=1.77072M/s max_threads=4 num_const=1000 BM_VertexErrorFunction_getJacobian/16/1000 488 us 484 us 1430 items_per_second=2.06509M/s max_threads=16 num_const=1000 BM_VertexErrorFunction_getJacobian/64/1000 598 us 593 us 1264 items_per_second=1.68774M/s max_threads=64 num_const=1000 BM_VertexErrorFunction_getJacobian/0/10000 9153 us 9060 us 68 items_per_second=1.10379M/s max_threads=0 num_const=10k BM_VertexErrorFunction_getJacobian/4/10000 3776 us 3743 us 185 items_per_second=2.6717M/s max_threads=4 num_const=10k BM_VertexErrorFunction_getJacobian/16/10000 1989 us 1974 us 358 items_per_second=5.06662M/s max_threads=16 num_const=10k BM_VertexErrorFunction_getJacobian/64/10000 1856 us 1840 us 383 items_per_second=5.43382M/s max_threads=64 num_const=10k BM_VertexErrorFunction_getJacobian/0/50000 30138 us 29918 us 26 items_per_second=1.67121M/s max_threads=0 num_const=50k BM_VertexErrorFunction_getJacobian/4/50000 17568 us 17366 us 39 items_per_second=2.87913M/s max_threads=4 num_const=50k BM_VertexErrorFunction_getJacobian/16/50000 11080 us 10995 us 71 items_per_second=4.54767M/s max_threads=16 num_const=50k BM_VertexErrorFunction_getJacobian/64/50000 9585 us 9402 us 67 items_per_second=5.31824M/s max_threads=64 num_const=50k Reviewed By: jeongseok-meta Differential Revision: D70518166 fbshipit-source-id: 415d78fdbfb5f8153476cc4f46c60bfc041c5ad7
- Loading branch information
1 parent
57ff9aa
commit c30d169
Showing
3 changed files
with
156 additions
and
56 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters