Using Toeplitz Matrices to obtain 2D convolution For the benchmarks please see Jupyter Notebooks. There are three notebooks Benchmarks for Numpy and Scipy (CPU) Benchmarks for Cupy (GPU) Benchmarks for PyTorch (GPU)