Skip to main content
QUICK REVIEW

[論文レビュー] Oct-tree Method on GPU

Nobukazu Nakasato|ArXiv.org|Sep 2, 2009
Computational Physics and Python Applications参考文献 17被引用数 5
ひとこと要約

本論文は、宇宙論的N体シミュレーションのための高効率で反復的なGPU実装であるオクティーブツリー法を提示しており、41.6ドル/Gflopsのコストで21.8 Gflopsの持続性能を達成した。これは前回の記録比2.5倍の性能向上である。再帰的木の走査を反復的なGPUカーネルに変換し、RV770 GPUのストリームコアを活用することで、N > 10,000粒子のスケールの天体物理学的シミュレーションにおいて、ブルートフォース法やFMMベースの手法を上回る性能を発揮した。

ABSTRACT

The kd-tree is a fundamental tool in computer science. Among others, an application of the kd-tree search (oct-tree method) to fast evaluation of particle interactions and neighbor search is highly important since computational complexity of these problems are reduced from O(N^2) with a brute force method to O(N log N) with the tree method where N is a number of particles. In this paper, we present a parallel implementation of the tree method running on a graphic processor unit (GPU). We successfully run a simulation of structure formation in the universe very efficiently. On our system, which costs roughly $900, the run with N ~ 2.87x10^6 particles took 5.79 hours and executed 1.2x10^13 force evaluations in total. We obtained the sustained computing speed of 21.8 Gflops and the cost per Gflops of 41.6/Gflops that is two and half times better than the previous record in 2006.

研究の動機と目的

  • 宇宙論的N体シミュレーションのための高性能でGPUアクセラレートされたオクティーブツリー法の開発。
  • GPUの並列処理を活用し、GPU実行に最適化された木の走査を用いて、Gflopあたりの計算コストを低減すること。
  • 大規模Nシミュレーションにおいて、従来のブルートフォース法およびFMMベースのGPU手法よりも性能とコスト効率で優れるようにすること。
  • 短距離力(例:SPHにおける力)を含めるためにオクティーブツリー枠組みを拡張し、スケーラブルで現実的な天体物理学的シミュレーションを可能にすること。

提案手法

  • GPUスレッドの分岐を改善し、メモリのコalescingを向上させるために、再帰的オクティーブツリー走査を反復的カーネルに変換した。
  • RV770 GPUの800個のストリームコアを用いて単精度浮動小数点演算で力の計算を実装し、各160個のスレッドプロセッサ(TP)が1サイクルあたり最大5回の演算を処理した。
  • 共有メモリとテクスチャキャッシュを用いた階層的メモリモデルを採用し、木の走査および力の評価中のデータアクセスを最適化した。
  • 精度と計算コストのバランスを取るために、適応的開口角θ = 0.6を用いた粒子分布を採用した。
  • 時間積分による力の相互作用率の統合を用いて、総FLOPsを推定するための力の相互作用カウントを統合した。
  • タイムステップ間で空間データ構造を再利用することで、メモリアクセスパターンを最適化し、重複する木の構築を最小限に抑えた。

実験結果

リサーチクエスチョン

  • RQ1反復的オクティーブツリー走査をGPUアーキテクチャに効率的にマッピングすることで、N体シミュレーションにおける高い性能を達成できるか?
  • RQ2ブルートフォース法およびFMMベースの手法と比較して、GPUアクセラレートされたオクティーブツリー法の性能とコスト効率はどの程度か?
  • RQ3N > 10^6粒子の宇宙論的シミュレーションにおいて、オクティーブツリー法は持続FLOPSおよびGflopあたりのコストの観点からどの程度スケーリングするか?
  • RQ4天体物理学的シミュレーションで一般的なクラスタ化粒子分布において、GPU最適化されたオクティーブツリー法はFMMをGPU上で上回れるか?

主な発見

  • GPU最適化されたオクティーブツリー法は、RV770 GPU上で1.2×10^13回の力の評価を実行し、21.8 Gflopsの持続性能を達成した。
  • Gflopあたりのコストは41.6ドルであり、前回の最高記録(105ドル/Gflop)と比較して2.5倍の改善を達成した。
  • N > 10,000粒子の場合、O(N log N)の複雑さのおかげで、ブルートフォース法に比べて顕著に優れた性能を発揮した。
  • N = 1,048,576粒子のテストでは70%のキャッシュヒット率を達成し、効率的なメモリアクセスを示した。
  • 同じ粒子数と分布において、最近のFMM実装(NVIDIA G80)でさえも、オクティーブツリー法に劣った。これはFMMのO(N)複雑さにもかかわらずである。
  • 本実装は、滑らかさ粒子動力学(SPH)におけるような短距離力の追加に対しても拡張可能であり、より現実的な天体物理学的シミュレーションを可能にした。

より良い研究を、今すぐ始めましょう

論文の読解から最終レビューまで、研究時間を劇的に削減しましょう。

クレジットカード登録不要

このレビューはAIが作成し、人間の編集者が確認しました。