A Split Fast Fourier Transform Algorithm for Block Toeplitz Matrix-Vector Multiplication
<|reference_start|>A Split Fast Fourier Transform Algorithm for Block Toeplitz Matrix-Vector Multiplication: Numeric modeling of electromagnetics and acoustics frequently entails matrix-vector multiplication with block Toeplitz structure. When the corresponding block Toeplitz matrix is not highly sparse, e.g. when considering the electromagnetic Green function in a spatial basis, such calculations are often carried out by performing a multilevel embedding that gives the matrix a fully circulant form. While this transformation allows the associated matrix-vector multiplication to be computed via Fast Fourier Transforms (FFTs) and diagonal multiplication, generally leading to dramatic performance improvements compared to naive multiplication, it also adds unnecessary information that increases memory consumption and reduces computational efficiency. As an improvement, we propose a lazy embedding, eager projection, algorithm that for dimensionality $d$, asymptotically reduces the number of needed computations $\propto d/ \left(2 - 2^{-d+1}\right)$ and peak memory usage $\propto 2/\left((d+1)2^{-d} + 1\right)$, generally, and $\propto\left(2^{d} + 1\right)/\left(d +2\right)$ for a fully symmetric or skew-symmetric systems. The structure of the algorithm suggests several simple approaches for parallelization of large block Toeplitz matrix-vector products across multiple devices and adds flexibility in memory and task management.<|reference_end|>
@article{siron2024a,
    title={A Split Fast Fourier Transform Algorithm for Block Toeplitz
  Matrix-Vector Multiplication},
    author={Alexandre Siron and Sean Molesky},
    journal={arXiv preprint arXiv:2406.17981},
    year={2024},
    archivePrefix={arXiv},
    eprint={2406.17981},
    primaryClass={math.NA cs.NA}
}