Skip to content

Support arbitrary precision calculations#93

Merged
3 commits merged into
mainfrom
arbitrary-precision
Jun 2, 2026
Merged

Support arbitrary precision calculations#93
3 commits merged into
mainfrom
arbitrary-precision

Conversation

@langestefan
Copy link
Copy Markdown
Member

No description provided.

@github-actions
Copy link
Copy Markdown

github-actions Bot commented Jun 2, 2026

Benchmark Results (Julia vlts)

Time benchmarks
main e6ceed5... main / e6ceed5...
ours/n=100/NOAA 0.03 ± 0.0016 ms 0.0314 ± 0.00032 ms 0.953 ± 0.052
ours/n=100/PSA 0.0151 ± 0.0017 ms 0.0135 ± 8e-05 ms 1.12 ± 0.13
ours/n=100/SPA 0.231 ± 0.0049 ms 0.227 ± 0.0037 ms 1.02 ± 0.027
ours/n=100/USNO 0.0285 ± 0.00019 ms 0.0299 ± 0.0017 ms 0.955 ± 0.054
ours/n=100/Walraven 0.0162 ± 0.00035 ms 0.0177 ± 0.0016 ms 0.919 ± 0.085
ours/n=1000/NOAA 0.293 ± 0.0067 ms 0.293 ± 0.0067 ms 1 ± 0.033
ours/n=1000/PSA 0.136 ± 0.0086 ms 0.137 ± 0.0088 ms 0.989 ± 0.089
ours/n=1000/SPA 2.34 ± 0.018 ms 2.34 ± 0.017 ms 1 ± 0.011
ours/n=1000/USNO 0.278 ± 0.0067 ms 0.277 ± 0.0066 ms 1 ± 0.034
ours/n=1000/Walraven 0.168 ± 0.009 ms 0.169 ± 0.0096 ms 0.998 ± 0.078
ours/n=10000/NOAA 2.96 ± 0.014 ms 2.96 ± 0.019 ms 1 ± 0.008
ours/n=10000/PSA 1.33 ± 0.0094 ms 1.33 ± 0.0089 ms 1 ± 0.0098
ours/n=10000/SPA 23.7 ± 0.13 ms 23.7 ± 0.061 ms 1 ± 0.006
ours/n=10000/USNO 2.83 ± 0.017 ms 2.82 ± 0.017 ms 1.01 ± 0.0086
ours/n=10000/Walraven 1.62 ± 0.0086 ms 1.63 ± 0.0083 ms 0.997 ± 0.0073
ours/n=100000/NOAA 30.5 ± 0.074 ms 30.5 ± 0.1 ms 1 ± 0.0041
ours/n=100000/PSA 13.4 ± 0.034 ms 13.4 ± 0.033 ms 1 ± 0.0036
ours/n=100000/SPA 238 ± 1.6 ms 238 ± 1.3 ms 0.999 ± 0.0088
ours/n=100000/USNO 28.9 ± 0.075 ms 28.8 ± 0.071 ms 1 ± 0.0036
ours/n=100000/Walraven 16.3 ± 0.046 ms 16.3 ± 0.079 ms 0.997 ± 0.0056
refraction/ARCHER 0.0002 ± 1e-05 ms 0.0002 ± 9e-06 ms 1 ± 0.067
refraction/BENNETT 0.00019 ± 1e-06 ms 0.00019 ± 1e-06 ms 1 ± 0.0074
refraction/MICHALSKY 0.000161 ± 1e-05 ms 0.00017 ± 1e-05 ms 0.947 ± 0.081
refraction/NoRefraction 0.00016 ± 1e-06 ms 0.00016 ± 1e-06 ms 1 ± 0.0088
refraction/SG2 0.0002 ± 1e-06 ms 0.0002 ± 1e-06 ms 1 ± 0.0071
single/NOAA 0.000331 ± 1e-05 ms 0.00034 ± 1e-05 ms 0.974 ± 0.041
single/PSA 0.00016 ± 1e-06 ms 0.00016 ± 1e-06 ms 1 ± 0.0088
single/SPA 0.00236 ± 1e-05 ms 0.00236 ± 1e-05 ms 1 ± 0.006
single/USNO 0.00031 ± 1e-05 ms 0.00031 ± 1e-05 ms 1 ± 0.046
single/Walraven 0.000191 ± 1e-05 ms 0.000191 ± 1e-05 ms 1 ± 0.074
solposx/n=100/NOAA 2.27 ± 0.024 ms 2.23 ± 0.026 ms 1.02 ± 0.016
solposx/n=100/PSA 1.57 ± 0.025 ms 1.61 ± 0.021 ms 0.975 ± 0.02
solposx/n=100/SPA 2.19 ± 0.023 ms 2.2 ± 0.025 ms 0.995 ± 0.015
solposx/n=100/USNO 1.88 ± 0.019 ms 1.87 ± 0.021 ms 1.01 ± 0.015
solposx/n=100/Walraven 0.664 ± 0.018 ms 0.653 ± 0.016 ms 1.02 ± 0.037
solposx/n=1000/NOAA 2.82 ± 0.025 ms 2.79 ± 0.027 ms 1.01 ± 0.013
solposx/n=1000/PSA 1.81 ± 0.02 ms 1.85 ± 0.019 ms 0.98 ± 0.015
solposx/n=1000/SPA 5.29 ± 0.074 ms 5.26 ± 0.078 ms 1.01 ± 0.02
solposx/n=1000/USNO 5.02 ± 0.05 ms 5.04 ± 0.049 ms 0.996 ± 0.014
solposx/n=1000/Walraven 0.863 ± 0.019 ms 0.857 ± 0.019 ms 1.01 ± 0.031
solposx/n=10000/NOAA 7.82 ± 0.17 ms 7.84 ± 0.19 ms 0.998 ± 0.032
solposx/n=10000/PSA 4.17 ± 0.12 ms 4.22 ± 0.11 ms 0.989 ± 0.037
solposx/n=10000/SPA 32.3 ± 0.13 ms 32.7 ± 0.19 ms 0.987 ± 0.007
solposx/n=10000/USNO 36 ± 0.48 ms 36.8 ± 0.49 ms 0.98 ± 0.019
solposx/n=10000/Walraven 2.73 ± 0.074 ms 2.72 ± 0.078 ms 1 ± 0.04
solposx/n=100000/NOAA 57.2 ± 0.64 ms 57.6 ± 0.54 ms 0.994 ± 0.015
solposx/n=100000/PSA 27.6 ± 0.83 ms 28.2 ± 0.8 ms 0.98 ± 0.04
solposx/n=100000/SPA 302 ± 1.4 ms 303 ± 0.71 ms 0.998 ± 0.0051
solposx/n=100000/USNO 354 ± 32 ms 358 ± 39 ms 0.988 ± 0.14
solposx/n=100000/Walraven 20.8 ± 0.82 ms 21.2 ± 0.7 ms 0.981 ± 0.05
time_to_load 0.131 ± 0.0015 s 0.131 ± 0.00032 s 1 ± 0.012
Memory benchmarks
main e6ceed5... main / e6ceed5...
ours/n=100/NOAA 5 allocs: 4.38 kB 5 allocs: 4.38 kB 1
ours/n=100/PSA 3 allocs: 2.62 kB 3 allocs: 2.62 kB 1
ours/n=100/SPA 5 allocs: 4.38 kB 5 allocs: 4.38 kB 1
ours/n=100/USNO 3 allocs: 2.62 kB 3 allocs: 2.62 kB 1
ours/n=100/Walraven 3 allocs: 2.62 kB 3 allocs: 2.62 kB 1
ours/n=1000/NOAA 5 allocs: 0.0388 MB 5 allocs: 0.0388 MB 1
ours/n=1000/PSA 3 allocs: 23.8 kB 3 allocs: 23.8 kB 1
ours/n=1000/SPA 5 allocs: 0.0388 MB 5 allocs: 0.0388 MB 1
ours/n=1000/USNO 3 allocs: 23.8 kB 3 allocs: 23.8 kB 1
ours/n=1000/Walraven 3 allocs: 23.8 kB 3 allocs: 23.8 kB 1
ours/n=10000/NOAA 10 allocs: 0.382 MB 10 allocs: 0.382 MB 1
ours/n=10000/PSA 6 allocs: 0.229 MB 6 allocs: 0.229 MB 1
ours/n=10000/SPA 10 allocs: 0.382 MB 10 allocs: 0.382 MB 1
ours/n=10000/USNO 6 allocs: 0.229 MB 6 allocs: 0.229 MB 1
ours/n=10000/Walraven 6 allocs: 0.229 MB 6 allocs: 0.229 MB 1
ours/n=100000/NOAA 10 allocs: 3.81 MB 10 allocs: 3.81 MB 1
ours/n=100000/PSA 6 allocs: 2.29 MB 6 allocs: 2.29 MB 1
ours/n=100000/SPA 10 allocs: 3.81 MB 10 allocs: 3.81 MB 1
ours/n=100000/USNO 6 allocs: 2.29 MB 6 allocs: 2.29 MB 1
ours/n=100000/Walraven 6 allocs: 2.29 MB 6 allocs: 2.29 MB 1
refraction/ARCHER 0 allocs: 0 B 0 allocs: 0 B
refraction/BENNETT 0 allocs: 0 B 0 allocs: 0 B
refraction/MICHALSKY 0 allocs: 0 B 0 allocs: 0 B
refraction/NoRefraction 0 allocs: 0 B 0 allocs: 0 B
refraction/SG2 0 allocs: 0 B 0 allocs: 0 B
single/NOAA 0 allocs: 0 B 0 allocs: 0 B
single/PSA 0 allocs: 0 B 0 allocs: 0 B
single/SPA 0 allocs: 0 B 0 allocs: 0 B
single/USNO 0 allocs: 0 B 0 allocs: 0 B
single/Walraven 0 allocs: 0 B 0 allocs: 0 B
solposx/n=100/NOAA 22 allocs: 0.781 kB 22 allocs: 0.781 kB 1
solposx/n=100/PSA 0.06 k allocs: 1.66 kB 0.06 k allocs: 1.66 kB 1
solposx/n=100/SPA 22 allocs: 0.781 kB 22 allocs: 0.781 kB 1
solposx/n=100/USNO 22 allocs: 0.781 kB 22 allocs: 0.781 kB 1
solposx/n=100/Walraven 22 allocs: 0.781 kB 22 allocs: 0.781 kB 1
solposx/n=1000/NOAA 22 allocs: 0.781 kB 22 allocs: 0.781 kB 1
solposx/n=1000/PSA 0.06 k allocs: 1.66 kB 0.06 k allocs: 1.66 kB 1
solposx/n=1000/SPA 22 allocs: 0.781 kB 22 allocs: 0.781 kB 1
solposx/n=1000/USNO 22 allocs: 0.781 kB 22 allocs: 0.781 kB 1
solposx/n=1000/Walraven 22 allocs: 0.781 kB 22 allocs: 0.781 kB 1
solposx/n=10000/NOAA 22 allocs: 0.781 kB 22 allocs: 0.781 kB 1
solposx/n=10000/PSA 0.06 k allocs: 1.66 kB 0.06 k allocs: 1.66 kB 1
solposx/n=10000/SPA 22 allocs: 0.781 kB 22 allocs: 0.781 kB 1
solposx/n=10000/USNO 22 allocs: 0.781 kB 22 allocs: 0.781 kB 1
solposx/n=10000/Walraven 22 allocs: 0.781 kB 22 allocs: 0.781 kB 1
solposx/n=100000/NOAA 22 allocs: 0.781 kB 22 allocs: 0.781 kB 1
solposx/n=100000/PSA 0.06 k allocs: 1.66 kB 0.06 k allocs: 1.66 kB 1
solposx/n=100000/SPA 22 allocs: 0.781 kB 22 allocs: 0.781 kB 1
solposx/n=100000/USNO 22 allocs: 0.781 kB 22 allocs: 0.781 kB 1
solposx/n=100000/Walraven 22 allocs: 0.781 kB 22 allocs: 0.781 kB 1
time_to_load 0.153 k allocs: 14.5 kB 0.153 k allocs: 14.5 kB 1

@github-actions
Copy link
Copy Markdown

github-actions Bot commented Jun 2, 2026

Benchmark Results (Julia v1)

Time benchmarks
main e6ceed5... main / e6ceed5...
ours/n=100/NOAA 0.0401 ± 0.00028 ms 0.04 ± 0.00027 ms 1 ± 0.0097
ours/n=100/PSA 0.0173 ± 0.00015 ms 0.0173 ± 0.00015 ms 1 ± 0.012
ours/n=100/SPA 0.309 ± 0.0086 ms 0.308 ± 0.0085 ms 1 ± 0.039
ours/n=100/USNO 0.0381 ± 0.00018 ms 0.0376 ± 0.00021 ms 1.01 ± 0.0074
ours/n=100/Walraven 0.0207 ± 0.00027 ms 0.0208 ± 0.00027 ms 0.994 ± 0.018
ours/n=1000/NOAA 0.394 ± 0.0089 ms 0.394 ± 0.0091 ms 1 ± 0.032
ours/n=1000/PSA 0.173 ± 0.009 ms 0.173 ± 0.0087 ms 1 ± 0.072
ours/n=1000/SPA 3.18 ± 0.023 ms 3.17 ± 0.023 ms 1 ± 0.01
ours/n=1000/USNO 0.372 ± 0.0091 ms 0.368 ± 0.0092 ms 1.01 ± 0.035
ours/n=1000/Walraven 0.207 ± 0.01 ms 0.207 ± 0.011 ms 1 ± 0.071
ours/n=10000/NOAA 3.99 ± 0.023 ms 3.98 ± 0.022 ms 1 ± 0.0079
ours/n=10000/PSA 1.7 ± 0.0088 ms 1.7 ± 0.0089 ms 1 ± 0.0074
ours/n=10000/SPA 32.4 ± 0.084 ms 32.3 ± 0.061 ms 1 ± 0.0032
ours/n=10000/USNO 3.76 ± 0.023 ms 3.72 ± 0.021 ms 1.01 ± 0.0084
ours/n=10000/Walraven 2.08 ± 0.01 ms 2.08 ± 0.012 ms 1 ± 0.0077
ours/n=100000/NOAA 41 ± 0.73 ms 41 ± 0.72 ms 1 ± 0.025
ours/n=100000/PSA 17.5 ± 0.31 ms 17.2 ± 0.1 ms 1.02 ± 0.019
ours/n=100000/SPA 326 ± 1.2 ms 325 ± 0.57 ms 1 ± 0.0042
ours/n=100000/USNO 38.4 ± 0.2 ms 38 ± 0.22 ms 1.01 ± 0.0078
ours/n=100000/Walraven 20.9 ± 0.59 ms 20.9 ± 0.5 ms 1 ± 0.037
refraction/ARCHER 0.000251 ± 1e-05 ms 0.000251 ± 1e-05 ms 1 ± 0.056
refraction/BENNETT 0.000251 ± 1e-05 ms 0.000251 ± 1e-05 ms 1 ± 0.056
refraction/MICHALSKY 0.000211 ± 1e-05 ms 0.000211 ± 1e-05 ms 1 ± 0.067
refraction/NoRefraction 0.00021 ± 1e-06 ms 0.00021 ± 9e-06 ms 1 ± 0.043
refraction/SG2 0.00027 ± 1e-06 ms 0.00027 ± 1e-06 ms 1 ± 0.0052
single/NOAA 0.00045 ± 1e-05 ms 0.000441 ± 1e-05 ms 1.02 ± 0.032
single/PSA 0.00021 ± 1e-06 ms 0.00021 ± 1e-06 ms 1 ± 0.0067
single/SPA 0.00321 ± 1e-05 ms 0.0032 ± 1.1e-05 ms 1 ± 0.0046
single/USNO 0.000401 ± 1e-05 ms 0.000401 ± 1e-05 ms 1 ± 0.035
single/Walraven 0.00026 ± 1e-06 ms 0.00026 ± 1e-06 ms 1 ± 0.0054
solposx/n=100/NOAA 2.89 ± 0.028 ms 2.88 ± 0.03 ms 1 ± 0.014
solposx/n=100/PSA 2 ± 0.022 ms 2.02 ± 0.027 ms 0.989 ± 0.017
solposx/n=100/SPA 2.91 ± 0.027 ms 2.93 ± 0.028 ms 0.995 ± 0.013
solposx/n=100/USNO 2.43 ± 0.029 ms 2.43 ± 0.032 ms 1 ± 0.018
solposx/n=100/Walraven 0.85 ± 0.016 ms 0.856 ± 0.016 ms 0.992 ± 0.027
solposx/n=1000/NOAA 3.5 ± 0.036 ms 3.5 ± 0.035 ms 1 ± 0.014
solposx/n=1000/PSA 2.33 ± 0.027 ms 2.34 ± 0.03 ms 0.995 ± 0.017
solposx/n=1000/SPA 7.27 ± 0.067 ms 7.26 ± 0.074 ms 1 ± 0.014
solposx/n=1000/USNO 6.54 ± 0.064 ms 6.49 ± 0.061 ms 1.01 ± 0.014
solposx/n=1000/Walraven 1.12 ± 0.025 ms 1.13 ± 0.026 ms 0.994 ± 0.032
solposx/n=10000/NOAA 9.51 ± 0.2 ms 9.5 ± 0.2 ms 1 ± 0.03
solposx/n=10000/PSA 5.72 ± 0.16 ms 5.72 ± 0.13 ms 1 ± 0.036
solposx/n=10000/SPA 48 ± 0.34 ms 48.2 ± 0.12 ms 0.995 ± 0.0074
solposx/n=10000/USNO 46.7 ± 0.53 ms 46.5 ± 0.6 ms 1 ± 0.017
solposx/n=10000/Walraven 3.75 ± 0.062 ms 3.75 ± 0.086 ms 1 ± 0.028
solposx/n=100000/NOAA 68.1 ± 0.44 ms 68.2 ± 0.35 ms 0.999 ± 0.0082
solposx/n=100000/PSA 38.8 ± 0.94 ms 38.9 ± 0.98 ms 0.997 ± 0.035
solposx/n=100000/SPA 456 ± 0.79 ms 455 ± 1.3 ms 1 ± 0.0033
solposx/n=100000/USNO 457 ± 35 ms 451 ± 37 ms 1.01 ± 0.11
solposx/n=100000/Walraven 29.3 ± 0.79 ms 29.3 ± 0.77 ms 0.999 ± 0.038
time_to_load 0.174 ± 0.001 s 0.174 ± 0.0008 s 1 ± 0.0075
Memory benchmarks
main e6ceed5... main / e6ceed5...
ours/n=100/NOAA 10 allocs: 4.53 kB 10 allocs: 4.53 kB 1
ours/n=100/PSA 6 allocs: 2.72 kB 6 allocs: 2.72 kB 1
ours/n=100/SPA 10 allocs: 4.53 kB 10 allocs: 4.53 kB 1
ours/n=100/USNO 6 allocs: 2.72 kB 6 allocs: 2.72 kB 1
ours/n=100/Walraven 6 allocs: 2.72 kB 6 allocs: 2.72 kB 1
ours/n=1000/NOAA 15 allocs: 0.0385 MB 15 allocs: 0.0385 MB 1
ours/n=1000/PSA 9 allocs: 23.6 kB 9 allocs: 23.6 kB 1
ours/n=1000/SPA 15 allocs: 0.0385 MB 15 allocs: 0.0385 MB 1
ours/n=1000/USNO 9 allocs: 23.6 kB 9 allocs: 23.6 kB 1
ours/n=1000/Walraven 9 allocs: 23.6 kB 9 allocs: 23.6 kB 1
ours/n=10000/NOAA 15 allocs: 0.382 MB 15 allocs: 0.382 MB 1
ours/n=10000/PSA 9 allocs: 0.229 MB 9 allocs: 0.229 MB 1
ours/n=10000/SPA 15 allocs: 0.382 MB 15 allocs: 0.382 MB 1
ours/n=10000/USNO 9 allocs: 0.229 MB 9 allocs: 0.229 MB 1
ours/n=10000/Walraven 9 allocs: 0.229 MB 9 allocs: 0.229 MB 1
ours/n=100000/NOAA 15 allocs: 3.82 MB 15 allocs: 3.82 MB 1
ours/n=100000/PSA 9 allocs: 2.29 MB 9 allocs: 2.29 MB 1
ours/n=100000/SPA 15 allocs: 3.82 MB 15 allocs: 3.82 MB 1
ours/n=100000/USNO 9 allocs: 2.29 MB 9 allocs: 2.29 MB 1
ours/n=100000/Walraven 9 allocs: 2.29 MB 9 allocs: 2.29 MB 1
refraction/ARCHER 0 allocs: 0 B 0 allocs: 0 B
refraction/BENNETT 0 allocs: 0 B 0 allocs: 0 B
refraction/MICHALSKY 0 allocs: 0 B 0 allocs: 0 B
refraction/NoRefraction 0 allocs: 0 B 0 allocs: 0 B
refraction/SG2 0 allocs: 0 B 0 allocs: 0 B
single/NOAA 0 allocs: 0 B 0 allocs: 0 B
single/PSA 0 allocs: 0 B 0 allocs: 0 B
single/SPA 0 allocs: 0 B 0 allocs: 0 B
single/USNO 0 allocs: 0 B 0 allocs: 0 B
single/Walraven 0 allocs: 0 B 0 allocs: 0 B
solposx/n=100/NOAA 10 allocs: 0.531 kB 10 allocs: 0.531 kB 1
solposx/n=100/PSA 0.039 k allocs: 1.2 kB 0.039 k allocs: 1.2 kB 1
solposx/n=100/SPA 10 allocs: 0.531 kB 10 allocs: 0.531 kB 1
solposx/n=100/USNO 10 allocs: 0.531 kB 10 allocs: 0.531 kB 1
solposx/n=100/Walraven 10 allocs: 0.531 kB 10 allocs: 0.531 kB 1
solposx/n=1000/NOAA 10 allocs: 0.531 kB 10 allocs: 0.531 kB 1
solposx/n=1000/PSA 0.039 k allocs: 1.2 kB 0.039 k allocs: 1.2 kB 1
solposx/n=1000/SPA 10 allocs: 0.531 kB 10 allocs: 0.531 kB 1
solposx/n=1000/USNO 10 allocs: 0.531 kB 10 allocs: 0.531 kB 1
solposx/n=1000/Walraven 10 allocs: 0.531 kB 10 allocs: 0.531 kB 1
solposx/n=10000/NOAA 10 allocs: 0.531 kB 10 allocs: 0.531 kB 1
solposx/n=10000/PSA 0.039 k allocs: 1.2 kB 0.039 k allocs: 1.2 kB 1
solposx/n=10000/SPA 10 allocs: 0.531 kB 10 allocs: 0.531 kB 1
solposx/n=10000/USNO 10 allocs: 0.531 kB 10 allocs: 0.531 kB 1
solposx/n=10000/Walraven 10 allocs: 0.531 kB 10 allocs: 0.531 kB 1
solposx/n=100000/NOAA 10 allocs: 0.531 kB 10 allocs: 0.531 kB 1
solposx/n=100000/PSA 0.039 k allocs: 1.2 kB 0.039 k allocs: 1.2 kB 1
solposx/n=100000/SPA 10 allocs: 0.531 kB 10 allocs: 0.531 kB 1
solposx/n=100000/USNO 10 allocs: 0.531 kB 10 allocs: 0.531 kB 1
solposx/n=100000/Walraven 10 allocs: 0.531 kB 10 allocs: 0.531 kB 1
time_to_load 0.145 k allocs: 11 kB 0.145 k allocs: 11 kB 1

@langestefan langestefan closed this pull request by merging all changes into main in 701f158 Jun 2, 2026
@github-actions
Copy link
Copy Markdown

github-actions Bot commented Jun 2, 2026

Benchmark Results (Julia vpre)

Time benchmarks
main e6ceed5... main / e6ceed5...
ours/n=100/NOAA 0.0421 ± 0.00041 ms 0.0417 ± 0.00028 ms 1.01 ± 0.012
ours/n=100/PSA 0.0165 ± 0.00013 ms 0.0165 ± 0.00012 ms 1 ± 0.011
ours/n=100/SPA 0.432 ± 0.017 ms 0.415 ± 0.0088 ms 1.04 ± 0.046
ours/n=100/USNO 0.0393 ± 0.00025 ms 0.0392 ± 0.00025 ms 1 ± 0.0091
ours/n=100/Walraven 0.0192 ± 0.00048 ms 0.0193 ± 0.00043 ms 0.995 ± 0.033
ours/n=1000/NOAA 0.412 ± 0.0092 ms 0.411 ± 0.0092 ms 1 ± 0.032
ours/n=1000/PSA 0.165 ± 0.0029 ms 0.164 ± 0.0017 ms 1 ± 0.02
ours/n=1000/SPA 4.46 ± 0.1 ms 4.34 ± 0.096 ms 1.03 ± 0.033
ours/n=1000/USNO 0.388 ± 0.01 ms 0.384 ± 0.009 ms 1.01 ± 0.035
ours/n=1000/Walraven 0.193 ± 0.008 ms 0.193 ± 0.0083 ms 0.998 ± 0.06
ours/n=10000/NOAA 4.12 ± 0.024 ms 4.12 ± 0.033 ms 1 ± 0.0099
ours/n=10000/PSA 1.66 ± 0.014 ms 1.65 ± 0.011 ms 1 ± 0.011
ours/n=10000/SPA 43.7 ± 0.77 ms 43.5 ± 0.28 ms 1 ± 0.019
ours/n=10000/USNO 3.88 ± 0.032 ms 3.87 ± 0.024 ms 1 ± 0.01
ours/n=10000/Walraven 1.95 ± 0.01 ms 1.95 ± 0.011 ms 0.999 ± 0.0076
ours/n=100000/NOAA 42.1 ± 1.4 ms 42.1 ± 1.6 ms 1 ± 0.049
ours/n=100000/PSA 16.7 ± 0.59 ms 16.6 ± 0.53 ms 1 ± 0.048
ours/n=100000/SPA 448 ± 8.7 ms 439 ± 7.1 ms 1.02 ± 0.026
ours/n=100000/USNO 39.5 ± 1 ms 39.3 ± 0.99 ms 1.01 ± 0.036
ours/n=100000/Walraven 19.5 ± 0.16 ms 19.5 ± 0.58 ms 1 ± 0.031
refraction/ARCHER 0.00023 ± 1e-06 ms 0.00023 ± 1e-05 ms 1 ± 0.044
refraction/BENNETT 0.00023 ± 1e-06 ms 0.00023 ± 1e-06 ms 1 ± 0.0061
refraction/MICHALSKY 0.00019 ± 1e-06 ms 0.00019 ± 1e-06 ms 1 ± 0.0074
refraction/NoRefraction 0.00019 ± 1e-06 ms 0.00019 ± 1e-05 ms 1 ± 0.053
refraction/SG2 0.000241 ± 1e-05 ms 0.000241 ± 1e-05 ms 1 ± 0.059
single/NOAA 0.000441 ± 9e-06 ms 0.000441 ± 9e-06 ms 1 ± 0.029
single/PSA 0.00019 ± 1e-05 ms 0.00019 ± 1e-05 ms 1 ± 0.074
single/SPA 0.00391 ± 9e-05 ms 0.00387 ± 4.1e-05 ms 1.01 ± 0.026
single/USNO 0.000401 ± 1e-06 ms 0.000401 ± 1e-06 ms 1 ± 0.0035
single/Walraven 0.000231 ± 1e-06 ms 0.000231 ± 1e-06 ms 1 ± 0.0061
solposx/n=100/NOAA 4.06 ± 0.095 ms 4.1 ± 0.096 ms 0.99 ± 0.033
solposx/n=100/PSA 2.9 ± 0.062 ms 2.92 ± 0.057 ms 0.994 ± 0.029
solposx/n=100/SPA 3.15 ± 0.057 ms 3.15 ± 0.046 ms 1 ± 0.023
solposx/n=100/USNO 3.11 ± 0.055 ms 3.15 ± 0.057 ms 0.986 ± 0.025
solposx/n=100/Walraven 1.16 ± 0.03 ms 1.18 ± 0.03 ms 0.987 ± 0.035
solposx/n=1000/NOAA 4.72 ± 0.096 ms 4.77 ± 0.093 ms 0.989 ± 0.028
solposx/n=1000/PSA 3.27 ± 0.071 ms 3.31 ± 0.056 ms 0.989 ± 0.027
solposx/n=1000/SPA 7.81 ± 0.15 ms 7.87 ± 0.21 ms 0.993 ± 0.032
solposx/n=1000/USNO 7.41 ± 0.11 ms 7.37 ± 0.11 ms 1 ± 0.021
solposx/n=1000/Walraven 1.46 ± 0.04 ms 1.47 ± 0.041 ms 0.989 ± 0.039
solposx/n=10000/NOAA 10.7 ± 0.15 ms 10.8 ± 0.21 ms 0.994 ± 0.023
solposx/n=10000/PSA 6.72 ± 0.14 ms 6.8 ± 0.19 ms 0.988 ± 0.035
solposx/n=10000/SPA 51.2 ± 0.33 ms 51.8 ± 0.42 ms 0.988 ± 0.01
solposx/n=10000/USNO 50.2 ± 0.73 ms 50 ± 0.64 ms 1 ± 0.019
solposx/n=10000/Walraven 3.99 ± 0.071 ms 4.03 ± 0.079 ms 0.99 ± 0.026
solposx/n=100000/NOAA 67.4 ± 0.65 ms 67.3 ± 0.46 ms 1 ± 0.012
solposx/n=100000/PSA 39.5 ± 0.51 ms 39.7 ± 0.53 ms 0.994 ± 0.019
solposx/n=100000/SPA 509 ± 2.6 ms 511 ± 6.5 ms 0.996 ± 0.014
solposx/n=100000/USNO 478 ± 36 ms 471 ± 33 ms 1.01 ± 0.1
solposx/n=100000/Walraven 29.3 ± 0.42 ms 29.4 ± 0.45 ms 0.998 ± 0.021
time_to_load 0.132 ± 0.0036 s 0.133 ± 0.0049 s 0.995 ± 0.046
Memory benchmarks
main e6ceed5... main / e6ceed5...
ours/n=100/NOAA 10 allocs: 4.53 kB 10 allocs: 4.53 kB 1
ours/n=100/PSA 6 allocs: 2.72 kB 6 allocs: 2.72 kB 1
ours/n=100/SPA 10 allocs: 4.53 kB 10 allocs: 4.53 kB 1
ours/n=100/USNO 6 allocs: 2.72 kB 6 allocs: 2.72 kB 1
ours/n=100/Walraven 6 allocs: 2.72 kB 6 allocs: 2.72 kB 1
ours/n=1000/NOAA 15 allocs: 0.0385 MB 15 allocs: 0.0385 MB 1
ours/n=1000/PSA 9 allocs: 23.6 kB 9 allocs: 23.6 kB 1
ours/n=1000/SPA 15 allocs: 0.0385 MB 15 allocs: 0.0385 MB 1
ours/n=1000/USNO 9 allocs: 23.6 kB 9 allocs: 23.6 kB 1
ours/n=1000/Walraven 9 allocs: 23.6 kB 9 allocs: 23.6 kB 1
ours/n=10000/NOAA 15 allocs: 0.382 MB 15 allocs: 0.382 MB 1
ours/n=10000/PSA 9 allocs: 0.229 MB 9 allocs: 0.229 MB 1
ours/n=10000/SPA 15 allocs: 0.382 MB 15 allocs: 0.382 MB 1
ours/n=10000/USNO 9 allocs: 0.229 MB 9 allocs: 0.229 MB 1
ours/n=10000/Walraven 9 allocs: 0.229 MB 9 allocs: 0.229 MB 1
ours/n=100000/NOAA 15 allocs: 3.82 MB 15 allocs: 3.82 MB 1
ours/n=100000/PSA 9 allocs: 2.29 MB 9 allocs: 2.29 MB 1
ours/n=100000/SPA 15 allocs: 3.82 MB 15 allocs: 3.82 MB 1
ours/n=100000/USNO 9 allocs: 2.29 MB 9 allocs: 2.29 MB 1
ours/n=100000/Walraven 9 allocs: 2.29 MB 9 allocs: 2.29 MB 1
refraction/ARCHER 0 allocs: 0 B 0 allocs: 0 B
refraction/BENNETT 0 allocs: 0 B 0 allocs: 0 B
refraction/MICHALSKY 0 allocs: 0 B 0 allocs: 0 B
refraction/NoRefraction 0 allocs: 0 B 0 allocs: 0 B
refraction/SG2 0 allocs: 0 B 0 allocs: 0 B
single/NOAA 0 allocs: 0 B 0 allocs: 0 B
single/PSA 0 allocs: 0 B 0 allocs: 0 B
single/SPA 0 allocs: 0 B 0 allocs: 0 B
single/USNO 0 allocs: 0 B 0 allocs: 0 B
single/Walraven 0 allocs: 0 B 0 allocs: 0 B
solposx/n=100/NOAA 10 allocs: 0.531 kB 10 allocs: 0.531 kB 1
solposx/n=100/PSA 0.039 k allocs: 1.2 kB 0.039 k allocs: 1.2 kB 1
solposx/n=100/SPA 10 allocs: 0.531 kB 10 allocs: 0.531 kB 1
solposx/n=100/USNO 10 allocs: 0.531 kB 10 allocs: 0.531 kB 1
solposx/n=100/Walraven 10 allocs: 0.531 kB 10 allocs: 0.531 kB 1
solposx/n=1000/NOAA 10 allocs: 0.531 kB 10 allocs: 0.531 kB 1
solposx/n=1000/PSA 0.039 k allocs: 1.2 kB 0.039 k allocs: 1.2 kB 1
solposx/n=1000/SPA 10 allocs: 0.531 kB 10 allocs: 0.531 kB 1
solposx/n=1000/USNO 10 allocs: 0.531 kB 10 allocs: 0.531 kB 1
solposx/n=1000/Walraven 10 allocs: 0.531 kB 10 allocs: 0.531 kB 1
solposx/n=10000/NOAA 10 allocs: 0.531 kB 10 allocs: 0.531 kB 1
solposx/n=10000/PSA 0.039 k allocs: 1.2 kB 0.039 k allocs: 1.2 kB 1
solposx/n=10000/SPA 10 allocs: 0.531 kB 10 allocs: 0.531 kB 1
solposx/n=10000/USNO 10 allocs: 0.531 kB 10 allocs: 0.531 kB 1
solposx/n=10000/Walraven 10 allocs: 0.531 kB 10 allocs: 0.531 kB 1
solposx/n=100000/NOAA 10 allocs: 0.531 kB 10 allocs: 0.531 kB 1
solposx/n=100000/PSA 0.039 k allocs: 1.2 kB 0.039 k allocs: 1.2 kB 1
solposx/n=100000/SPA 10 allocs: 0.531 kB 10 allocs: 0.531 kB 1
solposx/n=100000/USNO 10 allocs: 0.531 kB 10 allocs: 0.531 kB 1
solposx/n=100000/Walraven 10 allocs: 0.531 kB 10 allocs: 0.531 kB 1
time_to_load 0.205 k allocs: 11.9 kB 0.205 k allocs: 11.9 kB 1

@langestefan langestefan deleted the arbitrary-precision branch June 2, 2026 13:32
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant