]> Cypherpunks repositories - gostls13.git/commit
math: speed up Gamma(+Inf)
authorMohit Agarwal <mohit@sdf.org>
Tue, 18 Oct 2016 08:30:30 +0000 (14:00 +0530)
committerRobert Griesemer <gri@golang.org>
Tue, 18 Oct 2016 22:12:03 +0000 (22:12 +0000)
commit7eed848a178cbecae7131434eed1eaab81709a85
tree93ebc99f60996c2660f59d5dd3a69b796dbe575b
parent97b04152bc3d9df1155bc97d9e6095f69b6882c7
math: speed up Gamma(+Inf)

Add special case for Gamma(+∞) which speeds it up:

benchmark            old ns/op     new ns/op     delta
BenchmarkGamma-4     14.5          7.44          -48.69%

The documentation for math.Gamma already specifies it as a special
case:

        Gamma(+Inf) = +Inf

The original C code that has been used as the reference implementation
(as mentioned in the comments in gamma.go) also treats Gamma(+∞) as a
special case:

if( x == INFINITY )
        return(x);

Change-Id: Idac36e19192b440475aec0796faa2d2c7f8abe0b
Reviewed-on: https://go-review.googlesource.com/31370
Reviewed-by: Robert Griesemer <gri@golang.org>
src/math/gamma.go