Results


Test description Execution timeExecution rate (Hz)
icp-slam (match points): Run with sample dataset 34.80 ms 28.74 Hz
icp-slam (match grid): Run with sample dataset 35.67 ms 28.04 Hz
poses: CPose3D (+) CPose3D 922.13 ns 1.08 MHz
poses: CPose3D.composeFrom() 597.07 ns 1.67 MHz
poses: CPose3D (+) CPoint3D 36.64 ns 27.29 MHz
poses: CPose3D.composePoint() 15.75 ns 63.47 MHz
poses: CPoint3D (-) CPose3D 67.11 ns 14.90 MHz
poses: CPose3D.inverseComposePoint() 64.15 ns 15.59 MHz
poses: CPose2D (+) CPose2D 139.02 ns 7.19 MHz
poses: CPose2D.composeFrom() 70.60 ns 14.16 MHz
poses: CPose2D (+) CPoint2D 110.57 ns 9.04 MHz
poses: CPose2D.composePoint() 76.88 ns 13.01 MHz
poses: CPose3DQuat (+) CPose3DQuat 104.50 ns 9.57 MHz
poses: CPose3DQuat.composeFrom() 63.42 ns 15.77 MHz
poses: CPose3DQuat (+) CPoint3D 81.69 ns 12.24 MHz
poses: CPose3DQuat.composePoint() 34.68 ns 28.83 MHz
poses: CPoint3D (-) CPose3DQuat 659.09 ns 1.52 MHz
poses: CPose3DQuat.invcomposePoint() 37.18 ns 26.90 MHz
poses: Conv CPose3DQuat <- CPose3D 525.95 ns 1.90 MHz
poses: Conv CPose3D -> CPose3DQuat 257.78 ns 3.88 MHz
poses: Conv CPose3DQuat Gauss <- CPose3D Gauss (DEF) 2.96 us 338.05 KHz
poses: Conv CPose3DQuat Gauss <- CPose3D Gauss (Lin) 2.57 us 389.31 KHz
poses: Conv CPose3DQuat Gauss <- CPose3D Gauss (SUT) 43.68 us 22.90 KHz
poses: Conv CPose3D Gauss <- CPose3DQuat Gauss (DEF) 1.73 us 576.43 KHz
poses: Conv CPose3D Gauss <- CPose3DQuat Gauss (Lin) 1.54 us 647.63 KHz
poses: Conv CPose3D Gauss <- CPose3DQuat Gauss (SUT) 14.80 us 67.58 KHz
matrix: unit, dyn[float], 3x3 40.82 ns 24.50 MHz
matrix: unit, dyn[double], 3x3 40.15 ns 24.91 MHz
matrix: unit, dyn[float], 6x6 152.60 ns 6.55 MHz
matrix: unit, dyn[double], 6x6 151.54 ns 6.60 MHz
matrix: unit, fix[float,3,3] 3.07 ns 326.19 MHz
matrix: unit, fix[double,3,3] 3.12 ns 320.46 MHz
matrix: unit, fix[float,6,6] 6.13 ns 163.21 MHz
matrix: unit, fix[double,6,6] 5.90 ns 169.43 MHz
matrix: multiply, dyn[float ], 3x3 * 3x3 186.55 ns 5.36 MHz
matrix: multiply, fix[float ], 3x3 * 3x3 114.31 ns 8.75 MHz
matrix: multiply, dyn[double], 3x3 * 3x3 169.93 ns 5.88 MHz
matrix: multiply, fix[double], 3x3 * 3x3 82.79 ns 12.08 MHz
matrix: multiply, dyn[float ], 3x6 * 6x3 281.94 ns 3.55 MHz
matrix: multiply, fix[float ], 3x6 * 6x3 203.54 ns 4.91 MHz
matrix: multiply, dyn[double], 3x6 * 6x3 251.68 ns 3.97 MHz
matrix: multiply, fix[double], 3x6 * 6x3 137.64 ns 7.27 MHz
matrix: multiply, dyn[float ], 10x40 * 40x10 17.07 us 58.58 KHz
matrix: multiply, fix[float ], 10x40 * 40x10 13.35 us 74.89 KHz
matrix: multiply, dyn[double], 10x40 * 40x10 15.09 us 66.29 KHz
matrix: multiply, fix[double], 10x40 * 40x10 10.27 us 97.33 KHz
matrix: inv, dyn[float ] 3x3 2.22 us 450.32 KHz
matrix: inv, fix[float ] 3x3 59.78 ns 16.73 MHz
matrix: inv, dyn[double] 3x3 1.59 us 627.08 KHz
matrix: inv, fix[double] 3x3 31.70 ns 31.54 MHz
matrix: inv, dyn[float ] 6x6 4.95 us 201.83 KHz
matrix: inv, fix[float ] 6x6 1.20 us 832.25 KHz
matrix: inv, dyn[double] 6x6 4.77 us 209.67 KHz
matrix: inv, fix[double] 6x6 855.55 ns 1.17 MHz
matrix: inv, dyn[float ] 20x20 120.01 us 8.33 KHz
matrix: inv, fix[float ] 20x20 37.80 us 26.45 KHz
matrix: inv, dyn[double] 20x20 112.33 us 8.90 KHz
matrix: inv, fix[double] 20x20 25.75 us 38.83 KHz
matrix: inv, dyn[float ] 40x40 917.14 us 1.09 KHz
matrix: inv, fix[float ] 40x40 335.57 us 2.98 KHz
matrix: inv, dyn[double] 40x40 839.84 us 1.19 KHz
matrix: inv, fix[double] 40x40 144.93 us 6.90 KHz
matrix: det, dyn[float ] 2x2 9.15 ns 109.30 MHz
matrix: det, fix[float ] 2x2 0.00 ns 1.#J THz
matrix: det, dyn[double] 2x2 8.70 ns 115.00 MHz
matrix: det, fix[double] 2x2 0.00 ns 1.#J THz
matrix: det, dyn[float ] 3x3 22.46 ns 44.52 MHz
matrix: det, fix[float ] 3x3 0.00 ns 1.#J THz
matrix: det, dyn[double] 3x3 16.26 ns 61.50 MHz
matrix: det, fix[double] 3x3 0.00 ns 1.#J THz
matrix: det, dyn[float ] 6x6 2.15 us 466.19 KHz
matrix: det, fix[float ] 6x6 426.37 ns 2.35 MHz
matrix: det, dyn[double] 6x6 2.05 us 487.09 KHz
matrix: det, fix[double] 6x6 292.76 ns 3.42 MHz
matrix: det, dyn[float ] 20x20 14.60 us 68.48 KHz
matrix: det, fix[float ] 20x20 9.64 us 103.74 KHz
matrix: det, dyn[double] 20x20 9.37 us 106.69 KHz
matrix: det, fix[double] 20x20 6.08 us 164.49 KHz
matrix: det, dyn[float ] 40x40 72.04 us 13.88 KHz
matrix: det, fix[float ] 40x40 63.57 us 15.73 KHz
matrix: det, dyn[double] 40x40 41.90 us 23.87 KHz
matrix: det, fix[double] 40x40 32.92 us 30.37 KHz
gridmap2D: getCell 4.81 ns 207.74 MHz
gridmap2D: setCell 9.32 ns 107.27 MHz
gridmap2D: updateCell 9.47 ns 105.65 MHz
gridmap2D: updateCell_fast_occupied 1.20 ns 834.01 MHz
gridmap2D: insert scan w/o widening 205.58 us 4.86 KHz
gridmap2D: insert scan with widening 330.14 us 3.03 KHz
gridmap2D: resize 2.55 ms 391.48 Hz
gridmap2D: computeLikelihood 18.16 us 55.05 KHz
pointmap: insert 100 scans 5.20 ms 192.30 Hz
pointmap: build 2D kd-tree of 1 scan 6.41 us 155.93 KHz
pointmap: build 2D kd-tree of 100 scan 608.84 us 1.64 KHz
pointmap: build 2D kd-tree of 1000 scan 5.82 ms 171.92 Hz
pointmap: build 3D kd-tree of 1 scan 7.03 us 142.26 KHz
pointmap: build 3D kd-tree of 100 scan 556.81 us 1.80 KHz
pointmap: build 3D kd-tree of 1000 scan 5.85 ms 171.04 Hz
pointmap: kd-tree 2d query on 10 scans 2.05 us 487.73 KHz
pointmap: kd-tree 2d query on 1000 scans 144.02 us 6.94 KHz
pointmap: kd-tree 2d query on 10000 scans 15.88 ms 62.98 Hz
pointmap: (insert scan+2D kd-tree query) x 10 8.44 ms 118.52 Hz
pointmap: (insert scan+2D kd-tree query) x 50 196.59 ms 5.09 Hz
pointmap: (insert scan+3D kd-tree query) x 10 8.57 ms 116.70 Hz
pointmap: (insert scan+3D kd-tree query) x 50 200.46 ms 4.99 Hz
random: drawUniform32bit 7.64 ns 130.94 MHz
random: drawUniform 7.66 ns 130.56 MHz
random: drawGaussian1D_normalized 50.66 ns 19.74 MHz
random: drawGaussian1D 50.61 ns 19.76 MHz
random: system rand() 27.28 ns 36.66 MHz
random: drawGaussianMultivariate(fixed 3x3) 1.72 us 581.91 KHz
random: drawGaussianMultivariate(dyn 3x3) 6.74 us 148.26 KHz
random: drawGaussianMultivariateMany(fixed 2x2, 1000) 176.28 ns 5.67 MHz
random: drawGaussianMultivariateMany(fixed 3x3, 1000) 252.43 ns 3.96 MHz
random: drawGaussianMultivariateMany(fixed 6x6, 1000) 498.91 ns 2.00 MHz
random: drawGaussianMultivariateMany(dyn 2x2, 1000) 183.92 ns 5.44 MHz
random: drawGaussianMultivariateMany(dyn 3x3, 1000) 260.35 ns 3.84 MHz
random: drawGaussianMultivariateMany(dyn 6x6, 1000) 502.45 ns 1.99 MHz
random: permuteVector (len=10) 336.65 ns 2.97 MHz
random: permuteVector (len=100) 3.30 us 303.20 KHz
random: permuteVector (len=1000) 32.85 us 30.44 KHz
math: round 0.00 ns 1.#J THz
images: Save as JPEG (640x480, quality=95%) 30.01 ms 33.32 Hz
images: Save as JPEG (800x600, quality=95%) 46.70 ms 21.41 Hz
images: Save as JPEG (1024x768, quality=95%) 74.99 ms 13.34 Hz
images: Save as JPEG (640x480, quality=75%) 24.98 ms 40.04 Hz
images: Save as JPEG (800x600, quality=75%) 38.57 ms 25.93 Hz
images: Save as JPEG (1024x768, quality=75%) 62.97 ms 15.88 Hz
images: Gauss filter (640x480) 5.39 ms 185.47 Hz
images: Gauss filter (800x600) 8.49 ms 117.79 Hz
images: Gauss filter (1024x768) 14.57 ms 68.63 Hz
scan_matching: 6D LS Rigid Trans. [CPose3D] 16.01 us 62.46 KHz
scan_matching: 6D LS Rigid Trans. [CPose3DQuat] 13.95 us 71.66 KHz
scan_matching: 6D LS Rigid Trans. [vector of points] 3.65 us 273.60 KHz
feature_extraction [640x480]: Harris 35.13 ms 28.46 Hz
feature_extraction [640x480]: KLT 34.95 ms 28.61 Hz
feature_extraction [640x480]: SIFT 695.52 ms 1.44 Hz
feature_extraction [640x480]: SIFT desc. 214.05 ms 4.67 Hz
feature_extraction [640x480]: SURF 320.24 ms 3.12 Hz
feature_extraction [640x480]: FAST 8.10 ms 123.41 Hz
feature_extraction [640x480]: Spin desc. 88.19 ms 11.34 Hz
feature_matching [640x480]: Harris + CC 59.77 ms 16.73 Hz
feature_matching [640x480]: Harris + SAD 51.36 ms 19.47 Hz
feature_matching [640x480]: SIFT 1.37 sec 731.43 mHz
feature_matching [640x480]: SURF 610.22 ms 1.64 Hz
feature_matching [640x480]: FAST + CC 17.38 ms 57.54 Hz
feature_matching [640x480]: FAST + SAD 8.85 ms 113.05 Hz

 


Automated test run at 2010/06/01,01:45:52.061145 with MRPT 0.9.0 using program 'mrpt-performance'.
Overall run took 2.58 minutes