Towards An Event-Driven Programming Model for OpenMP

被引:1
|
作者
Fan, Xing [1 ]
Sinnen, Oliver [1 ]
Giacaman, Nasser [1 ]
机构
[1] Univ Auckland, Dept Elect & Comp Engn, Auckland 1, New Zealand
关键词
OpenMP; parallel programming model; event-driven programming; asynchronous programming;
D O I
10.1109/ICPPW.2016.44
中图分类号
TP3 [计算技术、计算机技术];
学科分类号
0812 ;
摘要
The event-driven programming pattern is pervasive in a wide range of modern software applications. Unfortunately, it is not easy to achieve good performance and responsiveness when developing event-driven applications. Traditional approaches require a great amount of programmer effort to restructure and refactor code, to achieve the performance speedup from parallelism and asynchronization. Not only does this restructuring require a lot of development time, it also makes the code harder to debug and understand. We propose an asynchronous programming model based on the philosophy of OpenMP, which does not require code restructuring of the original sequential code. This asynchronous programming model is complementary to the existing OpenMP fork-join model. The coexistence of the two models has potential to decrease developing time for parallel event-driven programs, since it avoids major code refactoring. In addition to its programming simplicity, evaluations show that this approach achieves good performance improvements consistent with more traditional event-driven parallelization.
引用
收藏
页码:240 / 249
页数:10
相关论文
共 50 条
  • [1] Supporting asynchronization in OpenMP for event-driven programming
    Fan, Xing
    Sinnen, Oliver
    Giacaman, Nasser
    PARALLEL COMPUTING, 2019, 82 (57-74) : 57 - 74
  • [2] Event-Driven Network Programming
    McClurg, Jedidiah
    Hojjat, Hossein
    Foster, Nate
    Cerny, Pavol
    ACM SIGPLAN NOTICES, 2016, 51 (06) : 369 - 385
  • [3] Event-Driven Programming with EScala
    Satabin, Lucas
    Mezini, Mira
    AOSD 2011 PROCEEDINGS AND COMPANION MATERIAL, 2011, : 67 - 67
  • [4] Balancing parallelization and asynchronization in event-driven programs with OpenMP
    Fan, Xing
    Sinnen, Oliver
    Giacaman, Nasser
    CONCURRENCY AND COMPUTATION-PRACTICE & EXPERIENCE, 2019, 31 (04):
  • [5] Event-driven probabilistic constraint programming
    Tarim, S. Armagan
    Hnich, Brahim
    Prestwich, Steven D.
    INTEGRATION OF AI AND OR TECHNIQUES IN CONSTRAINT PROGRAMMING FOR COMBINATORIAL OPTIMIZATION PROBLEMS, 2006, 3990 : 197 - 211
  • [6] Event-driven Programming in Programming Education: A Mapping Review
    Lukkarinen, Aleksi
    Malmi, Lauri
    Haaranen, Lassi
    ACM TRANSACTIONS ON COMPUTING EDUCATION, 2021, 21 (01)
  • [7] Software design guidelines for event-driven programming
    Philip, GC
    JOURNAL OF SYSTEMS AND SOFTWARE, 1998, 41 (02) : 79 - 91
  • [8] A Unified Runtime for PGAS and Event-Driven Programming
    Paul, Sri Raj
    Chen, Kun
    Hayashi, Akihiro
    Grossman, Max
    Sarkar, Vivek
    DeVinney, Jason
    Carlson, Bill
    PROCEEDINGS OF 2018 IEEE/ACM 4TH INTERNATIONAL WORKSHOP ON EXTREME SCALE PROGRAMMING MODELS AND MIDDLEWARE (ESPM2 2018), 2018, : 46 - 53
  • [9] Eve: A Parallel Event-Driven Programming Language
    Fonseca, Alcides
    Rafael, Joao
    Cabral, Bruno
    EURO-PAR 2014: PARALLEL PROCESSING WORKSHOPS, PT II, 2014, 8806 : 170 - 181
  • [10] Event-driven programming with logical execution times
    Ghosal, A
    Henzinger, TA
    Kirsch, CM
    Sanvido, MAA
    HYBRID SYSTEMS: COMPUTATION AND CONTROL, PROCEEDINGS, 2004, 2993 : 357 - 371