Time series analysis acceleration with advanced vectorization extensions - Quislant-del-Barrio, Ricardo; Fernández-Vega, Iván; Gutiérrez-Carrasco, Eladio Damián; Plata-González, Óscar Guillermo (Springer, 2023)
Time series analysis is an important research topic and a key step in monitoring and predicting events in many felds. Recently, the Matrix Profle method, and particularly two of its Euclidean-distance-based implementations—SCRIMP and SCAMP—have become the state-of-the-art approaches in this feld. Those algorithms bring the possibility of obtaining exact motifs and discords from a time series, which can be used to infer events, predict outcomes, detect anomalies and more. While matrix profle is embarrassingly parallelizable, we fnd that auto-vectorization techniques fail to fully exploit the SIMD capabilities of modern CPU architectures. In this paper, we develop custom-vectorized SCRIMP and SCAMP implementations based on AVX2 and AVX-512 extensions, which we combine with multithreading techniques aimed at exploiting the potential of the underneath architectures. Our experimental evaluation, conducted using real data, shows a performance improvement of more than 4× with respect to the auto-vectorization.
Keywords: Proceso de vectores (Informática); Time series analysis; Matrix profle; Parallelism; Vectorization