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); 1.904 ms (4 allocations: 1.53 MiB)
julia> @btime gausslegendre(100000); 3.327 ms (10 allocations: 2.62 MiB)
julia> @btime gaussjacobi(100000, 0.9, -0.1); 1.088 s (3304 allocations: 1.25 GiB)
julia> @btime gaussradau(100000); 1.074 s (702285 allocations: 1.27 GiB)
julia> @btime gausslobatto(100000); 1.053 s (3284 allocations: 1.26 GiB)
julia> @btime gausslaguerre(100000); 708.939 ms (10008 allocations: 2.44 MiB)
julia> @btime gausshermite(100000); 505.042 ms (200645 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.)