⟨12sichelgaita⟩ Largely off-topic, but here are the benchmarks on my machine. The number after "Cpp/" is the degree of the geopotential: Run on (48 X 3793 MHz CPU s) CPU Caches: L1 Data 32 KiB (x24) L1 Instruction 32 KiB (x24) L2 Unified 512 KiB (x24) L3 Unified 32768 KiB (x4) --------------------------------------------------------------------------------- Benchmark Time CPU Iterations --------------------------------------------------------------------------------- BM_ComputeGeopotentialCpp/2 100 us 100 us 6400 BM_ComputeGeopotentialCpp/3 124 us 122 us 4978 BM_ComputeGeopotentialCpp/5 190 us 188 us 3733 BM_ComputeGeopotentialCpp/10 557 us 558 us 1120 BM_ComputeGeopotentialDistance/150000 102 us 103 us 6400 BM_ComputeGeopotentialDistance/500000 42.0 us 42.4 us 16593 BM_ComputeGeopotentialDistance/5000000 8.96 us 8.89 us 89600