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.287 ms (4 allocations: 1.53 MiB)
julia> @btime gausslegendre(100000); 3.060 ms (10 allocations: 2.29 MiB)
julia> @btime gaussjacobi(100000, 0.9, -0.1); 972.691 ms (3300 allocations: 1.25 GiB)
julia> @btime gaussradau(100000); 1.036 s (702281 allocations: 1.27 GiB)
julia> @btime gausslobatto(100000); 984.275 ms (3280 allocations: 1.26 GiB)
julia> @btime gausslaguerre(100000); 622.213 ms (10008 allocations: 2.44 MiB)
julia> @btime gausshermite(100000); 402.225 ms (200645 allocations: 126.29 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.)