Using Machine Learning Techniques to Detect Parallel Patterns of Multi-threaded Applications

被引:0
|
作者
Etem Deniz
Alper Sen
机构
[1] Bogazici University,Department of Computer Engineering
关键词
Parallel patterns; Parallel programming; Multi-threaded applications; Multicore software; Pattern detection;
D O I
暂无
中图分类号
学科分类号
摘要
Multicore hardware and software are becoming increasingly more complex. The programmability problem of multicore software has led to the use of parallel patterns. Parallel patterns reduce the effort and time required to develop multicore software by effectively capturing its thread communication and data sharing characteristics. Hence, detecting the parallel pattern used in a multi-threaded application is crucial for performance improvements and enables many architectural optimizations; however, this topic has not been widely studied. We apply machine learning techniques in a novel approach to automatically detect parallel patterns and compare these techniques in terms of accuracy and speed. We experimentally validate the detection ability of our techniques on benchmarks including PARSEC and Rodinia. Our experiments show that the k-nearest neighbor, decision trees, and naive Bayes classifier are the most accurate techniques. Overall, decision trees are the fastest technique with the lowest characterization overhead producing the best combination of detection results. We also show the usefulness of the proposed techniques on synthetic benchmark generation.
引用
收藏
页码:867 / 900
页数:33
相关论文
共 50 条
  • [11] MTIO - A multi-threaded parallel I/O system
    More, S
    Choudhary, A
    Foster, I
    Xu, MQ
    11TH INTERNATIONAL PARALLEL PROCESSING SYMPOSIUM, PROCEEDINGS, 1997, : 368 - 373
  • [12] A SIMT Analyzer for Multi-Threaded CPU Applications
    Alawneh, Ahmad
    Khairy, Mahmoud
    Rogers, Timothy G.
    2022 IEEE INTERNATIONAL SYMPOSIUM ON PERFORMANCE ANALYSIS OF SYSTEMS AND SOFTWARE (ISPASS 2022), 2022, : 248 - 250
  • [13] BarrierPoint: Sampled Simulation of Multi-Threaded Applications
    Carlson, Trevor E.
    Heirman, Wim
    Van Craeynest, Kenzo
    Eeckhout, Lieven
    2014 IEEE INTERNATIONAL SYMPOSIUM ON PERFORMANCE ANALYSIS OF SYSTEMS AND SOFTWARE (ISPASS), 2014, : 2 - 12
  • [14] Estimating Computational Requirements in Multi-Threaded Applications
    Perez, Juan F.
    Casale, Giuliano
    Pacheco-Sanchez, Sergio
    IEEE TRANSACTIONS ON SOFTWARE ENGINEERING, 2015, 41 (03) : 264 - 278
  • [15] Workshop on Multi-Threaded Architectures and Applications - MTAAP
    DeRose, Luiz
    2012 IEEE 26TH INTERNATIONAL PARALLEL AND DISTRIBUTED PROCESSING SYMPOSIUM WORKSHOPS & PHD FORUM (IPDPSW), 2012, : 1571 - 1571
  • [16] NVthreads: Practical Persistence for Multi-threaded Applications
    Hsu, Terry Ching-Hsiang
    Bruegner, Helge
    Roy, Indrajit
    Keeton, Kimberly
    Eugster, Patrick
    PROCEEDINGS OF THE TWELFTH EUROPEAN CONFERENCE ON COMPUTER SYSTEMS (EUROSYS 2017), 2017, : 468 - 482
  • [17] Classifying Performance Bottlenecks in Multi-Threaded Applications
    Dutta, Sourav
    Manakkadu, Sheheeda
    Kagaris, Dimitri
    2014 IEEE 8TH INTERNATIONAL SYMPOSIUM ON EMBEDDED MULTICORE/MANYCORE SOCS (MCSOC), 2014, : 341 - 345
  • [18] Workshop on multi-threaded architectures and applications - MTAAP
    IPDPS 2009 - Proceedings of the 2009 IEEE International Parallel and Distributed Processing Symposium, 2009,
  • [19] Interactive visualization environment of multi-threaded parallel programs
    Stein, B
    de Kergommeaux, JC
    PARALLEL COMPUTING: FUNDAMENTALS, APPLICATIONS AND NEW DIRECTIONS, 1998, 12 : 311 - 318
  • [20] Load balancing for network based multi-threaded applications
    Krone, O
    Raab, M
    Hirsbrunner, B
    RECENT ADVANCES IN PARALLEL VIRTUAL MACHINE AND MESSAGE PASSING INTERFACE, 1998, 1497 : 206 - 214