CREST Development of System Software Technologies for post-Peta - - PowerPoint PPT Presentation

crest
SMART_READER_LITE
LIVE PREVIEW

CREST Development of System Software Technologies for post-Peta - - PowerPoint PPT Presentation

1 CREST Development of System Software Technologies for post-Peta Scale High Performance Computing Project Overview Atsushi Hori RIKEN AICS 2 Research Groups RIKEN AICS A. Hori (PI) Hitachi A. Sutoh Tokyo Univ. of


slide-1
SLIDE 1

CREST

Development of System Software Technologies for post-Peta Scale High Performance Computing Project Overview

Atsushi Hori RIKEN AICS

1

slide-2
SLIDE 2

Research Groups

  • RIKEN AICS
  • A. Hori (PI)
  • Hitachi
  • A. Sutoh
  • Tokyo Univ. of Agriculture and

Technology

  • Prof. M. Namiki
  • Univ. of Tennessee, ICL
  • J. Dongarra

2

slide-3
SLIDE 3

Project Overview

  • “Development of System Software Technologies

for post-Peta Scale High Performance Computing” ➡ R&D of System Software for Many-core and Multi-core architecture

  • Broad Research Area
  • Operating System
  • Communication and I/O
  • Light-weight Multi-thread
  • Fault Resilience
  • FY2011 - FY2015 (until May 2016)

3

slide-4
SLIDE 4

Research Outcomes

  • Broad Research Area
  • Operating System
  • McKernel, PVAS, ...
  • Communication and I/O
  • M-PVAS, EARTH, ...
  • Light-weight Multi-thread
  • Agent on (M-)PVAS, ...
  • Fault Resilience
  • ULFM on the K, Sliding Substitution, ...

4

slide-5
SLIDE 5

Today’s Topics

  • Broad Research Area
  • Operating System
  • McKernel, PVAS, ...
  • Communication and I/O
  • M-PVAS, EARTH, ...
  • Light-weight Multi-thread
  • Agent on (M-)PVAS, ...
  • Fault Resilience
  • ULFM on the K, Sliding Substitution, ...

5

slide-6
SLIDE 6

PVAS and M-PVAS

  • New Task Model (patched Linux Kernel)
  • for Many-core:

PVAS

  • for Hybrid architecture: M-PVAS

6 Linux Address Map Multi-Thread

TEXT DATA & BSS HEAP STACK0 STACK1 KERNEL

Process

TEXT DATA & BSS HEAP STACK KERNEL

LOW HIGH Address

PVAS Address Map

PVAS Task 0!

  • n Many-Core

PVAS Task 0!

  • n Many-Core

PVAS Task 1!

  • n Many-Core

PVAS Task 0!

  • n Multi-Core

PVAS Task 1!

  • n Multi-Core

LOW HIGH Address

Multiple PVAS! Address Map

Many-Core Mutli-Core TEXT HEAP STACK DATA & BSS Export PVAS! T ask 1 KERNEL PVAS! Task 0

Many-Core! KERNEL Multi-Core! KERNEL

slide-7
SLIDE 7

Partitioned Virtual Address Space

7

Memory is Invaluable

  • Example
  • OpenMPI Intra-Node Comm.
  • Shared Memory (SM)
  • KNEM (NEMESIS)
  • Vader (Xpmem)
  • Vader is the fastest, but

consumes a lot of memory

  • Memory vs. Speed
  • High Performance and
  • Low memory consumption
  • Page table size must be

taken into account 300MB = 5% of 6GB

5 B B B B B B B B B B B B B B B B B J J J J J J J J J J J J J J J J J H H H H H H H H H H H H H H H H H 1 10 100 1,000 10,000 100,000 300,000 0.1 1 10 100 1000 10000100000 IMB PingPong Latency [usec] IMB PingPong Message Size [KByte] B SM BTL J SM-KNEM BTL H Vader BTL B B B B J J J J H H H H 0E+0 1E+3 2E+3 3E+3 Memory Usage [MByte] Eager Protocol Rendezvous Protocol B B B B J J J J H H H H 100 200 300 400 500 600 60 120 180 240 Total Page Table Size [MByte] IMB AlltoAll (2KiB) Number of Processes Rendezvous Protocol

300MB

Better 6 Better 7

Better

8 CREST領域会議 2013/10/11

PVAS [島田@PGAS’12、島田@MES’13 他]

PVAS (Partitioned Virtual Address Space) ⇒プロセスとスレッドの「いいとこ 取り」 ⇒Linux カーネルにパッチ メニーコアCPUにおけるコア間通信 の高速化 ⇒ノード内「通信」はメモリアクセ スと等価 ⇒OMPにおいてデフォルトをprivate とするのとほぼ同じ ⇒PGAS系言語で特に有効

RIKEN AICS CREST中間評価

PVAS - VM ops [島田@MES’13]

In this benchmark, multiple tasks executes mmap, memset, and munmap

  • perations 1000 times in parallel

mmap and munmap operations update the memory region tree mmap allocates 1MB of memory Page fault handling operations incurred by memset update the page table tree

RIKEN AICS CREST中間評価

PVAS を用いたノード内通信の評価

11

1E+0 10E+0 100E+0 1E+3 10E+3 10E+0 100E+0 1E+3 10E+3 100E+3 1E+6 10E+6 Bandwidth [MB/s] 0.1 1 10 100 1000 10E+0 100E+0 1E+3 10E+3 100E+3 1E+6 10E+6 Latency [us] NEMESIS-Redezvous NEMESIS-Eager PVAS 100E-3 1E+0 10E+0 100E+0 1E+3 10E+3 100E+3 1E+0 10E+0 100E+0 1E+3 10E+3 100E+3 1E+6 10E+6 100E+6 Bandwidth [MB/s] 0.0001 0.001 0.01 0.1 1 10 100 1E+0 10E+0 100E+0 1E+3 10E+3 100E+3 1E+6 10E+6 100E+6 Latency [us] GASNSET-Shmem GASNET-AM PVAS

MPIC One Sided [島田@PGAS’12]

RIKEN AICS CREST中間評価

NPB (XcalableMP) での評価

CG (NP=8) IS (NP=8)

[島田@PGAS’12]

CREST領域会議 2013/10/11

PVAS [島田@PGAS’12、島田@MES’13 他]

PVAS (Partitioned Virtual Address Space) ⇒プロセスとスレッドの「いいとこ 取り」 ⇒Linux カーネルにパッチ メニーコアCPUにおけるコア間通信 の高速化 ⇒ノード内「通信」はメモリアクセ スと等価 ⇒OMPにおいてデフォルトをprivate とするのとほぼ同じ ⇒PGAS系言語で特に有効

RIKEN AICS CREST中間評価

PVAS - VM ops [島田@MES’13]

  • In this benchmark, multiple tasks executes mmap, memset, and munmap
  • perations 1000 times in parallel
  • mmap and munmap operations update the memory region tree
  • mmap allocates 1MB of memory
  • Page fault handling operations incurred by memset update the page table tree

10

RIKEN AICS CREST中間評価

PVAS を用いたノード内通信の評価

[島田@PGAS’12]

RIKEN AICS CREST中間評価

NPB (XcalableMP) での評価

CG (NP=8) IS (NP=8)

[島田@PGAS’12]

情報処理学会研究報告

図 の性能

5 10 15 20 25 32 64 128 32 64 128 32 64 128 32 64 128 XMP-MPI XMP-MPI-NOALLOC XMP-PVAS MPI

Time (s)! gmove reduction

図 12 NPB-CG の反復回数 32 回による通信時間 図 の通信を省いた計算時間

では,通信のための と 通信が発生した. を使用することで, を省き, 通信 を 回に置き換えた.その結果, 次元ステンシ ル計算の 次元分割では,袖通信の通信時間を に減少 させることができた. の 次元分割では,重複して持 たせたベクトルの転置の通信時間を 程度に減少させる ことができた. 姫野ベンチマークでは, , , の性能 が同程度であり,プロセス数によっては, を 使用するこで, よりも性能を引き出すことができた. では, と が よりも高い性 能を得ており, や を使用することが望まれる. は 通信と 通信によって,性能が低 下した. を使用することで, 通信の時間を抑 えることができ, との性能差を縮めることができた. を用いることで, の通信時間を抑えるこ とができれば,さらに との性能差を縮めることがで きる. 現在の設計, 実装では, 内並列化に対応しているが, 間,ノード間通信に対応していない.そこで,今後 は,大規模計算に対応できるように,複数 ,複数ノー ドを対象とした設計,実装を行い,性能測定を行う.また, 他の通信として, 通信の設計を行う予定である. 参考文献

仕様書, 島田明男, 堀敦史, 石川裕:新しいタスクモデルに よる ノード内通信の高性能化,情報処理学会研究報 告, 姫野ベンチマーク:姫野ベンチマーク,

ⓒ Vol.2015-HPC-148 No.22 2015/3/3

XMP (gmove) のPVAS実装,大川他(筑波大) IPSJ-SIGHPC, 3月,2015

slide-8
SLIDE 8

Multiple PVAS

  • Multiple-PVAS
  • To couple different

CPUs tightly and effectively

8

図 の実行結果

リゲーションにより性能が悪化し, ( )または ( )以上ではデリゲーショ ン方式による性能改善が可能であることが明らかになった. ノード間通信 通信 において を用いた 通信の結果を図 から に示す.図中には,メニーコア単独方式である「 」とデリゲーショ ン方式である「 」 ,およびデリゲーション方式による ノード間通 信においてホストの で要した時間を「 」に示 す.また参考としてメニーコアではなくマルチコアで ノード間通信を実施した際の所要時間 を「 」に示している.メニーコア単独方式では を,デリゲーショ ン方式では を ライブラリとして使用している. 「 」におけ る 通信と 通信のスレッショルドはデリゲーション方式と同一とした. 図 は 通信におけるノード間通信の遅延時間を測定する の結果である. ノード間通信の評価結果と異なり,すべての転送サイズでデリゲーション方式の所要時間がメ ニーコア単独方式よりも短くなる結果となった.メニーコア単独方式を基準としたデリゲーショ ン方式の所要時間の削減率は,最小転送サイズである 時に約 となり, プロトコ ルから プロトコルに変更される転送サイズ では約 ,最大転送サイズの 時には約 となった.デリゲーション方式におけるメニーコアからホストへの処理依頼 には転送サイズ 時に約 を要したが,ホストでの処理により削減された所要時間が本 遅延時間を上回ったため,メニーコア単独方式よりも所要時間が削減される結果となった.なお ノード間通信での評価結果と同様に,デリゲーション方式の所要時間は同じくホストの プ ロセスを用いるホスト単体の所要時間よりも大きくなった.最大転送サイズの 時では, ホスト単体基準で約 増大している.

Role Sharing Example

  • Xeon Phi OSU MPI Benchmark
  • Xeon

MPI (MVAPICH2)

9 Small message latency is halved !

  • G. Fukazawa, “Multiple PVAS: a systems software for HPC application programs on multi-core and many-core,”

Master Thesis, 2014.

図 の実行結果 リゲーションにより性能が悪化し, ( )または ( )以上ではデリゲーショ ン方式による性能改善が可能であることが明らかになった. ノード間通信 通信 において を用いた 通信の結果を図 から に示す.図中には,メニーコア単独方式である「 」とデリゲーショ ン方式である「 」 ,およびデリゲーション方式による ノード間通 信においてホストの で要した時間を「 」に示 す.また参考としてメニーコアではなくマルチコアで ノード間通信を実施した際の所要時間 を「 」に示している.メニーコア単独方式では を,デリゲーショ ン方式では を ライブラリとして使用している. 「 」におけ る 通信と 通信のスレッショルドはデリゲーション方式と同一とした. 図 は 通信におけるノード間通信の遅延時間を測定する の結果である. ノード間通信の評価結果と異なり,すべての転送サイズでデリゲーション方式の所要時間がメ ニーコア単独方式よりも短くなる結果となった.メニーコア単独方式を基準としたデリゲーショ ン方式の所要時間の削減率は,最小転送サイズである 時に約 となり, プロトコ ルから プロトコルに変更される転送サイズ では約 ,最大転送サイズの 時には約 となった.デリゲーション方式におけるメニーコアからホストへの処理依頼 には転送サイズ 時に約 を要したが,ホストでの処理により削減された所要時間が本 遅延時間を上回ったため,メニーコア単独方式よりも所要時間が削減される結果となった.なお ノード間通信での評価結果と同様に,デリゲーション方式の所要時間は同じくホストの プ ロセスを用いるホスト単体の所要時間よりも大きくなった.最大転送サイズの 時では, ホスト単体基準で約 増大している.Prototype

M-PVAS

10 11

測定環境: , 図 間でのデータ転送帯域 のメモリから のメモリへ による アクセスを実施したことを示す.また 「 」であれば, が主体となり のメモリから のメモ リへ による アクセスを実施したことを示す.図 では大きな転送単位では圧倒的 に が高帯域だが,想定する転送サイズに近い バイトでは, が と互角か若 干高帯域である.よってデータ転送遅延,帯域幅,コヒーレンシ維持の 観点において が 有利であることがわかる. 以上より におけるリモートメモリアクセス方式には を用いることと する.なお, 間で大量のデータ転送を高帯域に実施するための基盤として, モデルに基づいた を検討する必要があると考えている.少量データの転送は ,大量データの転送は と異なる基盤を構築することで,ハードウェ アを余すことなく活用した高性能なアプリケーション実行基盤を実現できる. なお,現状の が対応している 規格バージョン による では, ロックの実装などに広く使われる 命令( など)がサポートされていな い. 規格バージョン では 経由での 命令がサポートされるため,次 期 が登場するまでの間, 空間上で 間での排他制御を実施する場合 には ではなく などの代替手段を利用する必要がある.

12

B B B B B B B B B B B B B B B B J J J J J J J J J J J J J J J J H H H H H H H H H H H H H H H H

10 800 850 900 950 20 40 60 80 100 120 140 RoundTrip Latency [usec] Data Size [Byte] B M-PVAS (Xeon→Xeon Phi→Xeon) J M-PVAS (Xeon Phi→Xeon→Xeon Phi) H Intel Offloading

x86_64 Xeon Phi HCA x86_64 Xeon Phi HCA x86_64 Xeon Phi HCA High Speed Network

MVAPICH2 2.0b MPSS 3.1.2

slide-9
SLIDE 9

Software Distribution

  • PVAS package including M-PVAS is available

9

Japan USA Switzerland Germany France India Canada Italy Unknown Japan USA Switzerland Germany France India Canada Italy Unknown

http://www-sys-aics.riken.jp/releasedsoftware/pvas.html

more than 100 downloads since Nov. 2014

slide-10
SLIDE 10

In This Session

  • OpenSHMEM: Introduction, Version 1.3, and Beyond
  • Dr. Manjunath Gorentla Venkata (ORNL)
  • Optimizing MPI Intra-node Communication with

New Task Model for Many-core Systems

  • Akio Shimada (Hitachi)
  • MapReduce Frameworks on Multiple PVAS for

Heterogeneous Computing Systems

  • Mikiko Sato (TAT)
  • Spare Node Substitution for Failure Nodes
  • Kazumi Yoshinaga (RIKEN AICS)
  • Throttling Approach Towards High Performance

Collective MPI-IO

  • Yuichi Tsujita (RIKEN AICS)

10

slide-11
SLIDE 11

Sliding Substitution

  • Up to now, research on using spare nodes is

not well-done

  • To answer the questions of
  • Is there any penalty? If any, how much?
  • How spare nodes should be allocated?
  • How many spare nodes should be allocated?
  • How failed nodes should be substituted be

spare nodes?

  • etc.

11