USER-LEVEL INTERPROCESS COMMUNICATION FOR SHARED MEMORY MULTIPROCESSORS

被引:25
|
作者
BERSHAD, BN [1 ]
ANDERSON, TE [1 ]
LAZOWSKA, ED [1 ]
LEVY, HM [1 ]
机构
[1] UNIV WASHINGTON,DEPT COMP SCI & ENGN,SEATTLE,WA 98195
来源
关键词
THREAD; MULTIPROCESSOR; OPERATING SYSTEM; PARALLEL PROGRAMMING; PERFORMANCE; COMMUNICATION;
D O I
10.1145/103720.114701
中图分类号
TP301 [理论、方法];
学科分类号
081202 ;
摘要
Interprocess communication (IPC), in particular IPC oriented towards local communication (between address spaces on the same machine), has become central to the design of contemporary operating systems. IPC has traditionally been the responsibility of the kernel, but kernel-based IPC has two inherent problems. First, its performance is architecturally limited by the cost of invoking the kernel and reallocating a processor from one address space to another. Second, applications that need inexpensive threads and must provide their own thread management encounter functional and performance problems stemming from the interaction between kernel-level communication and user-level thread management. On a shared memory multiprocessor, these problems can be solved by moving the communication facilities out of the kernel and supporting them at the user level within each address space. Communication performance is improved since kernel invocation and processor reallocation can be avoided when communicating between address spaces on the same machine. These observations motivated User-Level Remote Procedure Call (URPC). URPC combines a fast cross-address space communication protocol using shared memory with lightweight threads managed at the user level. This structure allows the kernel to be bypassed during cross-address space communication. The programmer sees threads and RPC through a conventional interface, though with unconventional performance.
引用
收藏
页码:175 / 198
页数:24
相关论文
共 50 条
  • [41] Memory Affinity for Hierarchical Shared Memory Multiprocessors
    Ribeiro, Christiane Pousa
    Mehaut, Jean-Francois
    Carissimi, Alexandre
    Castro, Marcio
    Fernandes, Luiz Gustavo
    PROCEEDINGS OF THE 21ST INTERNATIONAL SYMPOSIUM ON COMPUTER ARCHITECTURE AND HIGH PERFORMANCE COMPUTING, 2009, : 59 - +
  • [42] Flexible user-level scheduling
    Craig, D
    Polychronopoulos, C
    PARALLEL AND DISTRIBUTED COMPUTING SYSTEMS, 2000, : 93 - 98
  • [43] Memory management system structure supporting user-level program participation
    Zhang, Li
    Yao, Yaguang
    Wang, Shiyou
    Jisuanji Gongcheng/Computer Engineering, 2000, 26 (04): : 44 - 46
  • [44] The CLAM approach to multithreaded communication on shared-memory multiprocessors: Design and experiments
    Gomez, JC
    Mascarenhas, E
    Rego, V
    IEEE TRANSACTIONS ON PARALLEL AND DISTRIBUTED SYSTEMS, 1998, 9 (01) : 36 - 49
  • [45] SMALL SHARED-MEMORY MULTIPROCESSORS
    BASKETT, F
    HENNESSY, JL
    SCIENCE, 1986, 231 (4741) : 963 - 967
  • [46] AND OR PARALLELISM ON SHARED-MEMORY MULTIPROCESSORS
    GUPTA, G
    JAYARAMAN, B
    JOURNAL OF LOGIC PROGRAMMING, 1993, 17 (01): : 59 - 89
  • [47] Boosting the performance of shared memory multiprocessors
    Chalmers Univ of Technology
    Computer, 7 (63-70):
  • [48] UnifyFS: A User-level Shared File System for Unified Access to Distributed Local Storage
    Brim, Michael J.
    Moodyt, Adam T.
    Lim, Seung-Hwan
    Miller, Ross
    Boehm, Swen
    Stanaviget, Cameron
    Mohrort, Kathryn M.
    Oral, Sarp
    2023 IEEE INTERNATIONAL PARALLEL AND DISTRIBUTED PROCESSING SYMPOSIUM, IPDPS, 2023, : 290 - 300
  • [49] EFFICIENT SYNCHRONIZATION ON MULTIPROCESSORS WITH SHARED MEMORY
    KRUSKAL, CP
    RUDOLPH, L
    SNIR, M
    ACM TRANSACTIONS ON PROGRAMMING LANGUAGES AND SYSTEMS, 1988, 10 (04): : 579 - 601
  • [50] Boosting the performance of shared memory multiprocessors
    Stenstrom, P
    Brorsson, M
    Dahlgren, F
    Grahn, H
    Dubois, M
    COMPUTER, 1997, 30 (07) : 63 - +