Skip to content

Latest commit

 

History

History
223 lines (182 loc) · 12.6 KB

results.md

File metadata and controls

223 lines (182 loc) · 12.6 KB

1/7 main.test.rational time test sum/product...

Ordinate Precision Exploration

Integer Rational Sum/Product Test

Reports how many iterations before the sum of rational integers is not equal to the product for NTSC rates.

Increment Iterations s sum product iter/s
1001/24000 2145342 1.036d 1073743670/12000 357914557/4000 1.52e6
1001/30000 2145342 19.884h 1073743670/15000 357914557/5000 1.52e6

OK 2/7 main.test.rational time test sum/product w/ scale...

Integer Rational Sum/Product Test w/ 0.5 Scale

Reports how many iterations before the sum of rational integers is not equal to the product for NTSC rates.

Increment Iterations s sum product iter/s
1001/48000 2145342 12.428h 1073743670/24000 357914557/8000 1.49e6
1001/60000 2145342 9.942h 1073743670/30000 357914557/10000 1.51e6

OK 3/7 main.test.Floating point product vs Sum Test...

Sum/Product equality tests

Reports how many iterations before the sum is not equal to the product by more than half a frame

Type: f32

rate iterations tolerance wall clock time iterations/s
24 9418 0.020833334 6.540m 9.96e8
24 1320 0.0005 55.001s 8.33e8
23.976025 10059 0.020854166 6.993m 1.01e9
23.976025 1206 0.0005 50.301s 9.04e8
29.97003 10178 0.016683333 5.660m 1.02e9
29.97003 1719 0.0005 57.358s 1.01e9
120 6410 0.004166667 53.421s 1.01e9
120 4350 0.0005 36.251s 9.94e8
44100 11003 0.000011337868 0.250s 1.03e9
44100 43366 0.0005 0.983s 1.04e9
48000 8651 0.000010416667 0.180s 1.03e9
48000 42861 0.0005 0.893s 1.04e9
192000 8651 0.0000026041666 0.045s 1.02e9
192000 95880 0.0005 0.500s 1.04e9

Type: f64

rate iterations tolerance wall clock time iterations/s
24 187904821 0.020833333333333332 90.618d 1.04e9
24 36641440 0.0005 17.670d 1.02e9
23.976023976023978 275100607 0.020854166666666667 132.801d 1.03e9
23.976023976023978 34051488 0.0005 16.438d 1.03e9
29.97002997002997 170408320 0.016683333333333335 65.810d 1.03e9
29.97002997002997 28345649 0.0005 10.947d 1.03e9
120 223038290 0.004166666666666667 21.512d 1.03e9
120 51714711 0.0005 4.988d 1.04e9
44100 222189469 0.000011337868480725624 1.400h 1.04e9
44100 1396578624 0.0005 8.797h 1.04e9
48000 146783537 0.000010416666666666666 50.967m 1.04e9
48000 1815515153 0.0005 10.506h 1.04e9
192000 146783537 0.0000026041666666666666 12.742m 1.04e9
192000 2254773172 0.0005 3.262h 1.04e9

OK 4/7 main.test.Floating point product vs Sum Test w/ Scale...

Sum/Product equality tests

Reports how many iterations before the sum is not equal to the product by more than half a frame.

Type: f32

rate iterations tolerance wall clock time iterations/s
24 11467 0.020833334 3.981m 9.90e8
23.976025 16165 0.020854166 5.618m 9.67e8
29.97003 11702 0.016683333 3.254m 9.85e8
120 14935 0.004166667 1.037m 1.03e9
44100 13961 0.000011337868 0.158s 1.02e9
48000 15565 0.000010416667 0.162s 1.04e9
192000 15565 0.0000026041666 0.041s 1.03e9

Type: f64

rate iterations tolerance wall clock time iterations/s
24 308700774 0.020833333333333332 74.436d 1.04e9
23.976023976023978 443471744 0.020854166666666667 107.040d 1.04e9
29.97002997002997 208318011 0.016683333333333335 40.225d 1.04e9
120 357256029 0.004166666666666667 17.229d 1.04e9
44100 249437477 0.000011337868480725624 47.135m 1.05e9
48000 193467964 0.000010416666666666666 33.588m 1.03e9
192000 193467964 0.0000026041666666666666 8.397m 1.04e9

OK 5/7 main.test.Floating point division to integer test...

Time to Frame Number Test

Measures if the correct integer frame number and phase offset can be recovered from a large time value.

Type: f32

rate iter Failure failure frame expected measured iter/s
24 10e11 frame is wrong 2400000100000 27777780.000d 100000000000 100000006144
23.976025 10e3 Fract is not 0 23976.025 6.660h 0 100
25 10e11 frame is wrong 2500000000000 28935184.000d 100000000000 99999997952
29.97003 10e4 Fract is not 0 299700.28 3.469d 0 1000
120 10e9 frame is wrong 120000000000 1388888.900d 1000000000 1000000064
44100 10e6 Fract is not 0 44099998000 510416.620d 0 100000
48000 10e8 frame is wrong 4800000300000 55555560.000d 100000000 100000008
192000 10e8 frame is wrong 19200001000000 222222240.000d 100000000 100000008

Type: f64

rate iter Failure failure frame expected measured iter/s
24 10e23 frame is wrong 2400000000000000000000000 27777777777777780000.000d 100000000000000000000000 100000000000000008388608
23.976023976023978 10e2 Fract is not 0 2397.602397602398 39.960m 0 10
25 10e21 frame is wrong 25000000000000000000000 289351851851851840.000d 1000000000000000000000 999999999999999868928
29.97002997002997 10e16 frame is wrong 299700299700299650 3468753468753.468d 10000000000000000 9999999999999998
120 10e23 frame is wrong 12000000000000000000000000 138888888888888890000.000d 100000000000000000000000 99999999999999991611392
44100 10e23 frame is wrong 4409999999999999400000000000 51041666666666656000000.000d 100000000000000000000000 99999999999999991611392
48000 10e23 frame is wrong 4800000000000000000000000000 55555555555555555000000.000d 100000000000000000000000 99999999999999991611392
192000 10e23 frame is wrong 19200000000000000000000000000 222222222222222220000000.000d 100000000000000000000000 99999999999999991611392

OK 6/7 main.test.sin big number drift test...

Sin Drift Test

Measures the number of iterations of adding two pi to pi/4 before the sin value drifts more than half a frame from the value at zero.

Type: f32

rate target epsilon iterations s iter/s
24 0.020833334 1804 1.253m 3.90e8
23.976025 0.020854166 1805 1.255m 3.80e8
25 0.02 1735 1.157m 4.00e8
29.97003 0.016683333 1465 48.882s 3.95e8
120 0.004166667 443 3.692s 3.94e8
44100 0.000011337868 25 0.001s 2.98e8
48000 0.000010416667 21 0.000s 2.53e8
192000 0.0000026041666 9 0.000s 2.20e8

Type: f64

rate target epsilon iterations s iter/s
24 0.020833333333333332 22417639 10.811d 1.72e8
23.976023976023978 0.020854166666666667 22424856 10.825d 1.72e8
25 0.02 22128769 10.245d 1.72e8
29.97002997002997 0.016683333333333335 20975948 8.101d 1.72e8
120 0.004166666666666667 7343345 16.998h 1.72e8
44100 0.000011337868480725624 420084 9.526s 1.87e8
48000 0.000010416666666666666 414231 8.630s 1.79e8
192000 0.0000026041666666666666 364591 1.899s 1.88e8

OK 7/7 main.test.NTSC 24 vs 44100 phase offset track...

NTSC 24 vs 44100 Phase Offset

Measures the number of iterations of finding the next common multiple of NTSC 24 and 44100 such that the sum of each of the rates does not equal.

Type: f32

rate_a rate_b iterations next multiple current_a current_b delta
24 23.976025 2 575.42456 9.590m 575.4393 575.41693
24 25 7 3600 1.000h 3600.0159 3599.9873
24 29.97003 2 719.2807 11.988m 719.30115 719.26666
24 120 10 1080 18.000m 1080.0201 1079.9965
23.976025 24 2 575.42456 9.590m 575.41693 575.4393
23.976025 25 6 2997.0032 49.950m 2997.0234 2996.999
23.976025 29.97003 4 2155.6865 35.928m 2155.675 2155.6995
23.976025 120 62 175504.5 2.031d 175504.52 175504.5
25 24 7 3600 1.000h 3599.9873 3600.0159
25 23.976025 6 2997.0032 49.950m 2996.999 2997.0234
25 29.97003 32 23226.773 6.452h 23226.754 23226.787
25 120 13 7200 2.000h 7200.0195 7199.9966
29.97003 24 2 719.2807 11.988m 719.26666 719.30115
29.97003 23.976025 4 2155.6865 35.928m 2155.6995 2155.675
29.97003 25 32 23226.773 6.452h 23226.787 23226.754
29.97003 120 50 176223.78 2.040d 176223.77 176223.78
120 24 10 1080 18.000m 1079.9965 1080.0201
120 23.976025 62 175504.5 2.031d 175504.5 175504.52
120 25 13 7200 2.000h 7199.9966 7200.0195
120 29.97003 50 176223.78 2.040d 176223.78 176223.77

Type: f64

rate_a rate_b iterations next multiple current_a current_b delta
24 23.976023976023978 3 1150.8491508491509 19.181m 1150.8333333331914 1150.8580416667248
24 25 289 172800 2.000d 172799.99999638795 172799.9999992555
24 29.97002997002997 3 1438.5614385614385 23.976m 1438.541666667048 1438.5704666680454
24 120 1441 172800 2.000d 172799.99999638795 172799.99997053778
23.976023976023978 24 3 1150.8491508491509 19.181m 1150.8580416667248 1150.8333333331914
23.976023976023978 25 16 8991.00899100899 2.498h 8991.023708328808 8991.00000001057
23.976023976023978 29.97002997002997 6 3592.8107856179786 59.880m 3592.7975416632376 3592.8225666648073
23.976023976023978 120 15 40279.720279720284 11.189h 40279.73949991521 40279.71666805922
25 24 289 172800 2.000d 172799.9999992555 172799.99999638795
25 23.976023976023978 16 8991.00899100899 2.498h 8991.00000001057 8991.023708328808
25 29.97002997002997 3 1498.5014985014984 24.975m 1498.5199999992171 1498.4970000015815
25 120 289 172800 2.000d 172799.9999992555 172799.99997053778
29.97002997002997 24 3 1438.5614385614385 23.976m 1438.5704666680454 1438.541666667048
29.97002997002997 23.976023976023978 6 3592.8107856179786 59.880m 3592.8225666648073 3592.7975416632376
29.97002997002997 25 3 1498.5014985014984 24.975m 1498.4970000015815 1498.5199999992171
29.97002997002997 120 9 28771.228771228773 7.992h 28771.24249991176 28771.225002327265
120 24 1441 172800 2.000d 172799.99997053778 172799.99999638795
120 23.976023976023978 15 40279.720279720284 11.189h 40279.71666805922 40279.73949991521
120 25 289 172800 2.000d 172799.99997053778 172799.9999992555
120 29.97002997002997 9 28771.228771228773 7.992h 28771.225002327265 28771.24249991176
OK
All 7 tests passed.