xtensor-stack / xtensor-signal

Signal processing features based on xtensor
BSD 3-Clause "New" or "Revised" License
8 stars 3 forks source link

[Bug] Savgol_filter is memory hungry and slow for large datasets #8

Closed spectre-ns closed 10 months ago

spectre-ns commented 1 year ago

The call to savgol_filter using a matrix-based convolution known as a toeplitz matrix to implement the filter. This has the advantage of being able to use BLAS (possibly even cuBLAS) for data parallelization for speed improvements. The filter should switch to a direct convolution when the data length exceeds ~1000 to avoid a large and very space matrix still requiring dense multiplications. Sparce representations would be another way to speed it up but with way more effort.

spectre-ns commented 10 months ago

Remove feature for father development