-
-
Notifications
You must be signed in to change notification settings - Fork 5.6k
Open
Labels
compiler:simdinstruction-level vectorizationinstruction-level vectorizationmathsMathematical functionsMathematical functionsperformanceMust go fasterMust go faster
Description
Right now, @evalpoly(x, coefs...)
uses Horner's rule for real x
, and a more complicated algorithm for complex x
, and is performance-critical for evaluation of special functions.
However, it seems likely to be faster to try and exploit SIMD instructions for these polynomial evaluations, e.g. with Estrin's algorithm or some other technique.
(The nice thing about code generation / macros is that we can investigate fancy methods for this sort of thing, protected by an isa(x,Float64)
check that will get optimized out at compile-time.)
Metadata
Metadata
Assignees
Labels
compiler:simdinstruction-level vectorizationinstruction-level vectorizationmathsMathematical functionsMathematical functionsperformanceMust go fasterMust go faster