Superscalar communication: A runtime optimization for distributed applications

被引:2
|
作者
Li HuiBa [1 ]
Liu ShengYun [1 ]
Peng YuXing [1 ]
Li DongSheng [1 ]
Zhou HangJun [1 ]
Lu XiCheng [1 ]
机构
[1] Natl Univ Def Technol, Natl Lab Parallel & Distributed Proc, Changsha 410073, Hunan, Peoples R China
基金
中国国家自然科学基金;
关键词
network; programming; concurrency; event; thread; superscalar;
D O I
10.1007/s11432-010-4051-4
中图分类号
TP [自动化技术、计算机技术];
学科分类号
0812 ;
摘要
Building distributed applications is difficult mostly because of concurrency management. Existing approaches primarily include events and threads. Researchers and developers have been debating for decades to prove which is superior. Although the conclusion is far from obvious, this long debate clearly shows that neither of them is perfect. One of the problems is that they are both complex and error-prone. Both events and threads need the programmers to explicitly manage concurrencies, and we believe it is just the source of difficulties. In this paper, we propose a novel approach-superscalar communication, in which concurrencies are automatically managed by the runtime system. It dynamically analyzes the programs to discover potential concurrency opportunities; and it dynamically schedules the communication and the computation tasks, resulting in automatic concurrent execution. This approach is inspired by the idea of superscalar technology in modern microprocessors, which dynamically exploits instruction-level parallelism. However, hardware superscalar algorithms do not fit software in many aspects, thus we have to design a new scheme completely from scratch. Superscalar communication is a runtime extension with no modification to the language, compiler or byte code, so it is good at backward compatibility. Superscalar communication is likely to begin a brand new research area in systems software, which is characterized by dynamic optimization for networking programs.
引用
收藏
页码:1931 / 1946
页数:16
相关论文
共 50 条
  • [2] Superscalar communication: A runtime optimization for distributed applications
    HuiBa Li
    ShengYun Liu
    YuXing Peng
    DongSheng Li
    HangJun Zhou
    XiCheng Lu
    Science China Information Sciences, 2010, 53 : 1931 - 1946
  • [3] A Lightweight Communication Runtime for Distributed Graph Analytics
    Hoang-Vu Dang
    Brooks, Alex
    Dryden, Nikoli
    Snir, Marc
    Dathathri, Roshan
    Gill, Gurbinder
    Lenharth, Andrew
    Loc Hoang
    Pingali, Keshav
    2018 32ND IEEE INTERNATIONAL PARALLEL AND DISTRIBUTED PROCESSING SYMPOSIUM (IPDPS), 2018, : 980 - 989
  • [4] Autonomic runtime manager for adaptive distributed applications
    Yang, JM
    Chen, HP
    Hariri, S
    Parashar, M
    14TH IEEE INTERNATIONAL SYMPOSIUM ON HIGH PERFORMANCE DISTRIBUTED COMPUTING, PROCEEDINGS, 2005, : 69 - 78
  • [5] Runtime Detection and Optimization of Collective Communication Patterns
    Hoefler, Torsten
    Schneider, Timo
    PROCEEDINGS OF THE 21ST INTERNATIONAL CONFERENCE ON PARALLEL ARCHITECTURES AND COMPILATION TECHNIQUES (PACT'12), 2012, : 263 - 272
  • [6] Runtime locality optimizations of distributed Java']Java applications
    Huetter, Christian
    Moschny, Thomas
    PROCEEDINGS OF THE 16TH EUROMICRO CONFERENCE ON PARALLEL, DISTRIBUTED AND NETWORK-BASED PROCESSING, 2008, : 149 - 156
  • [7] Dynamic Choreographies Safe Runtime Updates of Distributed Applications
    Preda, Mila Dalla
    Gabbrielli, Maurizio
    Giallorenzo, Saverio
    Lanese, Ivan
    Mauro, Jacopo
    COORDINATION MODELS AND LANGUAGES, COORDINATION 2015, 2015, 9037 : 67 - 82
  • [8] SPIRIT: A Runtime System for Distributed Irregular Tree Applications
    Hegde, Nikhil
    Liu, Jianqiao
    Kulkarni, Milind
    ACM SIGPLAN NOTICES, 2016, 51 (08) : 405 - 406
  • [9] A parallel runtime framework for communication intensive stream applications
    Muralidharan, Servesh
    Casey, Kevin
    Gregg, David
    2013 12TH IEEE INTERNATIONAL CONFERENCE ON TRUST, SECURITY AND PRIVACY IN COMPUTING AND COMMUNICATIONS (TRUSTCOM 2013), 2013, : 1179 - 1187
  • [10] Graphical Debugging of Distributed Applications Using UML Object Diagrams to Visualize the State of Distributed Applications at Runtime
    Koch, Andreas
    Zuendorf, Albert
    MODELSWARD 2015 PROCEEDINGS OF THE 3RD INTERNATIONAL CONFERENCE ON MODEL-DRIVEN ENGINEERING AND SOFTWARE DEVELOPMENT, 2015, : 223 - 230