Benchmark

Here we compute 100000 nodes and weights of the Gauss rules. Try a million or ten million.

julia> using LinearAlgebra, BenchmarkTools, FastGaussQuadrature
julia> @btime gausschebyshev(100000); 723.881 μs (4 allocations: 1.53 MiB)
julia> @btime gausslegendre(100000); 1.878 ms (10 allocations: 2.62 MiB)
julia> @btime gaussjacobi(100000, 0.9, -0.1); 507.261 ms (5374 allocations: 1.26 GiB)
julia> @btime gaussradau(100000); 522.004 ms (703555 allocations: 1.27 GiB)
julia> @btime gausslobatto(100000); 496.003 ms (3881 allocations: 1.26 GiB)
julia> @btime gausslaguerre(100000); 82.733 ms (10008 allocations: 2.44 MiB)
julia> @btime gausshermite(100000); 140.308 ms (200718 allocations: 126.28 MiB)

The paper [1] computed a billion Gauss-Legendre nodes. So here we will do a billion + 1.

julia> @btime gausslegendre(1000000001);
  23.363 s (10 allocations: 22.35 GiB)

(The nodes near the endpoints coalesce in 16-digits of precision.)