Including ComplexExpr and ComplexFunc classes in Halide API

47 Views Asked by At

The ComplexExpr and ComplexFunc classes in the links below seem very convenient to work with complex numbers. Is there a plan to include them into the official Halide API? Or is there a reason why they are not included?

https://github.com/halide/Halide/blob/master/apps/fft/complex.h

https://github.com/halide/Halide/blob/be1269b15f4ba8b83df5fa0ef1ae507017fe1a69/apps/fft/funct.h

1

There are 1 best solutions below

0
Alex Reinking On

Speaking as a Halide developer...

Or is there a reason why they are not included?

We haven't included these historically since we didn't want to bless a particular representation for complex numbers. There are a few valid ways of dealing with them and the headers in question are just one.

Is there a plan to include them into the official Halide API?

We've started talking about packaging some of this type of code into a set of header-only "Halide tools" libraries, so named to avoid the normative implication of calling it something like "stdlib". So as of right now, there is no concrete plan, but the odds are nonzero.

In the meantime, the code is MIT licensed, so you should feel free to use those files, regardless.