Movatterモバイル変換
[0]
ホーム
URL:
画像なし
夜間モード
Download free for 30 days
Sign in
Upload
Language (EN)
Support
Business
Mobile
Social Media
Marketing
Technology
Art & Photos
Career
Design
Education
Presentations & Public Speaking
Government & Nonprofit
Healthcare
Internet
Law
Leadership & Management
Automotive
Engineering
Software
Recruiting & HR
Retail
Sales
Services
Science
Small Business & Entrepreneurship
Food
Environment
Economy & Finance
Data & Analytics
Investor Relations
Sports
Spiritual
News & Politics
Travel
Self Improvement
Real Estate
Entertainment & Humor
Health & Medicine
Devices & Hardware
Lifestyle
Change Language
Language
English
Español
Português
Français
Deutsche
Cancel
Save
Submit search
EN
Uploaded by
Koichi Shirahata
PDF, PPTX
731 views
GPUを考慮したMapReduceのタスクスケジューリング
Presented at SWoPP 2010 (IPSJ SIG Technical Report 2010-HPC-126)
Technology
◦
Read more
0
Save
Share
Embed
Download
Download as PDF, PPTX
1
/ 42
2
/ 42
3
/ 42
4
/ 42
5
/ 42
6
/ 42
7
/ 42
8
/ 42
9
/ 42
10
/ 42
11
/ 42
12
/ 42
13
/ 42
14
/ 42
15
/ 42
16
/ 42
17
/ 42
18
/ 42
19
/ 42
20
/ 42
21
/ 42
22
/ 42
23
/ 42
24
/ 42
25
/ 42
26
/ 42
27
/ 42
28
/ 42
29
/ 42
30
/ 42
31
/ 42
32
/ 42
33
/ 42
34
/ 42
35
/ 42
36
/ 42
37
/ 42
38
/ 42
39
/ 42
40
/ 42
41
/ 42
42
/ 42
Recommended
PDF
MemoryPlus Workshop
by
Hitoshi Sato
PDF
20181211 - PGconf.ASIA - NVMESSD&GPU for BigData
by
Kohei KaiGai
PDF
20190418_PGStrom_on_ArrowFdw
by
Kohei KaiGai
PDF
[20170922 Sapporo Tech Bar] 地図用データを高速処理!オープンソースGPUデータベースMapDってどんなもの?? by 株式会社...
by
Insight Technology, Inc.
PDF
20170310_InDatabaseAnalytics_#1
by
Kohei KaiGai
PDF
20200806_PGStrom_PostGIS_GstoreFdw
by
Kohei KaiGai
PDF
Drill超簡単チューニング
by
MapR Technologies Japan
PDF
20201113_PGconf_Japan_GPU_PostGIS
by
Kohei KaiGai
PDF
20170127 JAWS HPC-UG#8
by
Kohei KaiGai
PDF
pgconfasia2016 lt ssd2gpu
by
Kohei KaiGai
PDF
Apache Drill でオープンデータを分析してみる - db tech showcase Sapporo 2015 2015/09/11
by
MapR Technologies Japan
PDF
[db tech showcase Tokyo 2017] B35: 地図用データを高速処理!オープンソースGPUデータベースMapDの魅力に迫る!!by...
by
Insight Technology, Inc.
PDF
20170329_BigData基盤研究会#7
by
Kohei KaiGai
PDF
20191115-PGconf.Japan
by
Kohei KaiGai
PDF
GPGPUを用いた大規模高速グラフ処理に向けて
by
Koichi Shirahata
PPTX
Apache Drill で日本語を扱ってみよう + オープンデータ解析
by
MapR Technologies Japan
PDF
20211112_jpugcon_gpu_and_arrow
by
Kohei KaiGai
PDF
Hadoop入門
by
Preferred Networks
PPTX
押さえておきたい、PostgreSQL 13 の新機能!! (PostgreSQL Conference Japan 2020講演資料)
by
NTT DATA Technology & Innovation
PDF
汎用グラフ処理モデルGIM-Vの複数GPUによる大規模計算とデータ転送の最適化
by
Koichi Shirahata
PDF
Geotiff.jsで始めるリアルタイム演算 in foss4g japan 2020 online
by
Ryousuke Wayama
PDF
20200828_OSCKyoto_Online
by
Kohei KaiGai
PPT
国際標準規格を用いたASTER高温領域検出システムの開発
by
Naotaka YAMAMOTO CHIKASADA
PDF
20210511_PGStrom_GpuCache
by
Kohei KaiGai
PPTX
The future of Apache Hadoop YARN
by
Seiya Mizuno
PDF
20210731_OSC_Kyoto_PGStrom3.0
by
Kohei KaiGai
PDF
(JP) GPGPUがPostgreSQLを加速する
by
Kohei KaiGai
PPTX
Map server入門 - FOSS4G 2012 Hokkaido
by
Hideo Harada
PDF
Cuda
by
Shumpei Hozumi
DOC
GPGPUによるパーソナルスーパーコンピュータの可能性
by
Yusaku Watanabe
More Related Content
PDF
MemoryPlus Workshop
by
Hitoshi Sato
PDF
20181211 - PGconf.ASIA - NVMESSD&GPU for BigData
by
Kohei KaiGai
PDF
20190418_PGStrom_on_ArrowFdw
by
Kohei KaiGai
PDF
[20170922 Sapporo Tech Bar] 地図用データを高速処理!オープンソースGPUデータベースMapDってどんなもの?? by 株式会社...
by
Insight Technology, Inc.
PDF
20170310_InDatabaseAnalytics_#1
by
Kohei KaiGai
PDF
20200806_PGStrom_PostGIS_GstoreFdw
by
Kohei KaiGai
PDF
Drill超簡単チューニング
by
MapR Technologies Japan
PDF
20201113_PGconf_Japan_GPU_PostGIS
by
Kohei KaiGai
MemoryPlus Workshop
by
Hitoshi Sato
20181211 - PGconf.ASIA - NVMESSD&GPU for BigData
by
Kohei KaiGai
20190418_PGStrom_on_ArrowFdw
by
Kohei KaiGai
[20170922 Sapporo Tech Bar] 地図用データを高速処理!オープンソースGPUデータベースMapDってどんなもの?? by 株式会社...
by
Insight Technology, Inc.
20170310_InDatabaseAnalytics_#1
by
Kohei KaiGai
20200806_PGStrom_PostGIS_GstoreFdw
by
Kohei KaiGai
Drill超簡単チューニング
by
MapR Technologies Japan
20201113_PGconf_Japan_GPU_PostGIS
by
Kohei KaiGai
What's hot
PDF
20170127 JAWS HPC-UG#8
by
Kohei KaiGai
PDF
pgconfasia2016 lt ssd2gpu
by
Kohei KaiGai
PDF
Apache Drill でオープンデータを分析してみる - db tech showcase Sapporo 2015 2015/09/11
by
MapR Technologies Japan
PDF
[db tech showcase Tokyo 2017] B35: 地図用データを高速処理!オープンソースGPUデータベースMapDの魅力に迫る!!by...
by
Insight Technology, Inc.
PDF
20170329_BigData基盤研究会#7
by
Kohei KaiGai
PDF
20191115-PGconf.Japan
by
Kohei KaiGai
PDF
GPGPUを用いた大規模高速グラフ処理に向けて
by
Koichi Shirahata
PPTX
Apache Drill で日本語を扱ってみよう + オープンデータ解析
by
MapR Technologies Japan
PDF
20211112_jpugcon_gpu_and_arrow
by
Kohei KaiGai
PDF
Hadoop入門
by
Preferred Networks
PPTX
押さえておきたい、PostgreSQL 13 の新機能!! (PostgreSQL Conference Japan 2020講演資料)
by
NTT DATA Technology & Innovation
PDF
汎用グラフ処理モデルGIM-Vの複数GPUによる大規模計算とデータ転送の最適化
by
Koichi Shirahata
PDF
Geotiff.jsで始めるリアルタイム演算 in foss4g japan 2020 online
by
Ryousuke Wayama
PDF
20200828_OSCKyoto_Online
by
Kohei KaiGai
PPT
国際標準規格を用いたASTER高温領域検出システムの開発
by
Naotaka YAMAMOTO CHIKASADA
PDF
20210511_PGStrom_GpuCache
by
Kohei KaiGai
PPTX
The future of Apache Hadoop YARN
by
Seiya Mizuno
PDF
20210731_OSC_Kyoto_PGStrom3.0
by
Kohei KaiGai
PDF
(JP) GPGPUがPostgreSQLを加速する
by
Kohei KaiGai
PPTX
Map server入門 - FOSS4G 2012 Hokkaido
by
Hideo Harada
20170127 JAWS HPC-UG#8
by
Kohei KaiGai
pgconfasia2016 lt ssd2gpu
by
Kohei KaiGai
Apache Drill でオープンデータを分析してみる - db tech showcase Sapporo 2015 2015/09/11
by
MapR Technologies Japan
[db tech showcase Tokyo 2017] B35: 地図用データを高速処理!オープンソースGPUデータベースMapDの魅力に迫る!!by...
by
Insight Technology, Inc.
20170329_BigData基盤研究会#7
by
Kohei KaiGai
20191115-PGconf.Japan
by
Kohei KaiGai
GPGPUを用いた大規模高速グラフ処理に向けて
by
Koichi Shirahata
Apache Drill で日本語を扱ってみよう + オープンデータ解析
by
MapR Technologies Japan
20211112_jpugcon_gpu_and_arrow
by
Kohei KaiGai
Hadoop入門
by
Preferred Networks
押さえておきたい、PostgreSQL 13 の新機能!! (PostgreSQL Conference Japan 2020講演資料)
by
NTT DATA Technology & Innovation
汎用グラフ処理モデルGIM-Vの複数GPUによる大規模計算とデータ転送の最適化
by
Koichi Shirahata
Geotiff.jsで始めるリアルタイム演算 in foss4g japan 2020 online
by
Ryousuke Wayama
20200828_OSCKyoto_Online
by
Kohei KaiGai
国際標準規格を用いたASTER高温領域検出システムの開発
by
Naotaka YAMAMOTO CHIKASADA
20210511_PGStrom_GpuCache
by
Kohei KaiGai
The future of Apache Hadoop YARN
by
Seiya Mizuno
20210731_OSC_Kyoto_PGStrom3.0
by
Kohei KaiGai
(JP) GPGPUがPostgreSQLを加速する
by
Kohei KaiGai
Map server入門 - FOSS4G 2012 Hokkaido
by
Hideo Harada
Similar to GPUを考慮したMapReduceのタスクスケジューリング
PDF
Cuda
by
Shumpei Hozumi
DOC
GPGPUによるパーソナルスーパーコンピュータの可能性
by
Yusaku Watanabe
PDF
2012-03-08 MSS研究会
by
Kimikazu Kato
PDF
20180217 FPGA Extreme Computing #10
by
Kohei KaiGai
PPTX
GPU-FPGA協調プログラミングを実現するコンパイラの開発
by
Ryuuta Tsunashima
PPTX
2012 1203-researchers-cafe
by
Toshiya Komoda
PDF
続・PFN のオンプレML基盤の取り組み / オンプレML基盤 on Kubernetes 〜PFN、ヤフー〜 #2
by
Preferred Networks
PDF
20180920_DBTS_PGStrom_JP
by
Kohei KaiGai
PDF
2015年度GPGPU実践基礎工学 第14回 GPGPU組込開発環境
by
智啓 出川
PDF
GPGPU Education at Nagaoka University of Technology: A Trial Run
by
智啓 出川
PDF
【A-1】AIを支えるGPUコンピューティングの今
by
Developers Summit
PDF
2015年度GPGPU実践プログラミング 第6回 パフォーマンス解析ツール
by
智啓 出川
PDF
GPUとSSDがPostgreSQLを加速する~クエリ処理スループット10GB/sへの挑戦~ [DB Tech Showcase Tokyo/2017]
by
Kohei KaiGai
PDF
Hadoopのシステム設計・運用のポイント
by
Cloudera Japan
PDF
プログラムを高速化する話Ⅱ 〜GPGPU編〜
by
京大 マイコンクラブ
PDF
2015年度GPGPU実践基礎工学 第15回 GPGPU開発環境(OpenCL)
by
智啓 出川
PDF
45分で理解する 最近のスパコン事情 斉藤之雄
by
Yukio Saito
PDF
GPU-FPGA 協調計算を記述するためのプログラミング環境に関する研究(HPC169 No.10)
by
Ryuuta Tsunashima
PDF
20170421 tensor flowusergroup
by
ManaMurakami1
PDF
GPUディープラーニング最新情報
by
ReNom User Group
Cuda
by
Shumpei Hozumi
GPGPUによるパーソナルスーパーコンピュータの可能性
by
Yusaku Watanabe
2012-03-08 MSS研究会
by
Kimikazu Kato
20180217 FPGA Extreme Computing #10
by
Kohei KaiGai
GPU-FPGA協調プログラミングを実現するコンパイラの開発
by
Ryuuta Tsunashima
2012 1203-researchers-cafe
by
Toshiya Komoda
続・PFN のオンプレML基盤の取り組み / オンプレML基盤 on Kubernetes 〜PFN、ヤフー〜 #2
by
Preferred Networks
20180920_DBTS_PGStrom_JP
by
Kohei KaiGai
2015年度GPGPU実践基礎工学 第14回 GPGPU組込開発環境
by
智啓 出川
GPGPU Education at Nagaoka University of Technology: A Trial Run
by
智啓 出川
【A-1】AIを支えるGPUコンピューティングの今
by
Developers Summit
2015年度GPGPU実践プログラミング 第6回 パフォーマンス解析ツール
by
智啓 出川
GPUとSSDがPostgreSQLを加速する~クエリ処理スループット10GB/sへの挑戦~ [DB Tech Showcase Tokyo/2017]
by
Kohei KaiGai
Hadoopのシステム設計・運用のポイント
by
Cloudera Japan
プログラムを高速化する話Ⅱ 〜GPGPU編〜
by
京大 マイコンクラブ
2015年度GPGPU実践基礎工学 第15回 GPGPU開発環境(OpenCL)
by
智啓 出川
45分で理解する 最近のスパコン事情 斉藤之雄
by
Yukio Saito
GPU-FPGA 協調計算を記述するためのプログラミング環境に関する研究(HPC169 No.10)
by
Ryuuta Tsunashima
20170421 tensor flowusergroup
by
ManaMurakami1
GPUディープラーニング最新情報
by
ReNom User Group
More from Koichi Shirahata
PDF
Performance Analysis of Lattice QCD with APGAS Programming Model
by
Koichi Shirahata
PDF
Hybrid Map Task Scheduling for GPU-based Heterogeneous Clusters
by
Koichi Shirahata
PDF
A GPU Implementation of Generalized Graph Processing Algorithm GIM-V
by
Koichi Shirahata
PDF
Performance Analysis of Lattice QCD on GPUs in APGAS Programming Model
by
Koichi Shirahata
PDF
GPUアクセラレータと不揮発性メモリを考慮したI/O性能の予備評価
by
Koichi Shirahata
PDF
Out-of-core GPU Memory Management for MapReduce-based Large-scale Graph Proce...
by
Koichi Shirahata
PDF
A Scalable Implementation of a MapReduce-based Graph Processing Algorithm for...
by
Koichi Shirahata
PDF
Performance Analysis of MapReduce Implementations on High Performance Homolog...
by
Koichi Shirahata
Performance Analysis of Lattice QCD with APGAS Programming Model
by
Koichi Shirahata
Hybrid Map Task Scheduling for GPU-based Heterogeneous Clusters
by
Koichi Shirahata
A GPU Implementation of Generalized Graph Processing Algorithm GIM-V
by
Koichi Shirahata
Performance Analysis of Lattice QCD on GPUs in APGAS Programming Model
by
Koichi Shirahata
GPUアクセラレータと不揮発性メモリを考慮したI/O性能の予備評価
by
Koichi Shirahata
Out-of-core GPU Memory Management for MapReduce-based Large-scale Graph Proce...
by
Koichi Shirahata
A Scalable Implementation of a MapReduce-based Graph Processing Algorithm for...
by
Koichi Shirahata
Performance Analysis of MapReduce Implementations on High Performance Homolog...
by
Koichi Shirahata
GPUを考慮したMapReduceのタスクスケジューリング
1.
GPUを考慮したMapReduceのGPUを考慮したMapReduceのタスクスケジューリングタ ク ケジ
リ グ白幡 晃一†1 佐藤 仁†1 松岡 聡†1†2†3†1 東京工業大学†2 科学技術振興機構科学技術振興機構† 3 国立情報学研究所
2.
情報爆発時代における大規模データ処理大規模デ タ処理• 大規模データ処理–
気象、生物学、天文学、物理学など様々な科学技術計算での利用での利用• MapReduce– 大規模データ処理のためのプログラミングモデル大規模デ タ処 グラ ング デ– スケーラブルな並列データ処理• GPGPU– 汎用CPU に比べ高い性能– CUDA をはじめとする開発環境の整備→ CPU と GPU の混在したスパコン クラウドの出現→ CPU と GPU の混在したスパコン・クラウドの出現ex) TSUBAME 2.0 : NVIDIA の Fermi「Tesla M2050」 を計算ノードに3台搭載を活用した 処理の高速化GPU を活用した MapReduce処理の高速化
3.
CPU と GPUの混在環境での処理
おける問題点MapReduce処理における問題点• CPUとGPUへタスクを割り振る方法は自明ではない• CPUとGPUへタスクを割り振る方法は自明ではない– 計算資源への依存数 数 容 バ ド幅• CPUコア数、GPU台数、メモリ容量、メモリバンド幅ストレージへの I/O バンド幅などアプリケ ションへの依存– アプリケーションへの依存• GPU処理の特性長所 : ピーク性能 メモリバンド幅– 長所 : ピーク性能、メモリバンド幅– 短所 : 複雑な命令は CPU に劣る→ GPU利用による性能向上があるものの、CPU・GPU処理には向き・不向きがあるGPUとCPUのハイブリッド実行のスケジューリングを行い,リ 実行 リ グを行 ,それぞれの長所を生かす → 計算資源を有効活用
4.
目的と成果目的と成果目的• 目的– CPUとGPUの混在環境でのMapReduce処理の高速化•
成果Mapタスクのハイブリッド実行– Mapタスクのハイブリッド実行• MapReduce の OSS実装である Hadoop に実現M タスク割り振りのスケジ リング手法の提案– Mapタスク割り振りのスケジューリング手法の提案• ジョブ全体の実行時間を最小化プ– K‐meansアプリケーションによる評価• ジョブ実行時間: 複数GPUと提案スケジューリング手法により、CPUのみの場合に対し1.02‐1.93倍となる高速化
5.
発表の流れ発表の流れ究背景• 研究背景• MapReduceとGPGPUMapReduceとGPGPU•
提案手法• 設計と実装• 実験実験• 関連研究• まとめと今後の課題
6.
MapReduce と GPGPUMapReduce
と GPGPU• MapReduceMap Shuffle Reduce の 3つのフェ ズからなる– Map, Shuffle, Reduce の 3つのフェーズからなる– 様々な機械学習アルゴリズムへの適用例主な実装– 主な実装• Hadoop: MapReduce, HDFS, HBase などの OSS• Mars: GPU用のフレームワークMars: GPU用のフレ ムワ ク→ 企業・研究機関での導入事例の多い Hadoop を対象• GPGPU• GPGPU– グラフィックプロセッサをSIMD演算機として利用CPUに比べ安価で高いピ ク性能– CPUに比べ安価で高いピーク性能– 主な統合開発環境• NVIDIA: CUDA AMD: ATI Stream• NVIDIA: CUDA, AMD: ATI Stream→ CUDAを対象
7.
発表の流れ発表の流れ究背景• 研究背景• MapReduceとGPGPUMapReduceとGPGPU•
提案手法• 設計と実装• 実験実験• 関連研究• まとめと今後の課題
8.
Hadoop の構造Hadoop の構造•
マスタ・ワーカモデル• ジョブの動作• Client: ジョブの投入, JobTracker: タスクの割り振り, 投 , 振 ,TaskTracker: タスクの実行, Heartbeat による送受信Master NodeClient Node Java App JobTrackerSlave NodeSlave NodeSlave NodeTaskTaskCPU CPUTaskTrackerCPU CPUTaskTrackerCPU CPUTaskTrackerCPUCPUTaskTaskCPUCPUTaskTaskCPUCPUTaskTaskTaskTaskTask
9.
提案 : CPU と GPUの
Mapタスクのハイブリッドスケジューリングと 割り振りを自動決定• CPU と GPU への割り振りを自動決定– 実行環境、計算資源→ ジョブ実行時間を最小化– アプリケーションの特性→ ジョブ実行時間を最小化Master NodeClient Node Java App JobTrackerSlave NodeSlave NodeSlave NodeTaskTask• Hadoop からの CUDA の呼び出しCPU CPUTaskTrackerCPU CPUTaskTrackerCPU CPUTaskTracker• Hadoop からの CUDA の呼び出し• ハイブリッドスケジューリングアルゴリズムCPUCPUTaskTaskCPUCPUTaskTaskCPUCPUTaskTaskTaskTaskTask
10.
Hadoop からの CUDA
の呼び出しHadoop からの CUDA の呼び出し• 実装の違いの吸収実装の違いの吸収– Hadoop → Java実装 (ミドルウェア, アプリケーション)– CUDA → C++ によるライブラリ– CUDA → C++ によるライブラリ• 主な手法H d St i 標準入出力– Hadoop Streaming: 標準入出力– Hadoop Pipes: ソケット接続, C++ライブラリJNI JNIベ スの CUDAラ パ (JCUDA)– JNI, JNIベースの CUDAラッパー (JCUDA)→ Hadoop Pipes を対象→ Hadoop Pipes を対象• C++ で MapReduceアプリケーション, CUDAカーネル関数を記述可能• CUDAカーネルを起動可能
11.
Hadoop からの CUDA の呼び出し(cont’d)タ
実行 管• Mapタスク・実行スロットの管理– Mapタスクを CPU, GPU のどちらのスロットでpタ クを , ちら ッ実行するか?– 空きスロット (CPU GPU) の認識空きスロット (CPU, GPU) の認識• GPUへのMapタスクの競合– 1ノード上に複数GPU を搭載時に発生– Mapタスクを実行する GPUデバイスを識別するp必要有• cudaSetDevice で設定設定
12.
Mapタスクのハイブリッドスケジューリング設定• 設定– CPU nコア
と GPU m台を搭載• スケジューリング方法– ジョブ実行時間を最小化ジョブ実行時間を最小化• CPU と GPU の性能比 (加速倍率) に応じたMapタスクの割り振り– 動的なモニタリング• CPU, GPU で実行が終了した Mapタスクのプロファイル(実行時間など) を Heartbeat 毎に繰り返し取得• 加速倍率を計算ジ ブ 進捗状況 把握• ジョブの進捗状況の把握
13.
スケジュ リングアルゴリズムスケジューリングアルゴリズム• 目標標–
CPU, GPU に割り当てられた Mapタスクが共に全て終了するまでにかかる時間の最小化– CPU と GPU に割り当てる Mapタスク数を決定– CPU と GPU に割り当てる Mapタスク数を決定• 加速倍率:• スケジューリングアルゴリズム
14.
発表の流れ発表の流れ究背景• 研究背景• MapReduceとGPGPUMapReduceとGPGPU•
提案手法• 設計と実装• 実験実験• 関連研究• まとめと今後の課題
15.
Hadoop Pipes ユーザからの実行方法p p•
ユーザは map関数と reduce関数を記述 (C++ラッパーライブラリを使用)bin/hadoop pipes¥‐D hadoop.pipes.java.recordreader=true¥D hadoop pipes java recordwriter=true¥記述 (C++ラッパ ライブラリを使用)• コンパイル済のバイナリと入力・出力ファイルを指定してジョブを実行‐D hadoop.pipes.java.recordwriter=true¥‐bin cpu‐kmeans2D¥‐input input¥‐output outputUserLaunch Submit JobClient Node Master Nodeoutput outputUserJobTrackerll d kCPU AppBinaryJobClientClient Node Master NodeTaskTrackerAllocate Map or Reduce taskC++ WapperWrapperSlave NodeUse Hadoop PipesChild JVMLaunchWrapper ProcessSend and ReceiveKey‐Value pairsRunCPU AppBinaryChildTasky p
16.
Hadoop Pipes 実行フローHadoop
Pipes 実行フロ• TaskTracker が Childプロセスを起動• Child プロセスがタスクを起動• Child プロセスがタスクを起動• C++ Wrapper プロセスが C++バイナリを実行‐ ソケット接続による Key‐Value ペアの送受信ソケット接続による y アの送受信UserLaunch Submit JobClient Node Master NodeUserJobTrackerll d kCPU AppBinaryJobClientClient Node Master NodeTaskTrackerAllocate Map or Reduce taskC++ WapperWrapperSlave NodeUse Hadoop PipesChild JVMLaunchWrapper ProcessRunSend and ReceiveKey‐Value pairsCPU AppBinaryChildTasky p
17.
ハイブリッド実行の場合incl. Pipes による CUDA の呼び出しジ ブ実行時に
CPU GPUバイナリを指定• ジョブ実行時に CPU・GPUバイナリを指定• Mapタスクの識別 (CPU・GPU, GPUデバイスID)• 空きスロットの識別 (CPU・GPU, 空きGPUデバイスID)( , )User Launch Submit JobClient Node Master NodeCPU AppBinaryJobTrackerll d kGPU AppBinaryJobClientClient Node Master NodeBinaryTaskTrackerAllocate Map or Reduce taskGPU WapperWrapperSlave NodeUse Hadoop PipesChild JVMLaunchWrapper ProcessRunSend and ReceiveKey‐Value pairsGPU AppBinaryChildTasky p
18.
Mapタスクの割り振りp 割り振りTaskTracker• 空きスロット, プロファイル
(実行時間)JobTracker• プロファイルのモニタリング 空き ッ , ァイ (実行時間)の通知• タスクの割り当て要求• タスクを識別して実行ァイ タリング• スケジューリングアルゴリズムの計算(Heartbeat毎)• 各ノードへのタスクの割り振りClient Node タスクを識別して実行(CPU・GPU, GPUデバイスID の識別)各ノ ドへのタスクの割り振り(CPU・GPU, GPUデバイスID の指定)Master NodeGPU AppCPU AppBinaryJobTrackerSlave NodeSlave NodeSlave NodeGPU AppBinaryTaskTaskSlave NodeSlave NodeSlave NodeCPU CPUTaskTrackerCPU CPUTaskTrackerCPU CPUTaskTrackerGPUCPUGPUCPUTaskTaskGPUCPUGPUCPUTaskTaskGPUCPUGPUCPUTaskTaskTaskTaskTask
19.
発表の流れ発表の流れ究背景• 研究背景• MapReduceとGPGPUMapReduceとGPGPU•
提案手法• 設計と実装• 実験実験• 関連研究• まとめと今後の課題
20.
実験実験• Hadoop環境でジョブ実行時間、Mapタスク実行時間を測定CPUのみ と
CPU GPU の場合を比較– CPUのみ と CPU + GPU の場合を比較– 提案スケジューリングの適用と非適用の場合を比較• 実験環境: TSUBAME実験環境 SU– CPU 16コア + GPU 2台 / Node– Mapスロット数, Reduceスロット数: 16 スロット / Node1 64ノ ドと変化– 1~64ノードと変化– DFS は Lustre を使用 (ストライプ数: 4, チャンクサイズ: 32 MB)• I/O 性能: 32 MBのファイルに対し、Write 180MB/s, Read 610MB/s• K‐meansアプリケーション– Mapタスクを C++バイナリ、CUDAバイナリで実行入力 262 144 個の二次元座標デ タ(浮動小数点)と 128個のクラスタ– 入力 : 262,144 個の二次元座標データ(浮動小数点)と 128個のクラスタを持つファイルを 1000個連結 (20GB)• Map: 各ファイルごとに K‐means を実行• Reduce: K‐means の結果を収集
21.
ジョブ実行時間の比較ジョブ実行時間の比較• Hadoop環境でジョブ実行時間 Mapタスク実行時間を測定•
Hadoop環境でジョブ実行時間、Mapタスク実行時間を測定– CPUのみの場合とCPU+GPUの場合を比較– CPU+GPUのとき、提案アルゴリズムの適用と非適用の場合を比較• 実験環境: TSUBAME• 実験環境: TSUBAME– CPU 16コア + GPU 2台 / node• 16CPU、15CPU+1GPU、14CPU+2GPUを比較– Mapスロット : 16, Reduceスロット : 16– 1~64ノードと変化– DFSはLustreを使用(ストライプ数: 4、チャンクサイズ: 32MB)• I/O性能: 32MBのファイルに対し、Write 180MB/s, Read 610MB/s• K meansアプリケ ション• K‐meansアプリケーション– MapタスクをC++バイナリ、CUDAバイナリで実行– 262144個の二次元座標データ(浮動小数点)と128個のクラスタを持つファイルを1000個連結 (20GB)Org : Hadoopのオリジナルクラスタを持つファイルを1000個連結 (20GB)• Map: 各ファイルごとにK‐meansを実行• Reduce: K‐meansの結果を収集スケジューリングOurs : 提案スケジューリング
22.
ジョブ実行時間の比較ジョブ実行時間の比較GPU の使用による若干の性能向上有、使用 よる若干 性能向
有、しかし加速倍率が高くないため (1.18倍) CPU と同等の性能Org : HadoopのオリジナルスケジューリングOurs : 提案スケジューリング
23.
ジョブ実行時間の比較ジョブ実行時間の比較提案アルゴリズムの使用による更なる性能向上1.02倍1.93倍Org : HadoopのオリジナルスケジューリングOurs : 提案スケジューリング
24.
ジョブ実行時間の比較ジョブ実行時間の比較ド 追 性能劣ノードの追加による性能劣化→ Mapタスク実行時間の増加によるOrg : HadoopのオリジナルスケジューリングOurs : 提案スケジューリング
25.
Mapタスク実行時間の増加• ノード数に応じてMapタスク時間が増加Mapタスク実行時間の増加p– I/O性能の低下–
ジョブ実行時間の増加の一因– その他の原因として、スロット数の過剰が冗長
26.
ジョブ実行時間の比較1GPU と 2GPU18002000提案手法では、GPU台数を増やすほど、14001600より性能向上する傾向有1000120016CPU15CPU+1GPU+Ours60080014CPU+2GPU+OursOurs : 提案スケジューリング20040001 2
3 4 5 6 74 8 16 32 6421
27.
プロセス起動によるオーバーヘッド1台の計算機での実験• バイナリのみとMapタスクの実行時間を比較バイナリのみとMapタスクの実行時間を比較– バイナリ実行時間
: C++ または CUDA の Map関数– Mapタスク実行時間 : Mapタスクの割り当てから終了までpタ ク実行時間 pタ ク 割り当 ら終了ま→ 実装依存のオーバーヘッドは無視できない12.1秒 (16%)[sec]12 4秒 (44%) CPU‐Binary, GPU‐Binary : バイナリ実行時間CPU‐MapTask, GPU‐MapTask :タスク実行時間12.4秒 (44%)Mapタスク実行時間
28.
発表の流れ発表の流れ究背景• 研究背景• MapReduceとGPGPUMapReduceとGPGPU•
提案手法• 設計と実装• 実験実験• 関連研究• まとめと今後の課題
29.
関連研究関連研究• 学習メカニズムによるCPU・GPUタスクスケジューリング[Chi‐Keung Lu et al. `09]• チャンクサイズの変化によるCPU・GPUハイブリッド実行の高速化の高速化[T. Ravi Vifnesh
et al. `10]• 不均質な環境でのMapReduceのタスクスケジューリング不均質な環境でのMapReduceのタスクスケジュ リング[Matei et al. `08]• 既存の不均質環境下のタスクスケジューリング手法[ d ` ][ Suda `06 ]→ 計算資源・アプリの特性に応じた CPU・GPU同時実行による大規模データ処理に特化‐ 資源競合 (メモリ、ストレージ) を考慮オンラインで自動スケジ リング‐ オンラインで自動スケジューリング
30.
まとめと今後の課題今後 課題• まとめタ
クを から呼び出– Mapタスクを GPU から呼び出し• MapReduce実装の Hadoop環境で実現CPU と GPU の混在環境を考慮したタスクスケジ リング– CPU と GPU の混在環境を考慮したタスクスケジューリング手法の提案K meansアプリケーションでの実験– K‐meansアプリケーションでの実験• ジョブ実行時間: 2GPUと提案手法により 1.02‐1.93倍の高速化• Hadoopの実装に依存するオーバーヘッドは無視できないHadoopの実装に依存するオ バ ッドは無視できない• 今後の課題– スケジューリングモデルの改良– スケジュ リングモデルの改良• メモリ・ディスクアクセス等を考慮• GPU上でのタスク実行時における CPUとの資源の競合によるタ ク実行時 おける 資源 競合 よるオーバーヘッドを考慮
31.
ご清聴ありがとうございました清聴ありがとう ざ ました
33.
実験結果実験結果•Mapタスク実行時間倍 高速‐ GPUではCPUに対し1.0‐1.25倍となる高速化(プロセス起動時間等を含む)•ジョブ実行時間•ジョブ実行時間‐2GPUの使用と提案スケジューリングアルゴリズムの適用により1.02‐1.93倍の高速化‐14CPU+2GPUでは15CPU+1GPUに対し1.02‐1.29倍の高速化
(複数GPUによる効果)Ours : 提案スケジューリングOrg : Hadoopのオリジナルスケジューリング‐ 提案アルゴリズムの使用により14CPU+2GPUの場合に平均1.28倍、15CPU+1GPUの場合に平均1.08倍の高速化• GPUの使用 提案タスクスケジューリングの適用にg pのオリジナル ケジ リング• GPUの使用、提案タスクスケジュ リングの適用による性能向上を確認
35.
Mapタスク実行時間の増加• ノードを増やすにつれてMapタスク時間が増加Mapタスク実行時間の増加ノ ドを増やすにつれてMapタスク時間が増加–
I/Oの増加が原因か
36.
プロセス起動等のオーバーヘッドプロセス起動等のオーバーヘッド• ローカル1ノードでの実験 (7CPU+1GPU)–
バイナリ実行時間とMapタスク実行時間を比較• バイナリ実行時間 : C++またはCUDAのMap関数の実行時間• Mapタスク実行時間 : Mapタスクが割り当てされてからp p終了するまでの時間– オーバーヘッド• CPU上では約16%• GPU上では約44% バイナリ実行時間とMapTask実行時間の比較→ 実装依存のオーバーヘッドは無視できないCPU GPU[sec]バイナリ実行時間64.93~65.68 秒 11.66~16.86 秒Mapタスク 72.13~78.14 秒 24.04~37.06 秒pタ ク実行時間秒 秒
37.
GPUを呼び出す手法の比較を す 法
較• Hadoop StreamingHadoopとユーザプログラムの間にUnix標準ストリームを使用– Hadoopとユーザプログラムの間にUnix標準ストリームを使用– 標準入出力の解析が必要 ו Hadoop Pipesp p– ソケット接続を確立し、スレーブノードとの通信のチャネルを生成するC++インターフェース– C++とCUDAの親和性 ○C++とCUDAの親和性 ○• JNI(Java Native Interface)– 関数呼び出しのオーバーヘッド大、実行環境依存のライブラリが必要 ×が必要 ו jCUDA(Java for CUDA)– 現状では明示的なメモリアラインメント不可 非同期の命令が現状では明示的なメモリアラインメント不可、非同期の命令がメモリ破損を引き起こす可能性有 ×→ C++との親和性を考慮しHadoop Pipesを使用→ C++との親和性を考慮しHadoop Pipesを使用
38.
GPUを呼び出す手法の比較を す 法
較• Hadoop Streaming– HadoopとユーザプログラムのインターフェースにUnix標準ストリームを使用p ザ グラ インタ 標準 リ を使用– 任意の言語でユーザプログラムを記述可能– 標準入出力の解析が必要• Hadoop Pipesp p– C++ インターフェース– ソケット接続を確立し、スレーブノードとの通信のチャネルを生成• JNI(Java Native Interface)– JVMで実行されるJavaコードが他のプログラミング言語で記述されたネイティブコードを利用するためのAPI– JVMで動作させるには不利なプログラムをネイティブコードに置き換えて高速化することが可能化することが可能– 関数呼び出しのオーバーヘッド大、実行環境依存のライブラリが必要• jCUDA(Java for CUDA)GPU上のメモリの割り当て 転送のためのメソッドを提供– GPU上のメモリの割り当て・転送のためのメソッドを提供– Jcublas, Jcufft, Jcudppなどのライブラリと相互運用が可能– 現状では明示的なメモリアラインメント不可、非同期の命令がメモリ破損を引き起こす可能性有き起こす可能性有→ 今回はHadoop Pipesを使用
39.
Streaming PipesTaskTrackerTaskTrackerChildTaskTrackerChildChildTaskTaskChild JVMChild JVMC++ Wapper
LibraryStreamingProcessC++ Map or ReduceC Wapper Library
40.
K‐meansにおけるMapタスクの加速倍率
41.
PCAでのジョブ時間PCAでのジョブ時間
42.
Launch Submit JobUserJobTrackerGPU AppBinaryJobClientClient Node Master NodeTaskTrackerAllocate Map or Reduce taskC++ WapperSlave NodeUse Hadoop
PipesTaskTrackerChild JVMLaunchRunWrapper ProcessSend and ReceiveKey‐value pairsGPU AppBinaryChildTaskChild JVMKey‐value pairs
Download
[8]
ページ先頭
©2009-2025
Movatter.jp