[Numpy-discussion] Enhancements for NumPy's FFTs

Charles R Harris charlesr.harris at gmail.com
Sat Mar 14 17:01:31 EDT 2009


On Sat, Mar 14, 2009 at 2:24 PM, Charles R Harris <charlesr.harris at gmail.com
> wrote:

>
>
> On Sat, Mar 14, 2009 at 2:16 PM, Sturla Molden <sturla at molden.no> wrote:
>
>>
>>
>> 1) I have noticed that fftpack_litemodule.c does not release the GIL
>> around calls to functions in fftpack.c. I cannot se any obvious reason for
>> this. As far as I can tell, the functions in fftpack.c are re-entrant.
>>
>> 2) If fftpack_lite did release the GIL, it would allow functions in
>> numpy.fft to use multithreading for multiple FFTs in parallel
>> (threading.Thread are ok, not special compilation needed).
>>
>> 3) Is there any reason numpy.fft does not have dct? If not, I'd suggest
>> addition of numpy.fft.dct and numpy.fft.idct.
>>
>> 4) Regarding ticket #400: Cython now makes this easy. NumPy's FFTs should
>> be exposed to C extesions without calling back to Python.
>>
>>
>> Can I open a ticket for this and take care of it? At least 1, 2 and 4
>> should only take me an hour or so to write, so it might even be ready for
>> 1.3.0.
>>
>
> Give it a shot. Note that the fft transforms also use int instead of intp,
> which limits the maximum transform size to 32 bits. Fixing that is somewhere
> on my todo list but I would be happy to leave it to you ;) Although I expect
> transforms > 2GB aren't all that common.
>

On the reentrant bit, IIRC fftpack builds a table of sin/cos. It might be
worth checking/making that thread safe.

Chuck
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/numpy-discussion/attachments/20090314/2578d430/attachment.html>


More information about the NumPy-Discussion mailing list