User-level Process towards Exascale Systems User-level Process towards Exascale Systems

この論文にアクセスする

この論文をさがす

著者

抄録

The process oversubscription, which binds multiple parallel processes to one CPU core, can hide the communication latency and reduce CPU idle time. However, the lightweight OS kernels for Exascale systems may no longer support OS task scheduling. Without OS task scheduling, only one parallel process per CPU core is allowed, and then the process oversubscription is impossible. Even if the OS task scheduling is supported, the overhead of the context switch between parallel processes decreases the application performance and prevents the process oversubscription from being utilized. By assigning a role of a parallel process to a user-level thread, high-performance process oversubscription can be achieved without OS task scheduling. However, the process oversubscription utilizing the user-level thread dramatically changes the programming model of the parallel application. In this paper, we propose user-level process. The user-level process is a "process", which can be scheduled in the user-space. The user-level process has the beneficial features of the user-level thread. Meanwhile, it has its own program code and data like a traditional process. By assigning a role of a parallel process to an user-level process, high-performance process oversubscription can be achieved without OS task scheduling. Moreover, the process oversubscription utilizing the user-level process does not change the programming model of the parallel application.The process oversubscription, which binds multiple parallel processes to one CPU core, can hide the communication latency and reduce CPU idle time. However, the lightweight OS kernels for Exascale systems may no longer support OS task scheduling. Without OS task scheduling, only one parallel process per CPU core is allowed, and then the process oversubscription is impossible. Even if the OS task scheduling is supported, the overhead of the context switch between parallel processes decreases the application performance and prevents the process oversubscription from being utilized. By assigning a role of a parallel process to a user-level thread, high-performance process oversubscription can be achieved without OS task scheduling. However, the process oversubscription utilizing the user-level thread dramatically changes the programming model of the parallel application. In this paper, we propose user-level process. The user-level process is a "process", which can be scheduled in the user-space. The user-level process has the beneficial features of the user-level thread. Meanwhile, it has its own program code and data like a traditional process. By assigning a role of a parallel process to an user-level process, high-performance process oversubscription can be achieved without OS task scheduling. Moreover, the process oversubscription utilizing the user-level process does not change the programming model of the parallel application.

The process oversubscription, which binds multiple parallel processes to one CPU core, can hide the communication latency and reduce CPU idle time. However, the lightweight OS kernels for Exascale systems may no longer support OS task scheduling. Without OS task scheduling, only one parallel process per CPU core is allowed, and then the process oversubscription is impossible. Even if the OS task scheduling is supported, the overhead of the context switch between parallel processes decreases the application performance and prevents the process oversubscription from being utilized. By assigning a role of a parallel process to a user-level thread, high-performance process oversubscription can be achieved without OS task scheduling. However, the process oversubscription utilizing the user-level thread dramatically changes the programming model of the parallel application. In this paper, we propose user-level process. The user-level process is a "process", which can be scheduled in the user-space. The user-level process has the beneficial features of the user-level thread. Meanwhile, it has its own program code and data like a traditional process. By assigning a role of a parallel process to an user-level process, high-performance process oversubscription can be achieved without OS task scheduling. Moreover, the process oversubscription utilizing the user-level process does not change the programming model of the parallel application.

収録刊行物

  • 研究報告計算機アーキテクチャ(ARC)

    研究報告計算機アーキテクチャ(ARC) 2014-ARC-213(22), 1-7, 2014-12-02

    一般社団法人情報処理学会

キーワード

各種コード

  • NII論文ID(NAID)
    110009850784
  • NII書誌ID(NCID)
    AN10096105
  • 本文言語コード
    ENG
  • 資料種別
    Technical Report
  • データ提供元
    NII-ELS  IPSJ 
ページトップへ