82
High Performance Computing Microsoft Windows HPC HPC(ハイパフォーマンスコンピューティング)入門 序:HPCクラスターを作ろう!まずはオンプレで 2013/06/01

20130601わんくま「序hpcクラスターを作ろう!まずはオンプレで」公開用

Embed Size (px)

DESCRIPTION

Microsoft HPC Pack 2012が公開され、わんくま勉強会にて3連作予定のHPCを作ろう企画!のためのイントロダクション。 手元(オンプレミス)にHPCクラスターを作る手順と、今後のAzureクラウドを利用できる機能を紹介した。 (保存用)

Citation preview

Page 1: 20130601わんくま「序hpcクラスターを作ろう!まずはオンプレで」公開用

HighPerformanceComputing

MicrosoftWindows

HPC

HPC(ハイパフォーマンスコンピューティング)入門

序:HPCクラスターを作ろう!まずはオンプレで

2013/06/01

Page 2: 20130601わんくま「序hpcクラスターを作ろう!まずはオンプレで」公開用

「株式会社ニュージェック」

情報システムグループに勤務。

HPCに関してはおしゃべりしてもいいけど、

「個人的な見解は会社には帰属しません。」(重要)

現在、Microsoft MVP 「Windows Azure Administration」

として静かに活動中。

・FaceBookは本名の「黒田幸智」です。

WEBsite

http://kurodayk.wordpress.com/

自己紹介

Page 3: 20130601わんくま「序hpcクラスターを作ろう!まずはオンプレで」公開用

これからの予定

(1)本日の登壇

・誰でも「Microsoft HPC Servser 2012」を使えば、

ほーら、マイスパコンだよ!

『HPC(ハイパフォーマンスコンピューティング)入門序:HPCクラスターを作ろう!まずはオンプレで』

(2)今後の登壇

・次回わんくま大阪勉強会(予定)にて

『破:Windows AzureでHPCを作ろう!』(仮)

『Q:ビッグデータといえば、HD insight!』(仮仮)

・・・・などへと続く予定です。

Page 4: 20130601わんくま「序hpcクラスターを作ろう!まずはオンプレで」公開用

今日の目標

High Performance Computing って何よ?

Microsoft HPC Pack 2012 って?

作ってみようよ!マイスパコン!

Tips集

Page 5: 20130601わんくま「序hpcクラスターを作ろう!まずはオンプレで」公開用

1.High Performance Computing って何よ?

Page 6: 20130601わんくま「序hpcクラスターを作ろう!まずはオンプレで」公開用

その前に「スーパーコンピューター」・・・

スーパーコンピュータ(英: supercomputer)は、内部の演算処理速度がその時代の一般的なコンピュータより極めて高速なコンピュータのこと。略称はスパコン。

膨大な計算処理が目的であり、それを実現するための大規模なハードウェアやソフトウェアを備える。有限要素法や境界要素法などに基づく構造解析、気象予測、分子動力学、シミュレーション天文学、最適化問題、金融工学のような大規模数値解析に基づくシミュレーションに利用される。

Page 7: 20130601わんくま「序hpcクラスターを作ろう!まずはオンプレで」公開用

高度計算が必要な理由

土木・建築分野での、地震による影響シミュレーション

→構造物に対する地震波形の影響分析、アニメーション作成など

港湾・海岸分野での、「波」の計算シュミレーション

→連続波形によるアニメーション作成など

河川分野での、洪水シナリオシミュレーション解析など・・・・・・・・

天文や宇宙開発・・・・

とにかくでかい計算!

Page 8: 20130601わんくま「序hpcクラスターを作ろう!まずはオンプレで」公開用

どんな計算事例があるのか (当社事例)

Page 9: 20130601わんくま「序hpcクラスターを作ろう!まずはオンプレで」公開用

河川分野での利用(例)

平面二次元河床変動計算結果(河床変動量分布図)

平面二次元河床変動計算は、河川改修後の河道の安定性や河川構造物周りの局所洗掘発生等の評価や対策工の効果を把握するために用いる。図では、河川盛土部の崩壊時を再現している。河床変動計算は流れと同時に河床変動についても計算するため計算時間が長くなる。そのため、OpenMPによる並列化を実施し、計算時間を短縮させている。

Page 10: 20130601わんくま「序hpcクラスターを作ろう!まずはオンプレで」公開用

計算科学研究機構(理研)-『京』

2011年度世界一位

CPU 548,352コア

機構パンフレットより引用

Page 11: 20130601わんくま「序hpcクラスターを作ろう!まずはオンプレで」公開用

で?HPCって・・・

Page 12: 20130601わんくま「序hpcクラスターを作ろう!まずはオンプレで」公開用

少ないCPUを躯体ごと仲良く同期させて、一体多数なCPUを作り出す技術

スーパーコンピューターを容易に構築できないか。

大型コンピューターを用意しなくとも、

汎用なパソコンを連結して、

仮想的なクラスター(群)コンピューターを作る。

安価な投資で、

必要なサイズの群を作り、

高性能な計算システムを入手できる。

HPC(PCクラスター)と呼ばれる技術

Page 13: 20130601わんくま「序hpcクラスターを作ろう!まずはオンプレで」公開用

構成する要素

(1)物理的なコンピューター(パソコン、サーバーetc)

・CPU

・メモリ

・記憶装置(HDD・・・)

(2)OS

・Linux,Windows・・・

最近では、

・GPGPU

・SSD など

Page 14: 20130601わんくま「序hpcクラスターを作ろう!まずはオンプレで」公開用

(1)物理的なコンピューター

サーバー筐体型

特徴 ① 拡張性に優れている。

② 過酷な環境下でも動作し続ける。

③ パーツのクオリティーが高い。

欠点 ① 高い

本体価格、土地代、騒音対策・・・・

Page 15: 20130601わんくま「序hpcクラスターを作ろう!まずはオンプレで」公開用

(1)物理的なコンピューター

汎用筐体(パソコン)型

特徴 ① わかりやすく、安価に持ってこれる。

② 集積度が高くない。

③ パーツのクオリティーはそれなり。

④ 一般の手が届く。

欠点 ① 壊れやすい。

② 拡張性が低い。

Page 16: 20130601わんくま「序hpcクラスターを作ろう!まずはオンプレで」公開用

汎用なPCを連結して作られたスパコン事例(長崎大学)

長崎大学 「DEGIMA」July 2011

GREEN 500にて

第3位

Page 17: 20130601わんくま「序hpcクラスターを作ろう!まずはオンプレで」公開用

具体例として・・・ (当社事例)

Page 18: 20130601わんくま「序hpcクラスターを作ろう!まずはオンプレで」公開用

現在(2012年)の計算ノードラック

Page 19: 20130601わんくま「序hpcクラスターを作ろう!まずはオンプレで」公開用

2012年現在の構成(HPC 2008R2ベース)<計算ノード>

DELL Optiplex 790×25台

DELL Optiplex 780×25台

<ヘッドノード その他>

HP DL380 G5 ×1台(仮想2台)

DELL PowerEdge ×1台

Windows2008 R2 ×2台

HP SANストレージ

常設ノード 50台

専用ファイルサーバー

SAN 3.4TB

Microsoft Hyper-V

Microsoft SCOMサーバー

仮想マシン「HPC01」

仮想マシン「HPC02」R2

2012年8月現在は、300CPU相当を実現。

Page 20: 20130601わんくま「序hpcクラスターを作ろう!まずはオンプレで」公開用

特記事項として・・・

サーバー集積型スパコンでも、

PC集積型スパコンでも、

最近の主流は、

CPUの純性能ではなく、GPUも含めた性能による

ハードウェアの選定・チューニングが肝!

Page 21: 20130601わんくま「序hpcクラスターを作ろう!まずはオンプレで」公開用

物理的に効果がある着眼点としては、

① CPUは近くでたくさんあるほうがよい。

② データバスは早いほうがいい。

③ ハードディスクよりも、SSDなどの速い記憶装置がよい。

④ (最近のトレンド)

大容量メモリ装置(例:IBM eX5:最大2TBのメモリ)

⑤ ネットワークはデータ交換で混雑するので、

10Gbやinfinibandを複数持ってくる。

⑥ CPUの実質水増しのため、GPUボードを利用する。

⑦ 冷却装置に水冷を採用する。

・・・・・・・もうお金のかかるお話になってしまいます。

Page 22: 20130601わんくま「序hpcクラスターを作ろう!まずはオンプレで」公開用

OSといえば・・・Microsoft HPC Pack 2012 って?

Page 23: 20130601わんくま「序hpcクラスターを作ろう!まずはオンプレで」公開用

HPCのためのOSといえば・・・

Microsoft Windows Server 2012 (2008 R2も可)

Linuxもお手軽ですが、今回はWindowsということで。(笑)

ここへ、HPCを走らせるためのパッケージを追加します。

これだけです。

http://www.microsoft.com/ja-jp/download/details.aspx?id=36054

Page 24: 20130601わんくま「序hpcクラスターを作ろう!まずはオンプレで」公開用

Windows HPC の製品構成 Windows OSに HPC Pack(ダウンロードセンターで無償提供)を

インストールする。– クラスターを構築する全ノードに HPC Pack をインストール。

対応 OS は、Windows Server 2012, Windows Server 2008 R2, Windows 7 Professional 以上、Windows 8– ヘッドノードは Windows Server 2012 必須

Active Directory によるセキュアな認証基盤

OS HPC Pack(無償)

• Windows Server 2012

• Windows Server 2008 R2

• Windows 8

• Windows 7 Professional以上

• ジョブスケジューラー

• MPI ライブラリ

• マルチノード管理ツール

• ジョブ投入/管理ツール

• レポーティングツール

• ネットワークインストールツール

25

実質のお金のかかるところ(Excelを使う場合も・・・)

Page 25: 20130601わんくま「序hpcクラスターを作ろう!まずはオンプレで」公開用

HPC クラスターマネージャー

統一された管理コンソール

26

Page 26: 20130601わんくま「序hpcクラスターを作ろう!まずはオンプレで」公開用

システム要件

サポートされるオペレーティング システム

Windows 7, Windows 8, Windows Server 2008 R2,

Windows Server 2012 •Head nodes: Windows Server 2012 Standard or Datacenter

•Compute nodes: Windows Server 2012 Standard, Datacenter, or x64-based versions of Windows Server 2008 R2 Standard, Enterprise, Datacenter, or HPC Edition

•(Broker nodes: Windows Server 2012 Standard or Datacenter)

•Workstation nodes: x86 or x64 versions of Windows 7 Professional or Enterprise, Windows 8 Pro or Enterprise

CPU: x64 architecture computer

但し、 Workstation nodes which may run x86-based or x64-based processors で可。

RAM: 1 GB、Minimum disk space for setup: 50 GB

Multiprocessor support: HPC Pack 2012 can address up to 64 cores on a single machine, if the operating system supports it.

Page 27: 20130601わんくま「序hpcクラスターを作ろう!まずはオンプレで」公開用
Page 28: 20130601わんくま「序hpcクラスターを作ろう!まずはオンプレで」公開用

ついにペタFLOPSの壁を越えたWindows HPC

TSUBAME 2.0 上で実行された Windows HPC Server 2008 R2 は、1296 ノードでの HPL ベンチマークで 1.127 ペタFLOPSを達成

現在(当時)の TOP500 ランキングで 6 位に相当する性能

29

Page 29: 20130601わんくま「序hpcクラスターを作ろう!まずはオンプレで」公開用

Excel2010

CADデータ変換

CAEプリポストソルバー

Windows HPC Pack 2012

Windows HPC Packとは

ActiveDirectory

(ユーザーの管理)

計算クラスターの構築に最適化されたWindows ミドルウェアです。PC/サーバー/クラウドの三種類を計算機資源として利用できます

クラウド

サーバー

PC

Task

Task

Task

Task

Task

ヘッドノード(管理用サーバー)

JOB

JOB

JOB

ブローカーノード規模に応じて複数台

PC

30

Page 30: 20130601わんくま「序hpcクラスターを作ろう!まずはオンプレで」公開用

ワークステーションノード(Windows 7Client流用機能)の機能

Windows 7を計算ノードに

参加させられるので、

HPCクラスタ

フロアのWin7クライアント

急なスケールアウトの際に、

追加コストをかけず、ノードを

増やせる。

(パフォーマンスは犠牲になると思われるが・・・)

平日の夜間や休日の事務職PCを利用。

(順次計算プログラムで有利か)

HPC

HPC HPC

Page 31: 20130601わんくま「序hpcクラスターを作ろう!まずはオンプレで」公開用

「HPC Services for Excel 2010」の機能

プログラムは組めないけれども、EXCELならいろいろできるユーザー

繰り返し計算など、表の中で高度計算を行う。→再計算の度に時間がかかる。

バックエンドでHPCに計算を自動的に依頼。

ユーザーは高速化の恩恵のみを受ける

HPCクラスタ

Page 32: 20130601わんくま「序hpcクラスターを作ろう!まずはオンプレで」公開用

さらに安価に性能アップするためには・・

GPGPUを搭載し、「CUDA」による高度プログラミング。

もともと、PCには数個のCPUしか搭載できないが、

グラフィックボードとして利用されているNVIDIAなどの

GPUボードのチップCPUを働きアリのように利用する。

ボード1枚で数個から数百個など利用可能。

Page 33: 20130601わんくま「序hpcクラスターを作ろう!まずはオンプレで」公開用

<並列化技法>GPGPUプログラミング(GPUコンピューティング)とは

1台のPC部分の本来のCPUは4コア~12コア

グラフィックアクセラレーター(GPU)をCPUとして、

計算に流用する技術

NVIDIA社の「TESLA」などが代表。

NVIDIA ホームページより引用

参考

Page 34: 20130601わんくま「序hpcクラスターを作ろう!まずはオンプレで」公開用

NVIDIA社のGPGPU 「TESLA」

http://www.nvidia.co.jp/object/tesla-supercomputing-solutions-jp.html

Page 35: 20130601わんくま「序hpcクラスターを作ろう!まずはオンプレで」公開用

作ってみようよ!マイスパコン!

Page 36: 20130601わんくま「序hpcクラスターを作ろう!まずはオンプレで」公開用

作ってみよう!マイスパコン!

今回は、Hyper-V 上に

1. 2012 Server 1台 (HEAD-node)

(AD基本構成済み)

2. 2012 Server 1台(計算node)

3. 2008R2 Server 1台(計算node)

で構成してみた。

同様の手順で、Windows7/8もワークステーションnodeに

できます。

Page 37: 20130601わんくま「序hpcクラスターを作ろう!まずはオンプレで」公開用

1.ヘッドノードの構築

ヘッドノードとなる Windows Serverを初期構成する。

・Active Directory の構成(非2012モードで可)

・DNS

・DHCP

・必要により、WSUS

【重要】

ヘッドノードとなれるのは、

Microsoft Windows Server 2012 だけです。

Page 38: 20130601わんくま「序hpcクラスターを作ろう!まずはオンプレで」公開用

1.ヘッドノードの構築

ダウンロードした「HPC Pack 2012」を解凍し、ヘッドノードとなる Microsoft Windows Server 2012 上で実行する。

Page 39: 20130601わんくま「序hpcクラスターを作ろう!まずはオンプレで」公開用
Page 40: 20130601わんくま「序hpcクラスターを作ろう!まずはオンプレで」公開用
Page 41: 20130601わんくま「序hpcクラスターを作ろう!まずはオンプレで」公開用
Page 42: 20130601わんくま「序hpcクラスターを作ろう!まずはオンプレで」公開用
Page 43: 20130601わんくま「序hpcクラスターを作ろう!まずはオンプレで」公開用

難関!SQLサーバーのインストール

【注意】失敗多発地帯!

(1) .NET 3.5の導入

(2) SQL Server の導入

特に、WEBからupdateをダウンロードしようとするので、ネット接続があったほうが、成功しやすい。

Page 44: 20130601わんくま「序hpcクラスターを作ろう!まずはオンプレで」公開用
Page 45: 20130601わんくま「序hpcクラスターを作ろう!まずはオンプレで」公開用

2.ヘッドノードで構成を確認

Page 46: 20130601わんくま「序hpcクラスターを作ろう!まずはオンプレで」公開用

利用するネットワークトポロジの選択

【注意】物理構成と合わせること

標準的には、1ネットワーク(トポロジ5)

高度な利用には、3ネットワーク

(トポロジ4)も

視野に入れるとよい。

=1台当たり3枚までNIC必要。

Page 47: 20130601わんくま「序hpcクラスターを作ろう!まずはオンプレで」公開用
Page 48: 20130601わんくま「序hpcクラスターを作ろう!まずはオンプレで」公開用

別途AD操作推奨!

Page 49: 20130601わんくま「序hpcクラスターを作ろう!まずはオンプレで」公開用
Page 50: 20130601わんくま「序hpcクラスターを作ろう!まずはオンプレで」公開用
Page 51: 20130601わんくま「序hpcクラスターを作ろう!まずはオンプレで」公開用
Page 52: 20130601わんくま「序hpcクラスターを作ろう!まずはオンプレで」公開用

ひと段落です。

Page 53: 20130601わんくま「序hpcクラスターを作ろう!まずはオンプレで」公開用

多人数で使う場合の設定(AD操作)

【AD】利用者登録

・HPCを使うユーザーグループを作成する。

・HPCを使うユーザーを選択する。

・そのグループにユーザーを追加する。

コツ=グローバルグループ名を

「GG-HPCxx」のようにしておくと、

選択の際など便利。

Page 54: 20130601わんくま「序hpcクラスターを作ろう!まずはオンプレで」公開用

ADでグループ、何が便利なのか。

① HPCシステムを使うユーザーを一か所で管理できる。

② データ用ストレージのフォルダに、グループで

アクセス権制御すると、整理しやすい。

③ その他いろいろ・・・

Page 55: 20130601わんくま「序hpcクラスターを作ろう!まずはオンプレで」公開用
Page 56: 20130601わんくま「序hpcクラスターを作ろう!まずはオンプレで」公開用

2.計算ノードの構築

・計算専用ノード

Windows Serverを初期構成する。

ただし、役割の追加は不要。

・安上がり計算ノード

Windows 7/8 を初期構成する。

(x64でもx86でもどちらでも構わない)

※Windows展開サービスを用いる方法の場合は、PXEで可。

Page 57: 20130601わんくま「序hpcクラスターを作ろう!まずはオンプレで」公開用

ヘッドノードへアクセス

Page 58: 20130601わんくま「序hpcクラスターを作ろう!まずはオンプレで」公開用
Page 59: 20130601わんくま「序hpcクラスターを作ろう!まずはオンプレで」公開用

サーバー名

Page 60: 20130601わんくま「序hpcクラスターを作ろう!まずはオンプレで」公開用
Page 61: 20130601わんくま「序hpcクラスターを作ろう!まずはオンプレで」公開用
Page 62: 20130601わんくま「序hpcクラスターを作ろう!まずはオンプレで」公開用
Page 63: 20130601わんくま「序hpcクラスターを作ろう!まずはオンプレで」公開用
Page 64: 20130601わんくま「序hpcクラスターを作ろう!まずはオンプレで」公開用
Page 65: 20130601わんくま「序hpcクラスターを作ろう!まずはオンプレで」公開用
Page 66: 20130601わんくま「序hpcクラスターを作ろう!まずはオンプレで」公開用
Page 67: 20130601わんくま「序hpcクラスターを作ろう!まずはオンプレで」公開用
Page 68: 20130601わんくま「序hpcクラスターを作ろう!まずはオンプレで」公開用

ジョブを投入する

Page 69: 20130601わんくま「序hpcクラスターを作ろう!まずはオンプレで」公開用

ここの使い方については、次回に詳しく・・・

Page 70: 20130601わんくま「序hpcクラスターを作ろう!まずはオンプレで」公開用

Tips集!

とりあえずHPCするんだったら、複数台のPCを使わないとダメ。(1台なんだったら、そのままでいい)

物理的にくっついてないPCをくっつけるような使い方をするので、くっついている部分の手当てが重要。

(1) ネットワーク

(2) 共有ハードディスク

↑とにかく、ボトルネックになる。

簡単に行くなら、PC増設。高度に進めるならGPGPUもOK。

マザーボードにいくつもCPUがのる製品は好条件!

バス速度はボトルネックの基本!

Page 71: 20130601わんくま「序hpcクラスターを作ろう!まずはオンプレで」公開用

注意事項

GPGPUを搭載する場合、NVIDIA純正ボードでない場合は、注意が必要!

→チップだけOEMされて、基盤は別製品というケースが

あり、この場合バスが燃える可能性がある!

CPUがフル回転する場合、排熱が非常に多くなるので、

部屋の換気や冷房には十分注意しましょう。

補助記憶装置がHDDの場合、安い機器は避けましょう。

(書き込みキューがあふれてしまって、たちまち動かなく

なります。RAID5装置などで安物は危険です。)

Page 72: 20130601わんくま「序hpcクラスターを作ろう!まずはオンプレで」公開用

さて・・・・・・最後に。

Page 73: 20130601わんくま「序hpcクラスターを作ろう!まずはオンプレで」公開用
Page 74: 20130601わんくま「序hpcクラスターを作ろう!まずはオンプレで」公開用

次回予告!『破:Windows AzureでHPCを作ろう!』(仮)

HPC on Azure (クラウドへの拡張)

Page 75: 20130601わんくま「序hpcクラスターを作ろう!まずはオンプレで」公開用

クラウド、サーバー、デスクトップをシームレスにつなぐ HPC SOA プログラミングモデル

社内(オンプレミス)

デスクトップ

HPC ヘッドノード

WCF ブローカーノード

HPC クラスタ

ワークステーションノード(有休の Windows7 リソース)

クラウドWindows Azure

Azure 計算インスタンス

Azure 計算 プロクシ

Page 76: 20130601わんくま「序hpcクラスターを作ろう!まずはオンプレで」公開用

次回は・・・

『破:Windows AzureでHPCを作ろう!』(仮)

Windows Azure 上に、

HPC計算ノードを構築します。

メリット

もう、オンプレミス(社内)にでっかいサーバー

いらないもんね~~

いえいえ、いるのですよ。やっぱり・・・・

Page 77: 20130601わんくま「序hpcクラスターを作ろう!まずはオンプレで」公開用

Windows HPC on Azure

Windows Azureのロールインスタンスを計算ノードとしてHPCクラスターへ追加

ピーク需要の際、AzureにHPCリソースを拡張して活用

既存のクラスターノードと同じ扱いジョブは変更なくオンプレミス/Azure双方のHPCリソース上で実行可能

Azureノードは、クラスターマネージャーで統一管理が可能

Jobs

Requests

Head & Broker Nodes

Azure Gateway

Azure

HPC Clients

78

Page 78: 20130601わんくま「序hpcクラスターを作ろう!まずはオンプレで」公開用

Windows HPC on Azure

混合環境:オンプレミスとクラウド

On-premise

RDB

Blobs

• 計算リソースが不足した際、クラウドを活用

• 利用した分だけ課金.

• 動的にオンプレミスとクラウドのリソースを調整

Azure

Compute Nodes

DesktopsHPC Head Node

Broker Node

Worker/Web Role

Worker/Web Role

Worker/Web Role

79

Page 79: 20130601わんくま「序hpcクラスターを作ろう!まずはオンプレで」公開用

Windows HPC on Azure

全てクラウド

Azure

RDB

Blobs

• クラスターを管理、メンテナンスすることなくHPCを利用

HPC Head Node

Worker/Web Role

Worker/Web Role

HPC VM

80

Page 80: 20130601わんくま「序hpcクラスターを作ろう!まずはオンプレで」公開用

Windows HPC

ヘッドノード(管理用サーバー)

ブローカーノード(Excel 高速化)

規模に応じて複数台

Windows HPCあらゆる Windows 環境を HPC に利用できるソリューションです。専用サーバー, PC, サーバーの空き時間、クラウドを 1 つのクラスターとして活用することが可能です。

クラウドHPC 専用高速サーバー

TaskTask

JOB JOB

JOB

Task Task

Active

Directory

(ユーザー認証)

Excel 2010ユーザーアプリ

PC やファイルサーバー等の空き時間を有効活用

(Windows 7 / Windows Server 2008 R2)

TaskTask

金融アプリ

81

Page 81: 20130601わんくま「序hpcクラスターを作ろう!まずはオンプレで」公開用

85

2013年6月とうとう、日本にAzure データセンターが、

東京と大阪に!

Page 82: 20130601わんくま「序hpcクラスターを作ろう!まずはオンプレで」公開用

ご静聴ありがとうございました

ご質問・お問い合わせについて

黒田 幸智

[email protected]