Microsoft Word ●MPI性能検証_志田_ _更新__ doc

Similar documents
Microsoft PowerPoint - CCS学際共同boku-08b.ppt

Microsoft Word ●書式付IO性能_杉崎_ _更新__ doc

VXPRO R1400® ご提案資料

Microsoft Word ●IntelクアッドコアCPUでのベンチマーク_吉岡_ _更新__ doc

― ANSYS Mechanical ―Distributed ANSYS(領域分割法)ベンチマーク測定結果要約

Fujitsu Standard Tool

Microsoft Word - nvsi_050110jp_netvault_vtl_on_dothill_sannetII.doc

Microsoft Word - nvsi_100222jp_oracle_exadata.doc

hpc141_shirahata.pdf

富士通PRIMERGYサーバ/ETERNUSストレージとXsigo VP560/VP780の接続検証

(速報) Xeon E 系モデル 新プロセッサ性能について

MPI MPI MPI.NET C# MPI Version2

Windows Server 2016 Hyper-V ストレージQoS機能の強化

ソフト活用事例③自動Rawデータ管理システム

Microsoft Word - gori_web原稿:TrusSPSにおけるNAS OSのパフォーマンス評価.docx

Microsoft PowerPoint - DNS_BoF_SCS_ pptx

目次 1. はじめに 用語説明 対象アダプタ P HBA/2P HBAで異なる性能 付録 ( 性能測定環境 ) P HBAでの性能測定環境 P HBAでの性能測定環境 本書の

ERDAS IMAGINE における処理速度の向上 株式会社ベストシステムズ PASCO CORPORATION 2015

先進的計算基盤システムシンポジウム DMA Tofu 6 MPI RDMA 6 3 (1 ) RDMA (2 ) 3 MPI MPI 3 MPI 127us, 47GB/s 9,216 MPI Bcast 106GB/s 31 MPI 2 MPI 2 Tofu Eager : 6 7 2

富士通PCサーバ「PRIMERGY RX2530 M4」における「TeraStation TS5010 / TS3010」シリーズ動作検証報告

PowerPoint プレゼンテーション

Microsoft Word - HOKUSAI_system_overview_ja.docx

東芝 MAGNIA R3320b での SSD 性能の検証 2012 年 8 月 株式会社東芝 クラウド & ソリューション事業統括部 目次 1. はじめに ソリッドステートドライブの概要 使用機器一覧 単体性能について サーバー用途別のテスト

Gfarm/MPI-IOの 概要と使い方

05-opt-system.ppt

PowerPoint プレゼンテーション

[4] ACP (Advanced Communication Primitives) [1] ACP ACP [2] ACP Tofu UDP [3] HPC InfiniBand InfiniBand ACP 2 ACP, 3 InfiniBand ACP 4 5 ACP 2. ACP ACP

Microsoft Word - nvsi_080177jp_trendmicro_bakbone.doc

PRIMERGY TX1310 M1 未サポートOS動作検証確認情報

PowerPoint プレゼンテーション

Microsoft PowerPoint - stream.ppt [互換モード]

HPC (pay-as-you-go) HPC Web 2

Microsoft PowerPoint PCクラスタワークショップin京都.ppt

目次 1. はじめに 用語説明 対象アダプタ P HBA/2P HBA/4P HBA で異なる性能 付録 P HBA での性能測定環境 P HBA での性能測定環境 P

PRIMERGY TX100 S3 未サポートOS動作検証確認情報

TFTP serverの実装

istorage istorage 1. / Fibre Channel TB (*) HDD HDD (DE) 3U DE 15 HDD istorage UPS (*) RAID istorage HDD

Fibre Channel

PRIMERGY TX100 S3 未サポートOS動作検証確認情報

Microsoft PowerPoint - yamagata.ppt

システムソリューションのご紹介

Arcserve Backup r16 新機能 テープブロックサイズの拡張 効果実測 Arcserve Japan 1.5 版

CCS HPCサマーセミナー 並列数値計算アルゴリズム

JustSystems

Microsoft Word - Dolphin Expressによる10Gbpソケット通信.docx

平成20年度成果報告書

untitled

(Microsoft PowerPoint - Mirapoint\220\273\225i\221\316\224\344\225\\\(6\203V\203\212\201[\203Y_7\203V\203\212\201[\203Y\).ppt)

1重谷.PDF

スライド 1

untitled

PRIMERGY CX250 S2 未サポートOS動作検証確認情報

Microsoft PowerPoint - JANOG19-u10-GigaPcap(NonAnim).ppt

PRIMERGY TX1310 M3 未サポートOS動作検証確認情報

本文ALL.indd

(Microsoft Word - WhitePaper_EvaluationAvanceNVBU__rev2_\203t\203H\201[\203\200\211\374\222\371\224\305_.doc)

スライド 1

Microsoft PowerPoint - 高速化WS富山.pptx

Fibre Channel (2004/10/xx)

PRIMERGY TX100 S3 未サポートOS動作検証確認情報

MIRACLE System Savior による Red Hat Storage 2.1 on HP ProLiant SL4540 Gen8 バックアップ / リストア検証報告書 ミラクル リナックス株式会社 作成者 : エンタープライズビジネス本部 青山雄一

資料3 今後のHPC技術に関する研究開発の方向性について(日立製作所提供資料)

HPC可視化_小野2.pptx

Microsoft Word - appendix_b_srft.doc

untitled

1 本体 2.5 型ドライブモデル ( フレームモデル ) 製品名称 / 概要 Express5800/R110i-1(4C/E3-1220v6) 1 x インテル Xeon プロセッサー E3-1220v6 (3GHz, 4C/4T, 8 MB), メモリセレクタブル, ディスクレス, ODD レ

P P P P P P P OS... P P P P P P

並列計算導入.pptx

アドバンストサーバ「HA8000シリーズ」において最新テクノロジーを採用しシステム性能を強化

Microsoft Word - JP-AppLabs-MySQL_Update.doc

目次 1 はじめに 登録商標 商標 注意事項 免債事項 SR-IOV の機能概要 性能検証事例 測定環境 測定結果 各方式による共有 NIC 性能比較 ( ポートあ


NEC 製PC サーバ『Express5800 R120f-1E』とSanDisk『ioMemory SX /SX 』検証報告書

Recovery Managerのバックアップおよびリカバリの最適化

i Ceph

Microsoft PowerPoint - SWoPP2010_Shirahata

FUJITSU Server PRIMERGY / FUJITSU Storage ETERNUS NR1000 F2240とSophos Anti-Virus for NetAppの連携におけるウイルス検知の動作検証

fse7_time_sample

GPGPUクラスタの性能評価

RICCについて

memcached 方式 (No Replication) 認証情報は ログインした tomcat と設定された各 memcached サーバーに認証情報を分割し振り分けて保管する memcached の方系がダウンした場合は ログインしたことのあるサーバーへのアクセスでは tomcat に認証情報

富士通株式会社製サーバPRIMERGY TX150 S7 と、イメーション株式会社製RDX USB ドッキングステーション及びRDXカートリッジの接続動作検証結果

100123SLES11HA.pptx

FX10利用準備

(Microsoft PowerPoint - Mirapoint\220\273\225i\221\316\224\344\225\\\(5\203V\203\212\201[\203Y_7\203V\203\212\201[\203Y\201j.ppt)

White Paper 高速部分画像検索キット(FPGA アクセラレーション)

momentum Probe Type-R/C version 4.21 build-a04a Release Notes Release Version: momentum Probe Type-R/C version 4.21 build-a04a Release Date: 2018/06/2

Oracle Real Application Clusters 10g: 第4世代

K5移行サービス ご紹介資料

PowerPoint プレゼンテーション

Slide 1

Oracle Database におけるDELL|EMC CX4 とエンタープライズ向けフラッシュ・ドライブの効果的な活用法

Microsoft Word - nvsi_090200jp_r1_nvbsvr_mscs.doc

Microsoft PowerPoint - GPUシンポジウム _d公開版.ppt [互換モード]

[PRESS RELEASE] ITGMARKETING 2018-PR 年 1 月 24 日 ITG マーケティング株式会社 Samsung 64 層 V-NAND 搭載 SATA SSD 新ラインアップ 860 PRO と 860 EVO を 2 月上旬より販売 日本サムスン株式

OPENSQUARE

PRIMERGY RX100 S5 未サポートOS動作検証確認情報

C言語におけるファイル入出力の高速化

<4D F736F F D20332E322E332E819C97AC91CC89F090CD82A982E78CA982E9466F E393082CC8D5C91A291CC90AB945C955D89BF5F8D8296D85F F8D F5F E646F63>

iscsi_omote

Transcription:

2.2.2. MPI 性能検証 富士通株式会社 志田直之 ここでは,Open MPI および富士通 MPI を用いて,MPI 性能の評価結果について報告する 1. 性能評価のポイント MPI の性能評価は, 大きく 3 つに分けて評価を行った プロセス数増加に向けた検証 ノード内通信とノード間通信の検証 性能検証 - 連続データ転送 - ストライド転送 2. プロセス数増加に向けた検証 評価に用いたシステムを以下に示す Quad-Core AMD Opteron Processor 8354 2.2GHz 4 (16core) / node 16GB /node Interconnect ConnectX DDR * 4 OS Linux version 2.6.18-92.1.22.el5 Topology FAT Tree 48 ノード 今回の評価に用いたコードと MPI を以下に示す コード Intel MPI Benchmarks 3.1 MPI Open MPI 1.3.3 評価は以下の方法で行った ノード内のコアを全て使用 (1 ノード 16 プロセス 1 ノード ) ノード内は共有メモリ通信, ノード間 InfiniBand 通信 現状のユーザーアプリケーションを想定し, 測定関数と測定範囲を以下のように設定した - Allreduce (16~768 プロセス ):4B, 8B, 1KB, 32KB - Alltoall (16~512 プロセス ):1KB, 4KB, 16KB, 32KB 検証結果を以下に示す

Allreduce (16 プロセス / 1 ノード ) Allreduce (SHM+IB communication) - 16 process/node 0 1 4B (Recursive Doubling=default) 8B (Recursive Doubling=default) 1KB (Recursive Doubling=default) 32KB (Ring=default) 32KB (Recursive Doubling) Processes Alltoall (16 プロセス / 1 ノード ) Alltoall (SHM+IB communication) - 16 process/node 00 0 1KB 4KB 16KB 32KB 1 Processes まとめ Allreduce - 128 プロセス 256 プロセス 512 プロセスの性能値が悪くなるが, 相対的にプロセス数とともに実行時間が増えていく 一般的に使用される 4 バイトや 8 バイトの Allreduce は, 並列度を上げていくと実行コストが見えてくる このデータ長は一般的にチェックサムに使用されるため, プロセス数増加しても通信量を減らすことができない このため, スケーラビリティ低下の要因の一つとなる - 32KB では Ring アルゴリズムが選択されるが, 実際は 128 プロセスまでは,Recursive Doubling のアルゴリズムの方が効果的である

Alltoall - プロセス数にスケールして, 確実に実行時間が増えていく Alltoall を使用したプログラムのスケーラビリティを確保するには, メッセージ長を短くすることが重要となる 3. ノード間通信とノード内通信 評価に用いたシステムを以下に示す Quad-Core AMD Opteron Processor 8354 2.2GHz 4 (16core) / node 16GB /node Interconnect ConnectX DDR * 4 OS Linux version 2.6.18-92.1.22.el5 Topology FAT Tree 今回の評価に用いたコードと MPI を以下に示す IB + SHM 通信 IB 通信 実行時オプション --mca btl_openib_warn_default_gid_prefix 0 --mca btl self,sm,openib --mca btl_openib_warn_default_gid_prefix 0 --mca btl self,openib 実行時付加 numactl --interleave=all numactl --interleave=all テストパターンと評価システム上のプロセス構成を以下に示す ノード内のコアを全部使用 ( 1 ノード 16 プロセス 1 ノード ) (1) 全ての通信を SHM 通信 (2) 全ての通信を IB Loopback 通信 ノード内の を 1 コアだけ全部使用 (4 プロセス / 1 ノード 4 ノード ) (3) ノード内は SHM 通信, ノード間は IB 通信 (4) ノード内は IB Loopback 通信, ノード間は IB 通信 ノード内の を 1 つだけを使用 (1 プロセス / 1 ノード 16 ノード ) (5) 全ての通信を IB 通信 16 ノード

検証結果を以下に示す ノード内通信とノード間通信の比較 (PingPong) PingPong ノード内通信 (SHM 通信 ) ノード間通信 (IB 通信 ) slow fast 1 1 0 00 000 Message size (Byte) ノード内通信とノード間通信の比較 (Allreduce) Allreduce 0 1 ノード 16 プロセス 1 ノード (SHM 通信 ) 1 ノード 16 プロセス 1 ノード (IB 通信 ) 1 ノード 4 プロセス 4 ノード (SHM+IB 通信 ) 1 ノード 4 プロセス 4 ノード (IB 通信 ) 1 ノード 1 プロセス 16 ノード (IB 通信 ) slow fast 1 0 00 000 Message size (Byte)

ノード内通信とノード間通信の比較 (Alltoall) Alltoall 0 1 ノード 16 プロセス 1 ノード (SHM 通信 ) 1 ノード 16 プロセス 1 ノード (IB 通信 ) 1 ノード 4 プロセス 4 ノード (SHM+IB 通信 ) 1 ノード 4 プロセス 4 ノード (IB 通信 ) 1 ノード 1 プロセス 16 ノード (IB 通信 ) slow fast 1 0 00 000 Message size (Byte) ノード内通信とノード間通信の比較 (Alltoall< 一部アルゴリズム変更版 >) Alltoall 0 1ノード16プロセス 1ノード (SHM 通信 ) 1ノード16プロセス 1ノード (IB 通信 ) 1ノード4プロセス 4ノード (SHM+IB 通信 ) 1ノード4プロセス 4ノード (IB 通信 ) 1ノード1プロセス 16ノード (IB 通信 ) 1 0 00 000 Message size (Byte) まとめ 転送長が短い通信では共有メモリ通信が有利となる 本システム ( 富士通 HX600) では 20KB が しきい値となり,20KB 以下では共有メモリ通信,20KB 以上がノード間通信の方が速くなる 必要なメモリやメモリバンド幅が気にならないアプリケーションの場合, アプリケーションの 選択は以下のように考える メッセージ長 全体的に短い 全体的に長い ノード内プロセス ノード内に多くのプロセスを詰め込む ノード内のプロセスを減らす ノード内通信 SHM 通信を選択する IB Loopback 通信を選択する

4. 性能 評価に用いたシステムを以下に示す 計算ノード ( 富士通 FX1) SPARC64 VII 2.5GHz * 1 / node (4-cores) 32GB /node Interconnect InfiniBand DDR * 1 OS OpenSolaris Build 79 Middleware Parallelnavi Base Package 3.1 File system FUJITSU Parallelnavi SRFS 3.0.0-03(B30000-02G) IO ノード ( 富士通 SPARC Enterprise M9000) SPARC64 VI * 4 64GB /node Interconnect InfiniBand DDR * 4 Fibre Channel 4G-FC * 4 File system Sun StorageTek QFS ディスクシステム ( 富士通 ETERNUS2000 Model200) コントローラ数 2 キャッシュ容量 4GB Interconnect InfiniBand DDR * 4 RAID RAID6(NL-SAS 4D+2P) * 実 WRITE 性能 約 400MB/s 計算ノード Fujitsu FX1 Fujitsu FX1 Fujitsu FX1 Fujitsu FX1 Fujitsu FX1 8 ノード IB SW Fujitsu SPARC Enterprise M9000 64GB (2core) (2core) (2core) (2core) FC FC FC Eternus2000 Model200 IO ノード FC 富士通の Parallelnavi Language Package V3 に含まれる MPI を使用した 1 ノードあたり 1 プロセスを生成し, 以下の観点でテストを行った 連続データ転送性能 ストライド転送性能 計測パターンは 2 種類を用意し, 以下のように定義する IO キャッシュ性能 : IO サーバーへデータを転送した時間とする ディスク込み IO 性能 : 実際にディスクに書き込まれるまでの時間とする

以下に, 連続データの転送性能について評価する 連続データの転送性能は, 以下の API 間の消費時間を計測した 呼び出す API 一覧 Split Files IO マスター MPI_File_open MPI_File_set_view MPI_File_ MPI_File_sync MPI_File_close open fsync close open MPI_Gather fsync close IO キャッシュ性能ディスク込み IO 性能 ディスク込み IO 性能 IO キャッシュ性能 I/O 方式 Split Files IO マスター MPI_File_set_view MPI_Gather MPI_File_ (rank0 のみ ) MPI_File_sync fsync fsync (rank0 のみ ) IO 性能は性能ブレが激しく, 数回の試行に対する平均値を性能値と定義することが難しい 例えば, IO キャッシュの吐き出しタイミングによって大きく性能ブレが発生するが, ユーザープログラムから見るとランダムに発生するため想定できない 計測は,1 つの IO 長に対し 20 回試行し, 明らかに性能ブレしたデータを目視で排除して集計した 今回提示するデータは, 各方式を比較するために システムが安定しているときの理想的な IO 性能 と考える 連続データ転送性能は, 以下の 3 つのパターンについて計測を行った Split Files 方式各プロセスがファイルを作成する MPI_IO 方式 のブロッキング入出力を用いて, 一つのファイルを作成する IO マスター方式 MPI_Gather によって, 全プロセスのデータをルートプロセスに集めてから, 一つのファイルを作成する 検証結果を以下に示す 2500 連続領域隙間なしの IO 性能 ( cache bw disk cache bw) 2000 バンド幅 (MB/s) 1500 Split Files IOマスター ( ディスク込み性能 ) Split Files( ディスク込み性能 ) IOマスター ( ディスク込み性能 ) 500 0 1.E+06 1.E+07 1.E+08 1.E+09 1.E+ ファイル長 ( バイト )

性能と Split Files 性能はほとんど変わらずに, ファイル長が長くなるにつれて傾きは悪くなるがスケールしていく IO マスター方式は,500MB/s 程度で一定となっている これは, データの再構成に時間がかかるため, 性能面で劣ると言える 今回評価したシステムでは, ディスク性能が低いため, ディスク込み性能は全ての方式でほぼ同じ性能になっている 方式 Split Files 方式ともに,IO キャッシュ効果を有効に利用していると言える 以下に, ストライドデータの転送性能について評価する ストライドデータ転送性能は, 以下の 3 つのパターンについて計測を行った 方式 のブロッキング入出力を用いて, 一つのファイルを作成する MPI_IO(COLL) 方式集団的 を用いて, 一つのファイルを作成する IO マスター方式 MPI_Gather によって, 全プロセスのデータをルートプロセスに集めてから, 一つのファイルを作成する 計測は,IO キャッシュ性能を測定し, 以下の API 間の消費時間を計測した 呼び出す API 一覧 (COLL) IO マスター MPI_File_open MPI_File_set_view MPI_File_ MPI_File_sync MPI_File_close MPI_File_open MPI_File_set_view MPI_File all MPI_File_sync MPI_File_close open MPI_Gather fsync close IO キャッシュ性能 ストライド転送性能検証パターン 1. ファイル長 256MB ブロック粒度 ( ファイル長 / 繰り返し数 / プロセス数 ) 繰り返し数 (4 回 ) P0 0 1 3 BLOCKLENGTH( 可変 ) COUNT=1 FILE LENGTH=256MB COUNT=4 2. ファイル長 256MB ブロック粒度 ( ファイル長 / 繰り返し数 / プロセス数 ) 繰り返し数 (16 回 ) P0 0 1 15 BLOCKLENGTH( 可変 ) COUNT=1 COUNT=16 FILE LENGTH=256MB 3. ファイル長 256MB ブロック粒度 ( ファイル長 / 繰り返し数 / プロセス数 ) 繰り返し数 (256 回 ) P0 0 1 255 BLOCKLENGTH= 可変 COUNT=1 COUNT=256 FILE LENGTH=256MB 検証結果を以下に示す

< ストライド転送性能 ( ブロック数 =4)> ストライド転送性能 (IO キャッシュ性能 ) ( ファイル長固定 =256MB, ブロック数固定 =4, ブロック長可変 ) 1800 1600 1400 (COLL) IO MASTER バンド幅 (MB/sec) 1200 800 600 400 200 0 1 プロセス数 < ストライド転送性能 ( ブロック数 =16)> ストライド転送性能 (IO キャッシュ性能 ) ( ファイル長固定 =256MB, ブロック数固定 =16, ブロック長可変 ) 1800 1600 1400 (COLL) IO MASTER バンド幅 (MB/sec) 1200 800 600 400 200 0 1 プロセス数 < ストライド転送性能 ( ブロック数 =256)> ストライド転送性能 (IO キャッシュ性能 ) ( ファイル長固定 =256MB, ブロック数固定 =256, ブロック長可変 ) 1800 バンド幅 (MB/sec) 1600 1400 1200 800 600 (COLL) IO MASTER 400 200 0 1 プロセス数

ストライドデータのファイル転送では, 集団的 の性能が効果的である 16 プロセス実行の比較的小さな環境ではあるが, 転送性能はスケールしている これは,ROMIO における集団的 の実装に,Data Sieving の技術が利用されていることが効果的に働いていると考えられる Data Sieving とは, ストライドデータの入出力処理において, 各プロセス内にバッファリングを行い, 連続データでファイルを入出力する方法である 2 つのフェーズにわかれていて, 出力の場合は通信フェーズから I/O フェーズ, 入力の場合は IO フェーズから出力フェーズの順に処理を行う Data Sieving を利用することで, 一つ一つの小さなブロックに対するファイル要求ではなく, 大きなブロックに対するファイル要求が行われるため, ブロック数が多い場合に効果的な性能が期待できる Data Sieving のファイル出力処理を以下に示す P0 0 1 2 P1 0 1 2 P2 0 1 2 communication communication 0 0 0 1 1 1 2 2 2 Temporary buffer of P0 Temporary buffer of P1 Temporary buffer of P2 1. 通信フェーズ 2. I/O フェーズ FILE 0 0 0 1 1 1 2 2 2 逆に, 非集団的 の性能は, ブロック数を増やすにつれて性能の低下が大きい 各プロセスが独立して IO を実行する上で, 細かい領域に対してのファイルアクセスに対する排他処理の影響が大きいと考えられる 以上