Your SlideShare is downloading. ×
SIGMOD'10勉強会 -Session 8-
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×

Introducing the official SlideShare app

Stunning, full-screen experience for iPhone and Android

Text the download link to your phone

Standard text messaging rates apply

SIGMOD'10勉強会 -Session 8-

747
views

Published on


0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
747
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
2
Comments
0
Likes
1
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. 【SIGMOD2010勉強会】 Session 8: Leveraging Hardware for Data management 担当: 山室健(NTT) Session 8: Leveraging Hardware for Data1 management 担当:山室健(NTT)
  • 2. Research Session 8:Leveraging Hardware for Data management 論文中の図参照番号  [1] FAST: Fast Architecture Sensitive Tree Search on Modern CPUs and GPUs  Changkyu Kim, Jatin Chhugani, Nadathur Satish, Eric Sedlar, Anthony D. Nguyen, Tim Kaldewey, Victor W. Lee, Scott A. Brandt, Pradeep Dubey  [2] Fast In-Memory Sort on Modern CPUs and GPUs: A Case for Bandwidth- Oblivious SIMD Sort  Nadathur Satish, Changkyu Kim, Jatin Chhugani, Anthony D. Nguyen, Victor W. Lee, Daehyun Kim, Pradeep Dubey  [3] Page-Differential Logging: An Efficient and DBMS-independent Approach for Storing Data into Flash Memory  Yi-Reun Kim, Kyu-Young Whang, Il-Yeol Song  [4] Similarity Search and Locality Sensitive Hashing using Ternary Content Addressable Memories  Rajendra Shinde, Ashish Goel, Pankaj Gupta, Debojyoti Dutta 2 Session 8: Leveraging Hardware for Data management 担当:山室健(NTT)
  • 3. FAST: Fast Architecture Sensitive Tree Search on ModernCPUs and GPUs 研究概要  Tree Searchは、メモリアクセスで大きくレイテンシの影響を受ける割に、CPU内の演算処 理(主に比較処理)は相対的に少ない  メモリアクセスのレイテンシは、CPUキャッシュの約100倍程度  キャッシュヒット率を考慮したTreeの構造化と、ベクトル命令を利用した計算密度の向上 によるTree-Searchの高速化を実現 Hierarchical Blocking  3種類のBlockでTree内のノードを配置  SIMD Blocking: ベクトル命令で同時に実行する比較キーのBlock  Cache line Blocking: データキャッシュを考慮したBlock  Page Blocking: アドレスキャッシュ(TLB)を考慮したBlock Throughputの最大化分析  単一クエリを処理する際に発生 レイテンシを分析し、それを 隠ぺいするために必要な同時 クエリ数を推定 [1]より引用 3 Session 8: Leveraging Hardware for Data management 担当:山室健(NTT)
  • 4. FAST: Fast Architecture Sensitive Tree Search on ModernCPUs and GPUs 評価実験  Hierarchical BlockingをCPUとGPU向けに実装し評価  データ数が大きくなるとCPU向けの実装では、メモリバンド幅が(CPU処理よりも先に)ボ トルネックになる結果  GPUがCPUと比較し、メモリバンド幅が大きいため、データ数が多いところではGPUが有 利 今後のアルゴリズムの方向性  今後CPUコア当たりが利用可能なメモリバンド幅は減少傾向[27]  処理あたりに必要なデータ量は極力小さく設計しなければ、今後のコア数増大に伴う性 能向上の恩恵を得られない 圧縮評価  ノード内の比較キーをδ 符号を 利用して圧縮することで15-20 %の実行時間の短縮効果 [1]より引用 4 Session 8: Leveraging Hardware for Data management 担当:山室健(NTT)
  • 5. Fast In-Memory Sort on Modern CPUs and GPUs:A Case for Bandwidth-Oblivious SIMD Sort 研究概要  データベース操作で一般的なオンメモリSort処理の、メモリバンド幅を考慮しながらアー キテクチャ志向の最適化を用いた高速化  比較を行わないRadix-Sortと、比較を行うMerge-Sortの2つを評価 Radix-Sort  値を桁ごとに分割し、各桁毎にソートを行う手法  各桁のソートにはヒストグラムを用いる、Counting-Sort [10]を適用  ヒストグラムの作成には、prefix-sumを利用した並列リダクションを適用  2パタンのアーキテクチャ志向の実装  Buffer-based Scheme: ヒストグラムの書き出しをバッファリングすることで軽減する手法  Local Sort-based Scheme: ベクトル命令を利用した並列リダクションの高速化 [6,22,24] Merge-Sort  ソート済みのサブリストを連結しながら最終的に1つの ソート済みリストを作成  ベクトル命令を利用したbitonic mergenetwork アルゴリズム[8]を適用した並列Merge-Sortを実装 5 Session 8: Leveraging Hardware for Data management 担当:山室健(NTT) [2]より引用
  • 6. Fast In-Memory Sort on Modern CPUs and GPUs:A Case for Bandwidth-Oblivious SIMD Sort 評価実験  前述のRadix-SortとMerge-SortをCPUとGPU向けに実装し評価  CPUのRadix-SortはBuffer-based Schemeを、GPUはLocal Sort-based Schemeを適用(結果が最も良かったもの を採用)  現状のCPU/GPU性能では、全てのパタンでCPUボトルネック  データサイズが大きくなった場合、各アルゴリズムの計算量の差が結果に表れている  Radix-SortはO(N)、Merge-SortはO(NlogN)  ただし、計算量当たりの必要データ量は断然Radix-Sortが大きい 今後のアルゴリズムの方向性  今後CPUコア当たりが利用可能なメモリバンド幅は減少傾向[21]にあるため、Merge-SortがRadix- Sortと比較し有利  ベクトル命令長が増えることも予測され、その場合もMerge-Sortが有利 [2]より引用 [2]より引用 6 Session 8: Leveraging Hardware for Data management 担当:山室健(NTT)
  • 7. Page-Differential Logging: An Efficient and DBMS-independentApproach for Storing Data into Flash Memory 研究概要  2次記憶装置として広く使われているFlash Memory上のデータ読み書きに関して、従来手法の相反す る問題を解決するためのデータ管理方式の研究 2種類の従来手法と、それらの問題  Page-based  データに変更が有った場合、ページ(書込みの最小単位)全体をFlash Memory上に書き込む方式  読み込みは速いが、書込みは変更されていないデータ部分まで書き込む必要有  Log-based  変更箇所の差分情報のみを書き込む方式  書込みは速いが、読み込みはベースとなるページと、差分情報を 全て読み込む必要有 Page-Differential Logging  writing difference only  差分のみを書込み  a-most-one-age writing  複数回更新が有った場合、差分情報を1つに まとめて書込み  at-most-two-page reading  読み込みはベースページと、差分情報が含まれるページの 2ページとなるように制御 [3]より引用 7 Session 8: Leveraging Hardware for Data management 担当:山室健(NTT)
  • 8. Page-Differential Logging: An Efficient and DBMS-independentApproach for Storing Data into Flash Memory 評価実験  提案手法(PDL)と、その他3つの従来手法のI/O timeを比較  Out-place update(OPU) scheme[9]と、In-place update(IPU) schemeの2つのPage- basedアプロー チ  in-page logging method[13]のlog-basedアプローチ  概ね予想通りの結果  Page-baseアプローチ(OPU, and IPU)は読み込みが速く、書込みが遅い  Log-basedアプローチは、Page-baseの逆の結果  それらに対し、提案手法はそれらの中間となるような結果に  TPC-C(業務系のOLTPを想定)を使った総合的なI/O timeも、提案手法が最も速い [3]より引用 [3]より引用 8 Session 8: Leveraging Hardware for Data management 担当:山室健(NTT)
  • 9. Similarity Search and Locality Sensitive Hashingusing Ternary Content Addressable Memories 研究概要  データマイニングや機会学習に用いられるNearest neighbor Search[29]、特にユークリッド空間上の Locality Sensitive Hash(LSH)[4]に着眼し、TCAMを利用して空間コストと探索コストを改善する研究  TCAM [31]  L3スイッチでよく用いられる連想メモリ、ビットベクトル<0,1,*>を入力するとそれに対応したアドレス、もしくはデータ を高速に探索可能なデバイス TLSH  LSHは距離の近い値を同じBucketに高確率で割り当てるハッシュ関数  TLSHはTCAMを利用し、LSHを改善したハッシュ関数  隣接する超平面を<*>で表現することで’fuzz’な領域を作成し、隣接値を同じbucketに割り当てる確 率を高くすることが可能 (l, c)-ANNS: (l, c)-Approximate Nearest Neighbor Search  l以下の距離の最近傍値がある場合に距離が lc以下の値を返す問題  TLSHを利用することで次元数が大きくなった場合 にでも、空間コストをデータ量に対してほぼ線形、ま た探索コストをO(1)で実現可能 9 Session 8: Leveraging Hardware for Data management 担当:山室健(NTT) [4]より引用
  • 10. Similarity Search and Locality Sensitive Hashingusing Ternary Content Addressable Memories 評価実験対象  64次元ユークリッド空間上の1M個のWikipediaデータ  (1, 2)-NNS  288-bit TCAM 評価結果  δ の値を上げた場合に、False positive値は上昇し、逆にFalse negative値が減少するた め、ある閾値以下にFalse negativeを抑えながらFalse positiveを最大化するδ の値が存 在(δ ~2.6)  緑色の線はデータセットのみから推定した予測値  その他、TCAMのbit幅を変化させた場合のFalse positiveとF値の評価も論文上では掲載 [4]より引用 10 Session 8: Leveraging Hardware for Data management 担当:山室健(NTT)