Abstract
Dynamic Time Warping (DTW) is a widely used distance measure in the field of time series data mining. However, calculation of DTW scores is compute-intensive since the complexity is quadratic in terms of time series lengths. This renders important data mining tasks computationally expensive even for moderate query lengths and database sizes. Previous solutions to accelerate DTW on GPUs are not able to fully exploit their compute performance due to inefficient memory access schemes. In this paper, we introduce a novel parallelization strategy to drastically speed-up DTW on CUDA-enabled GPUs based on using low latency warp intrinsics for fast inter-thread communication. We show that our CUDA parallelization (cuDTW++) is able to achieve over 90% of the theoretical peak performance of modern Volta-based GPUs, thereby clearly outperforming the previously fastest CUDA implementation (cudaDTW) by over one order-of-magnitude. Furthermore, cuDTW++ achieves two-to-three orders-of-magnitude speedup over the state-of-the-art CPU program UCR-Suite for subsequence search of ECG signals.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
References
Chen, P., Wahib, M., Takizawa, S., Takano, R., Matsuoka, S.: A versatile software systolic execution model for GPU memory-bound kernels. In: Proceedings of the International Conference for High Performance Computing, Networking, Storage and Analysis, pp. 1–81 (2019)
Harris, M., Perelygin, K.: Cooperative groups: flexible CUDA thread programming (2017). https://devblogs.nvidia.com/cooperative-groups/
Hou, K., Wang, H., Feng, W.C., Vetter, J.S., Lee, S.: Highly efficient compensation-based parallelism for wavefront loops on GPUs. In: 2018 IEEE International Parallel and Distributed Processing Symposium (IPDPS), pp. 276–285. IEEE (2018)
Hundt, C., Schmidt, B., Schömer, E.: CUDA-accelerated alignment of subsequences in streamed time series data. In: 2014 43rd International Conference on Parallel Processing, pp. 10–19. IEEE (2014)
Kadous, M.W.: Learning comprehensible descriptions of multivariate time series. In: Bratko, I., Dzeroski, S. (eds.) Proceedings of the 16th International Conference of Machine Learning (ICML-1999), pp. 454–463. Morgan Kaufmann, San Francisco (1999)
Keogh, E., Lin, J., Fu, A.: Hot sax: efficiently finding the most unusual time series subsequence. In: Fifth IEEE International Conference on Data Mining (ICDM 2005), p. 8. IEEE (2005)
Keogh, E., Ratanamahatana, C.A.: Exact indexing of dynamic time warping. Knowl. Inf. Syst. 7(3), 358–386 (2004). https://doi.org/10.1007/s10115-004-0154-9
Kraeva, Y., Zymbler, M.: Scalable algorithm for subsequence similarity search in very large time series data on cluster of Phi KNL. In: Manolopoulos, Y., Stupnikov, S. (eds.) DAMDID/RCDL 2018. CCIS, vol. 1003, pp. 149–164. Springer, Cham (2019). https://doi.org/10.1007/978-3-030-23584-0_9
Leißa, R., et al.: AnyDSL: a partial evaluation framework for programming high-performance libraries. Proc. ACM Program. Lang. 2(OOPSLA), 1–30 (2018)
Liu, Y., Wirawan, A., Schmidt, B.: CUDASW++ 3.0: accelerating Smith-Waterman protein database search by coupling CPU and GPU SIMD instructions. BMC Bioinformatics 14(1), 117 (2013). https://doi.org/10.1186/1471-2105-14-117
Maršík, L., Rusek, M., Slaninová, K., Martinovič, J., Pokorný, J.: Evaluation of chord and chroma features and dynamic time warping scores on cover song identification task. In: Saeed, K., Homenda, W., Chaki, R. (eds.) CISIM 2017. LNCS, vol. 10244, pp. 205–217. Springer, Cham (2017). https://doi.org/10.1007/978-3-319-59105-6_18
Müller, A., et al.: AnySeq: a high performance sequence alignment library based on partial evaluation. arXiv preprint arXiv:2002.04561 (2020)
Pantaleoni, J., Subtil, N.: NVBIO (2015). https://nvlabs.github.io/nvbio
Patterson, J.: Rapids - the platform inside and out (2019). https://docs.rapids.ai/overview/latest.pdf
Pietroszek, K., Pham, P., Eckhardt, C.: CS-DTW: real-time matching of multivariate spatial input against thousands of templates using compute shader DTW. In: Proceedings of the 5th Symposium on Spatial User Interaction, pp. 159–159 (2017)
Pouw, W., Dixon, J.A.: Gesture networks: introducing dynamic time warping and network analysis for the kinematic study of gesture ensembles. Discourse Process. 57(4), 301–319 (2019)
Rakthanmanon, T., et al.: Searching and mining trillions of time series subsequences under dynamic time warping. In: Proceedings of the 18th ACM SIGKDD International Conference on Knowledge Discovery and Data Mining, pp. 262–270 (2012)
Sakurai, Y., Faloutsos, C., Yamamuro, M.: Stream monitoring under the time warping distance. In: 2007 IEEE 23rd International Conference on Data Engineering, pp. 1046–1055. IEEE (2007)
Sandes, E.F.O., de Melo, A.C.M.: CUDAlign: using GPU to accelerate the comparison of megabase genomic sequences. In: Proceedings of the 15th ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming, pp. 137–146 (2010)
Sart, D., Mueen, A., Najjar, W., Keogh, E., Niennattrakul, V.: Accelerating dynamic time warping subsequence search with GPUs and FPGAs. In: 2010 IEEE International Conference on Data Mining, pp. 1001–1006. IEEE (2010)
Schmidt, B., Gonzalez-Dominguez, J., Hundt, C., Schlarb, M.: Parallel Programming: Concepts and Practice. Morgan Kaufmann, Cambridge (2017)
Spooner, M., Kulahci, M.: Monitoring batch processes with dynamic time warping and k-nearest neighbours. Chemometr. Intell. Lab. Syst. 183, 102–112 (2018)
Wang, Z., et al.: DTWscore: differential expression and cell clustering analysis for time-series single-cell RNA-seq data. BMC Bioinformatics 18(1), 270 (2017). https://doi.org/10.1186/s12859-017-1647-3
Williams, A.H., et al.: Discovering precise temporal patterns in large-scale neural recordings through robust and interpretable time warping. Neuron 105(2), 246–259 (2020)
Xiao, L., Zheng, Y., Tang, W., Yao, G., Ruan, L.: Parallelizing dynamic time warping algorithm using prefix computations on GPU. In: 2013 IEEE 10th International Conference on High Performance Computing and Communications & 2013 IEEE International Conference on Embedded and Ubiquitous Computing, pp. 294–299. IEEE (2013)
Xu, X., et al.: Accelerating dynamic time warping with memristor-based customized fabrics. IEEE Trans. Comput. Aided Des. Integr. Circuits Syst. 37(4), 729–741 (2017)
Zheng, Z., Wei, X., Hildebrandt, A., Schmidt, B.: A computational method for studying the relation between alternative splicing and DNA methylation. Nucleic Acids Res. 44(2), e19–e19 (2016)
Ziehn, A., Charfuelan, M., Hemsen, H., Markl, V.: Time series similarity search for streaming data in distributed systems. In: EDBT/ICDT Workshops (2019)
Acknowledgments
We acknowledge support by the BMBF project MetaDL.
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2020 Springer Nature Switzerland AG
About this paper
Cite this paper
Schmidt, B., Hundt, C. (2020). cuDTW++: Ultra-Fast Dynamic Time Warping on CUDA-Enabled GPUs. In: Malawski, M., Rzadca, K. (eds) Euro-Par 2020: Parallel Processing. Euro-Par 2020. Lecture Notes in Computer Science(), vol 12247. Springer, Cham. https://doi.org/10.1007/978-3-030-57675-2_37
Download citation
DOI: https://doi.org/10.1007/978-3-030-57675-2_37
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-030-57674-5
Online ISBN: 978-3-030-57675-2
eBook Packages: Computer ScienceComputer Science (R0)