| Test description | Execution time | Execution rate (Hz) | 
 | icp-slam (match points): Run with sample dataset | 961.56 us | 1.04 KHz | 
 | icp-slam (match grid): Run with sample dataset | 1.30 ms | 767.35  Hz | 
 | poses: CPose3D (+) CPose3D | 14.72 ns | 67.93 MHz | 
 | poses: CPose3D.composeFrom() | 11.55 ns | 86.58 MHz | 
 | poses: CPose3D (+) CPoint3D | 4.33 ns | 231.05 MHz | 
 | poses: CPose3D.composePoint() | 5.61 ns | 178.38 MHz | 
 | poses: CPose3D.composePoint()+Jacobs | 107.66 ns | 9.29 MHz | 
 | poses: CPoint3D (-) CPose3D | 7.38 ns | 135.46 MHz | 
 | poses: CPose3D.inverseComposePoint() | 13.91 ns | 71.88 MHz | 
 | poses: CPose2D (+) CPose2D | 15.08 ns | 66.33 MHz | 
 | poses: CPose2D.composeFrom() | 10.29 ns | 97.16 MHz | 
 | poses: CPose2D (+) CPoint2D | 3.12 ns | 320.31 MHz | 
 | poses: CPose2D.composePoint() | 3.15 ns | 317.26 MHz | 
 | poses: CPose3DQuat (+) CPose3DQuat | 20.40 ns | 49.02 MHz | 
 | poses: CPose3DQuat.composeFrom() | 19.77 ns | 50.58 MHz | 
 | poses: CPose3DQuat (+) CPoint3D | 9.27 ns | 107.87 MHz | 
 | poses: CPose3DQuat.composePoint() | 8.73 ns | 114.52 MHz | 
 | poses: CPoint3D (-) CPose3DQuat | 16.98 ns | 58.89 MHz | 
 | poses: CPose3DQuat.invcomposePoint() | 8.98 ns | 111.36 MHz | 
 | poses: Conv CPose3DQuat <- CPose3D | 9.17 ns | 109.00 MHz | 
 | poses: Conv CPose3D -> CPose3DQuat | 83.90 ns | 11.92 MHz | 
 | poses: Conv CPose3DQuat Gauss <- CPose3D Gauss (DEF) | 61.69 us | 16.21 KHz | 
 | poses: Conv CPose3DQuat Gauss <- CPose3D Gauss (Lin) | 60.97 us | 16.40 KHz | 
 | poses: Conv CPose3DQuat Gauss <- CPose3D Gauss (SUT) | 5.42 us | 184.37 KHz | 
 | poses: Conv CPose3D Gauss <- CPose3DQuat Gauss (DEF) | 317.90 ns | 3.15 MHz | 
 | poses: Conv CPose3D Gauss <- CPose3DQuat Gauss (Lin) | 305.40 ns | 3.27 MHz | 
 | poses: Conv CPose3D Gauss <- CPose3DQuat Gauss (SUT) | 4.81 us | 208.11 KHz | 
 | matrix: unit, dyn[float], 3x3 | 27.00 ns | 37.04 MHz | 
 | matrix: unit, dyn[double], 3x3 | 30.23 ns | 33.09 MHz | 
 | matrix: unit, dyn[float], 6x6 | 46.22 ns | 21.64 MHz | 
 | matrix: unit, dyn[double], 6x6 | 48.71 ns | 20.53 MHz | 
 | matrix: unit, fix[float,3,3] | 0.00 ns | inf THz | 
 | matrix: unit, fix[double,3,3] | 0.00 ns | inf THz | 
 | matrix: unit, fix[float,6,6] | 0.00 ns | inf THz | 
 | matrix: unit, fix[double,6,6] | 0.03 ns | 31.25 GHz | 
 | matrix: multiply, dyn[float ], 3x3 * 3x3 | 175.00 ns | 5.71 MHz | 
 | matrix: multiply, fix[float ], 3x3 * 3x3 | 0.00 ns | inf THz | 
 | matrix: multiply, dyn[double], 3x3 * 3x3 | 167.10 ns | 5.98 MHz | 
 | matrix: multiply, fix[double], 3x3 * 3x3 | 0.10 ns | 10.00 GHz | 
 | matrix: multiply, dyn[float ], 3x6 * 6x3 | 204.90 ns | 4.88 MHz | 
 | matrix: multiply, fix[float ], 3x6 * 6x3 | 0.00 ns | inf THz | 
 | matrix: multiply, dyn[double], 3x6 * 6x3 | 192.80 ns | 5.19 MHz | 
 | matrix: multiply, fix[double], 3x6 * 6x3 | 0.10 ns | 10.00 GHz | 
 | matrix: multiply, dyn[float ], 10x40 * 40x10 | 1.04 us | 958.31 KHz | 
 | matrix: multiply, fix[float ], 10x40 * 40x10 | 904.60 ns | 1.11 MHz | 
 | matrix: multiply, dyn[double], 10x40 * 40x10 | 1.24 us | 805.80 KHz | 
 | matrix: multiply, fix[double], 10x40 * 40x10 | 1.04 us | 961.72 KHz | 
 | matrix: inv, dyn[double] 3x3 | 494.00 ns | 2.02 MHz | 
 | matrix: inv, fix[double] 3x3 | 0.00 ns | inf THz | 
 | matrix: inv, dyn[double] 6x6 | 985.00 ns | 1.02 MHz | 
 | matrix: inv, fix[double] 6x6 | 624.00 ns | 1.60 MHz | 
 | matrix: inv, dyn[double] 20x20 | 6.35 us | 157.53 KHz | 
 | matrix: inv, fix[double] 20x20 | 6.11 us | 163.69 KHz | 
 | matrix: inv, dyn[double] 40x40 | 27.64 us | 36.17 KHz | 
 | matrix: inv, fix[double] 40x40 | 27.08 us | 36.93 KHz | 
 | matrix: det, dyn[double] 2x2 | 201.20 ns | 4.97 MHz | 
 | matrix: det, fix[double] 2x2 | 0.00 ns | inf THz | 
 | matrix: det, dyn[double] 3x3 | 227.20 ns | 4.40 MHz | 
 | matrix: det, fix[double] 3x3 | 0.00 ns | inf THz | 
 | matrix: det, dyn[double] 6x6 | 408.40 ns | 2.45 MHz | 
 | matrix: det, fix[double] 6x6 | 237.00 ns | 4.22 MHz | 
 | matrix: det, dyn[double] 20x20 | 3.43 us | 291.90 KHz | 
 | matrix: det, fix[double] 20x20 | 2.99 us | 334.55 KHz | 
 | matrix: det, dyn[double] 40x40 | 12.23 us | 81.76 KHz | 
 | matrix: det, fix[double] 40x40 | 11.78 us | 84.91 KHz | 
 | matrix: chol, dyn[double] 4x4 | 330.00 ns | 3.03 MHz | 
 | matrix: chol, fix[double] 4x4 | 60.00 ns | 16.67 MHz | 
 | matrix: chol, dyn[double] 40x40 | 9.76 us | 102.46 KHz | 
 | matrix: chol, fix[double] 40x40 | 8.48 us | 117.92 KHz | 
 | matrix: chol, sparse [2x2;2x2] | 5.80 us | 172.41 KHz | 
 | matrix: chol, sparse [30x30;10x10] | 34.80 us | 28.74 KHz | 
 | matrix: chol, dyn[double] 10x[6x6] | 25.00 us | 40.00 KHz | 
 | matrix: chol, sparse      10x[6x6] | 16.07 us | 62.23 KHz | 
 | matrix: chol, dyn[double] 20x[6x6] | 121.60 us | 8.22 KHz | 
 | matrix: chol, sparse      20x[6x6] | 28.49 us | 35.10 KHz | 
 | matrix: chol, dyn[double] 50x[6x6] | 1.26 ms | 794.79  Hz | 
 | matrix: chol, sparse      50x[6x6] | 72.25 us | 13.84 KHz | 
 | matrix: chol, dyn[double] 100x[6x6] | 12.96 ms | 77.13  Hz | 
 | matrix: chol, sparse      100x[6x6] | 138.44 us | 7.22 KHz | 
 | matrix: chol, dyn[double] 120x[6x6] | 20.15 ms | 49.64  Hz | 
 | matrix: chol, sparse      120x[6x6] | 160.11 us | 6.25 KHz | 
 | matrix: chol, dyn[double] 140x[6x6] | 28.57 ms | 35.00  Hz | 
 | matrix: chol, sparse      140x[6x6] | 197.59 us | 5.06 KHz | 
 | matrix: loadFromArray[double] 4x4 | 0.00 ns | inf THz | 
 | matrix: load Eigen::Map[double] 4x4 | 1.00 us | 1.00 MHz | 
 | gridmap2D: getCell | 0.00 ns | inf THz | 
 | gridmap2D: setCell | 0.78 ns | 1.27 GHz | 
 | gridmap2D: updateCell | 2.85 ns | 350.75 MHz | 
 | gridmap2D: updateCell_fast_occupied | 0.87 ns | 1.15 GHz | 
 | gridmap2D: insert scan w/o widening | 50.95 us | 19.63 KHz | 
 | gridmap2D: insert scan with widening | 155.87 us | 6.42 KHz | 
 | gridmap2D: resize | 413.00 us | 2.42 KHz | 
 | gridmap2D: computeLikelihood | 9.27 us | 107.85 KHz | 
 | gridmap2D: determineMatching2D | 27.15 us | 36.83 KHz | 
 | pointmap: insert 100 scans | 319.43 us | 3.13 KHz | 
 | pointmap: build 2D kd-tree of 1 scan | 1.88 us | 531.91 KHz | 
 | pointmap: build 2D kd-tree of 100 scan | 87.64 us | 11.41 KHz | 
 | pointmap: build 2D kd-tree of 1000 scan | 1.00 ms | 997.69  Hz | 
 | pointmap: build 3D kd-tree of 1 scan | 1.72 us | 581.40 KHz | 
 | pointmap: build 3D kd-tree of 100 scan | 112.52 us | 8.89 KHz | 
 | pointmap: build 3D kd-tree of 1000 scan | 1.07 ms | 931.86  Hz | 
 | pointmap: kd-tree 2d query on 10 scans | 365.00 ns | 2.74 MHz | 
 | pointmap: kd-tree 2d query on 1000 scans | 25.82 us | 38.73 KHz | 
 | pointmap: kd-tree 2d query on 10000 scans | 2.97 ms | 336.68  Hz | 
 | pointmap: (insert scan+2D kd-tree query) x 10 | 979.40 us | 1.02 KHz | 
 | pointmap: (insert scan+2D kd-tree query) x 50 | 24.89 ms | 40.18  Hz | 
 | pointmap: (insert scan+3D kd-tree query) x 10 | 1.03 ms | 975.28  Hz | 
 | pointmap: (insert scan+3D kd-tree query) x 50 | 24.95 ms | 40.07  Hz | 
 | pointmap: computeMatchingWith2D | 25.78 us | 38.79 KHz | 
 | pointmap: boundingBox (10 scans) | 871.82 ns | 1.15 MHz | 
 | pointmap: boundingBox (1000 scans) | 85.77 us | 11.66 KHz | 
 | random: drawUniform32bit | 3.62 ns | 276.26 MHz | 
 | random: drawUniform | 3.64 ns | 274.50 MHz | 
 | random: drawGaussian1D_normalized | 29.73 ns | 33.64 MHz | 
 | random: drawGaussian1D | 29.95 ns | 33.39 MHz | 
 | random: system rand() | 15.19 ns | 65.81 MHz | 
 | random: drawGaussianMultivariate(fixed 3x3) | 490.68 ns | 2.04 MHz | 
 | random: drawGaussianMultivariate(dyn 3x3) | 1.03 us | 967.37 KHz | 
 | random: drawGaussianMultivariateMany(fixed 2x2, 1000) | 62.45 ns | 16.01 MHz | 
 | random: drawGaussianMultivariateMany(fixed 3x3, 1000) | 101.17 ns | 9.88 MHz | 
 | random: drawGaussianMultivariateMany(fixed 6x6, 1000) | 222.19 ns | 4.50 MHz | 
 | random: drawGaussianMultivariateMany(dyn 2x2, 1000) | 70.81 ns | 14.12 MHz | 
 | random: drawGaussianMultivariateMany(dyn 3x3, 1000) | 111.18 ns | 8.99 MHz | 
 | random: drawGaussianMultivariateMany(dyn 6x6, 1000) | 233.52 ns | 4.28 MHz | 
 | random: permuteVector (len=10) | 163.30 ns | 6.12 MHz | 
 | random: permuteVector (len=100) | 1.89 us | 528.40 KHz | 
 | random: permuteVector (len=1000) | 18.92 us | 52.86 KHz | 
 | math: round | 0.03 ns | 31.11 GHz | 
 | images: Save as JPEG (640x480, quality=95%) | 5.54 ms | 180.35  Hz | 
 | images: Save as JPEG (800x600, quality=95%) | 8.03 ms | 124.52  Hz | 
 | images: Save as JPEG (1024x768, quality=95%) | 13.11 ms | 76.28  Hz | 
 | images: Save as JPEG (640x480, quality=75%) | 5.36 ms | 186.57  Hz | 
 | images: Save as JPEG (800x600, quality=75%) | 6.93 ms | 144.28  Hz | 
 | images: Save as JPEG (1024x768, quality=75%) | 11.04 ms | 90.61  Hz | 
 | images: Gauss filter (640x480) | 2.64 ms | 379.03  Hz | 
 | images: Gauss filter (800x600) | 2.98 ms | 336.12  Hz | 
 | images: Gauss filter (1024x768) | 5.01 ms | 199.74  Hz | 
 | images: Half sample GRAY (160x120) | 496.67 ns | 2.01 MHz | 
 | images: Half sample GRAY (320x240) | 1.59 us | 630.25 KHz | 
 | images: Half sample GRAY (640x480) | 7.23 us | 138.31 KHz | 
 | images: Half sample GRAY (800x600) | 12.20 us | 81.99 KHz | 
 | images: Half sample GRAY (1024x768) | 20.54 us | 48.69 KHz | 
 | images: Half sample GRAY (1280x1024) | 33.65 us | 29.72 KHz | 
 | images: Half sample RGB (160x120) | 1.29 us | 777.20 KHz | 
 | images: Half sample RGB (320x240) | 5.17 us | 193.55 KHz | 
 | images: Half sample RGB (640x480) | 24.58 us | 40.69 KHz | 
 | images: Half sample RGB (800x600) | 39.59 us | 25.26 KHz | 
 | images: Half sample RGB (1024x768) | 66.37 us | 15.07 KHz | 
 | images: Half sample RGB (1280x1024) | 123.95 us | 8.07 KHz | 
 | images: Half sample smooth GRAY (160x120) | 820.00 ns | 1.22 MHz | 
 | images: Half sample smooth GRAY (320x240) | 2.81 us | 355.87 KHz | 
 | images: Half sample smooth GRAY (640x480) | 16.41 us | 60.95 KHz | 
 | images: Half sample smooth GRAY (800x600) | 21.92 us | 45.63 KHz | 
 | images: Half sample smooth GRAY (1024x768) | 34.31 us | 29.15 KHz | 
 | images: Half sample smooth GRAY (1280x1024) | 60.52 us | 16.52 KHz | 
 | images: Half sample smooth RGB (160x120) | 49.89 us | 20.04 KHz | 
 | images: Half sample smooth RGB (320x240) | 49.84 us | 20.07 KHz | 
 | images: Half sample smooth RGB (640x480) | 195.38 us | 5.12 KHz | 
 | images: Half sample smooth RGB (800x600) | 294.64 us | 3.39 KHz | 
 | images: Half sample smooth RGB (1024x768) | 484.11 us | 2.07 KHz | 
 | images: Half sample smooth RGB (1280x1024) | 828.65 us | 1.21 KHz | 
 | images: RGB->GRAY 8u (40x30) | 65.72 us | 15.22 KHz | 
 | images: RGB->GRAY 8u (80x60) | 1.32 us | 755.67 KHz | 
 | images: RGB->GRAY 8u (160x120) | 4.65 us | 214.90 KHz | 
 | images: RGB->GRAY 8u (320x240) | 19.20 us | 52.07 KHz | 
 | images: RGB->GRAY 8u (640x480) | 77.66 us | 12.88 KHz | 
 | images: RGB->GRAY 8u (800x600) | 120.69 us | 8.29 KHz | 
 | images: RGB->GRAY 8u (1024x768) | 194.51 us | 5.14 KHz | 
 | images: RGB->GRAY 8u (1280x1024) | 357.09 us | 2.80 KHz | 
 | images: KLT score (WIN=2 5x5) | 27.48 ns | 36.38 MHz | 
 | images: KLT score (WIN=3 7x7) | 34.76 ns | 28.77 MHz | 
 | images: KLT score (WIN=4 9x9) | 36.30 ns | 27.55 MHz | 
 | images: KLT score (WIN=5 10x10) | 43.37 ns | 23.06 MHz | 
 | images: KLT score (WIN=6 13x13) | 47.96 ns | 20.85 MHz | 
 | images: KLT score (WIN=7 15x15) | 48.23 ns | 20.73 MHz | 
 | images: KLT score (WIN=8 17x17) | 60.00 ns | 16.67 MHz | 
 | images: KLT score (WIN=9 19x19) | 62.56 ns | 15.98 MHz | 
 | images: KLT score (WIN=10 21x21) | 67.38 ns | 14.84 MHz | 
 | images: KLT score (WIN=11 23x23) | 61.61 ns | 16.23 MHz | 
 | images: KLT score (WIN=12 25x25) | 76.06 ns | 13.15 MHz | 
 | images: KLT score (WIN=13 27x27) | 82.17 ns | 12.17 MHz | 
 | images: KLT score (WIN=14 29x29) | 74.11 ns | 13.49 MHz | 
 | images: KLT score (WIN=15 31x31) | 78.43 ns | 12.75 MHz | 
 | images: KLT score (WIN=16 33x33) | 103.64 ns | 9.65 MHz | 
 | images: buildPyramid 640x480,4 levs,no smooth,no gray | 86.49 us | 11.56 KHz | 
 | images: buildPyramid 640x480,4 levs,   smooth,no gray | 306.83 us | 3.26 KHz | 
 | images: buildPyramid 640x480,4 levs,no smooth,   gray | 87.56 us | 11.42 KHz | 
 | images: buildPyramid 640x480,4 levs,   smooth,   gray | 94.34 us | 10.60 KHz | 
 | images: buildPyramid 640x480,8 levs,no smooth,no gray | 90.20 us | 11.09 KHz | 
 | images: buildPyramid 640x480,8 levs,   smooth,no gray | 523.57 us | 1.91 KHz | 
 | images: buildPyramid 640x480,8 levs,no smooth,   gray | 153.08 us | 6.53 KHz | 
 | images: buildPyramid 640x480,8 levs,   smooth,   gray | 167.01 us | 5.99 KHz | 
 | stereo: prepare rectify map 640x480 RGB | 12.54 ms | 79.74  Hz | 
 | stereo: prepare rectify map 800x600 RGB | 16.25 ms | 61.55  Hz | 
 | stereo: prepare rectify map 1024x768 RGB | 31.51 ms | 31.74  Hz | 
 | stereo: prepare rectify map 1024x768->800x600 RGB | 16.06 ms | 62.27  Hz | 
 | stereo: prepare rectify map 1024x768->640x480 RGB | 10.26 ms | 97.51  Hz | 
 | stereo: rectify 640x480 RGB | 4.26 ms | 234.99  Hz | 
 | stereo: rectify 800x600 RGB | 6.56 ms | 152.48  Hz | 
 | stereo: rectify 1024x768 RGB | 10.68 ms | 93.62  Hz | 
 | stereo: rectify 1024x768->800x600 RGB | 6.32 ms | 158.32  Hz | 
 | stereo: rectify 1024x768->640x480 RGB | 3.86 ms | 258.79  Hz | 
 | stereo: rectify 640x480 GRAY | 2.86 ms | 350.07  Hz | 
 | stereo: rectify 800x600 GRAY | 4.39 ms | 227.65  Hz | 
 | stereo: rectify 1024x768 GRAY | 7.59 ms | 131.72  Hz | 
 | stereo: rectify 1024x768->800x600 GRAY | 4.40 ms | 227.47  Hz | 
 | stereo: rectify 1024x768->640x480 GRAY | 2.70 ms | 369.87  Hz | 
 | scan_matching: 6D LS Rigid Trans. [CPose3D] | 4.82 us | 207.60 KHz | 
 | scan_matching: 6D LS Rigid Trans. [CPose3DQuat] | 4.74 us | 210.89 KHz | 
 | scan_matching: 6D LS Rigid Trans. [vector of points] | 2.22 us | 449.90 KHz | 
 | scan_matching: leastSquares 2D [x10 corrs] | 88.57 ns | 11.29 MHz | 
 | scan_matching: leastSquares 2D [x100 corrs] | 188.44 ns | 5.31 MHz | 
 | scan_matching: leastSquares 2D [x1000 corrs] | 1.26 us | 794.31 KHz | 
 | feature_extraction [640x480]: Harris | 10.97 ms | 91.13  Hz | 
 | feature_extraction [640x480]: KLT | 10.06 ms | 99.39  Hz | 
 | feature_extraction [640x480]: SIFT | 377.71 ms | 2.65  Hz | 
 | feature_extraction [640x480]: SIFT desc. | 135.82 ms | 7.36  Hz | 
 | feature_extraction [640x480]: SURF | 228.69 ms | 4.37  Hz | 
 | feature_extraction [640x480]: FAST | 2.58 ms | 387.11  Hz | 
 | feature_extraction [640x480]: Spin desc. | 42.20 ms | 23.70  Hz | 
 | feature_extraction [640x480]: FASTER-9 | 3.27 ms | 306.01  Hz | 
 | feature_extraction [640x480]: FASTER-9 (sorted best 200) | 1.77 ms | 566.48  Hz | 
 | feature_extraction [640x480]: FASTER-10 | 2.35 ms | 425.82  Hz | 
 | feature_extraction [640x480]: FASTER-10 (sorted best 200) | 1.30 ms | 766.67  Hz | 
 | feature_extraction [640x480]: FASTER-12 | 1.73 ms | 578.55  Hz | 
 | feature_extraction [640x480]: FASTER-12 (sorted best 200) | 1.21 ms | 823.38  Hz | 
 | feature_extraction [640x480]: detectFeatures_SSE2_FASTER9() | 700.83 us | 1.43 KHz | 
 | feature_extraction [640x480]: detectFeatures_SSE2_FASTER10() | 508.65 us | 1.97 KHz | 
 | feature_extraction [640x480]: detectFeatures_SSE2_FASTER12() | 581.27 us | 1.72 KHz | 
 | feature_extraction [640x480]: detectFeatures_SSE2_FASTER9()+row-index | 703.07 us | 1.42 KHz | 
 | feature_extraction [640x480]: detectFeatures_SSE2_FASTER10()+row-index | 508.56 us | 1.97 KHz | 
 | feature_extraction [640x480]: detectFeatures_SSE2_FASTER12()+row-index | 580.21 us | 1.72 KHz | 
 | feature_extraction [800x600]: detectFeatures_SSE2_FASTER9() | 901.12 us | 1.11 KHz | 
 | feature_extraction [800x600]: detectFeatures_SSE2_FASTER10() | 647.38 us | 1.54 KHz | 
 | feature_extraction [800x600]: detectFeatures_SSE2_FASTER12() | 674.80 us | 1.48 KHz | 
 | feature_extraction [800x600]: detectFeatures_SSE2_FASTER9()+row-index | 901.50 us | 1.11 KHz | 
 | feature_extraction [800x600]: detectFeatures_SSE2_FASTER10()+row-index | 655.05 us | 1.53 KHz | 
 | feature_extraction [800x600]: detectFeatures_SSE2_FASTER12()+row-index | 675.64 us | 1.48 KHz | 
 | feature_extraction [1024x768]: detectFeatures_SSE2_FASTER9() | 1.19 ms | 841.48  Hz | 
 | feature_extraction [1024x768]: detectFeatures_SSE2_FASTER10() | 867.29 us | 1.15 KHz | 
 | feature_extraction [1024x768]: detectFeatures_SSE2_FASTER12() | 761.35 us | 1.31 KHz | 
 | feature_extraction [1024x768]: detectFeatures_SSE2_FASTER9()+row-index | 1.19 ms | 840.52  Hz | 
 | feature_extraction [1024x768]: detectFeatures_SSE2_FASTER10()+row-index | 878.28 us | 1.14 KHz | 
 | feature_extraction [1024x768]: detectFeatures_SSE2_FASTER12()+row-index | 749.89 us | 1.33 KHz | 
 | feature_matching [640x480]: Harris + CC | 29.43 ms | 33.98  Hz | 
 | feature_matching [640x480]: Harris + SAD | 23.92 ms | 41.80  Hz | 
 | feature_matching [640x480]: SIFT | 922.45 ms | 1.08  Hz | 
 | feature_matching [640x480]: SURF | 443.16 ms | 2.26  Hz | 
 | feature_matching [640x480]: FAST + CC | 9.88 ms | 101.26  Hz | 
 | feature_matching [640x480]: FAST + SAD | 4.10 ms | 244.08  Hz | 
 | graph(2d): insertEdge x 1e3 | 125.22 us | 7.99 KHz | 
 | graph(2d,vec): insertEdge x 1e3 | 126.83 us | 7.88 KHz | 
 | graph(2d): insertEdgeAtEnd x 1e3 | 107.97 us | 9.26 KHz | 
 | graph(2d,vec): insertEdgeAtEnd x 1e3 | 106.37 us | 9.40 KHz | 
 | graph(2d pdf): insertEdge x 1e3 | 195.94 us | 5.10 KHz | 
 | graph(2d pdf,vec): insertEdge x 1e3 | 194.57 us | 5.14 KHz | 
 | graph(2d pdf): insertEdgeAtEnd x 1e3 | 179.20 us | 5.58 KHz | 
 | graph(2d pdf,vec): insertEdgeAtEnd x 1e3 | 174.64 us | 5.73 KHz | 
 | graph(2d): insertEdge x 1e4 | 2.16 ms | 463.02  Hz | 
 | graph(2d,vec): insertEdge x 1e4 | 1.80 ms | 554.93  Hz | 
 | graph(2d): insertEdgeAtEnd x 1e4 | 875.00 us | 1.14 KHz | 
 | graph(2d,vec): insertEdgeAtEnd x 1e4 | 863.37 us | 1.16 KHz | 
 | graph(2d pdf): insertEdge x 1e4 | 2.16 ms | 462.63  Hz | 
 | graph(2d pdf,vec): insertEdge x 1e4 | 2.44 ms | 409.29  Hz | 
 | graph(2d pdf): insertEdgeAtEnd x 1e4 | 1.88 ms | 532.39  Hz | 
 | graph(2d pdf,vec): insertEdgeAtEnd x 1e4 | 1.87 ms | 535.69  Hz | 
 | graph(3d): insertEdge x 1e3 | 169.52 us | 5.90 KHz | 
 | graph(3d,vec): insertEdge x 1e3 | 162.80 us | 6.14 KHz | 
 | graph(3d): insertEdgeAtEnd x 1e3 | 141.73 us | 7.06 KHz | 
 | graph(3d,vec): insertEdgeAtEnd x 1e3 | 151.60 us | 6.60 KHz | 
 | graph(3d pdf): insertEdge x 1e3 | 479.91 us | 2.08 KHz | 
 | graph(3d pdf,vec): insertEdge x 1e3 | 483.38 us | 2.07 KHz | 
 | graph(3d pdf): insertEdgeAtEnd x 1e3 | 417.25 us | 2.40 KHz | 
 | graph(3d pdf,vec): insertEdgeAtEnd x 1e3 | 411.56 us | 2.43 KHz | 
 | graph(3d): insertEdge x 1e4 | 2.42 ms | 412.48  Hz | 
 | graph(3d,vec): insertEdge x 1e4 | 2.41 ms | 415.13  Hz | 
 | graph(3d): insertEdgeAtEnd x 1e4 | 1.61 ms | 620.76  Hz | 
 | graph(3d,vec): insertEdgeAtEnd x 1e4 | 1.62 ms | 617.97  Hz | 
 | graph(3d pdf): insertEdge x 1e4 | 6.01 ms | 166.38  Hz | 
 | graph(3d pdf,vec): insertEdge x 1e4 | 6.08 ms | 164.34  Hz | 
 | graph(3d pdf): insertEdgeAtEnd x 1e4 | 4.27 ms | 234.10  Hz | 
 | graph(3d pdf,vec): insertEdgeAtEnd x 1e4 | 4.23 ms | 236.47  Hz | 
 | graph(3d): dijkstra 1e2 nodes | 86.56 us | 11.55 KHz | 
 | graph(3d,vec): dijkstra 1e2 nodes | 86.37 us | 11.58 KHz | 
 | graph(3d): dijkstra 1e3 nodes | 1.10 ms | 911.70  Hz | 
 | graph(3d,vec): dijkstra 1e3 nodes | 1.09 ms | 919.38  Hz | 
 | graph(3d): dijkstra 1e4 nodes | 13.82 ms | 72.37  Hz | 
 | graph(3d,vec): dijkstra 1e4 nodes | 13.82 ms | 72.38  Hz | 
 | graph(3d): dijkstra 1e5 nodes | 259.36 ms | 3.86  Hz | 
 | graph(3d,vec): dijkstra 1e5 nodes | 260.84 ms | 3.83  Hz | 
 | graph(2d): dijkstra 1e5 nodes | 262.66 ms | 3.81  Hz | 
 | graph(2d,vec): dijkstra 1e5 nodes | 264.08 ms | 3.79  Hz |