Skip to main content
QUICK REVIEW

[論文レビュー] GPU Based Parallel Ising Computing for Combinatorial Optimization Problems in VLSI Physical Design

Chase Cook, Hengyang Zhao|arXiv (Cornell University)|Jul 27, 2018
Quantum Computing Algorithms and Architecture参考文献 24被引用数 11
ひとこと要約

本稿では、細粒度並列処理とGPUスレッドスケジューリングの自然なランダム性を活用することで、VLSI物理設計における組合せ最適化問題、特にマックスカット問題を解くためのGPUアクセラレート型イジング計算フレームワークを提案する。この手法は、大規模問題においてCPU実装比で2000倍以上の高速化を達成し、複雑なVLSI設計ワークロードに対して効率的で柔軟かつスケーラブルな解決策を提供する。

ABSTRACT

In VLSI physical design, many algorithms require the solution of difficult combinatorial optimization problems such as max/min-cut, max-flow problems etc. Due to the vast number of elements typically found in this problem domain, these problems are computationally intractable leading to the use of approximate solutions. In this work, we explore the Ising spin glass model as a solution methodology for hard combinatorial optimization problems using the general purpose GPU (GPGPU). The Ising model is a mathematical model of ferromagnetism in statistical mechanics. Ising computing finds a minimum energy state for the Ising model which essentially corresponds to the expected optimal solution of the original problem. Many combinatorial optimization problems can be mapped into the Ising model. In our work, we focus on the max-cut problem as it is relevant to many VLSI physical design problems. Our method is inspired by the observation that Ising annealing process is very amenable to fine-grain massive parallel GPU computing. We will illustrate how the natural randomness of GPU thread scheduling can be exploited during the annealing process to create random update patterns and allow better GPU resource utilization. Furthermore, the proposed GPU-based Ising computing can handle any general Ising graph with arbitrary connections, which was shown to be difficult for existing FPGA and other hardware based implementation methods. Numerical results show that the proposed GPU Ising max-cut solver can deliver more than 2000X speedup over the CPU version of the algorithm on some large examples, which shows huge performance improvement for addressing many hard optimization algorithms for practical VLSI physical design.

研究の動機と目的

  • VLSI物理設計におけるハードな組合せ最適化問題(例:マックスカット、グラフ分割)の計算非効率性に対処する。
  • 固定トポロジ、スケーラビリティの問題、複雑な埋め込み要件に苦しむ既存のハードウェアベースのイジングソルバ(例:FPGA、ASIC)の制限を克服する。
  • 一般用途GPU(GPGPU)の巨大並列性と柔軟性を活用して、スケーラブルでトポロジに依存しないイジング計算フレームワークを実装する。
  • GPUスレッドスケジューリングに内在するランダム性を活用し、シミュレーテッドアニーリングにおける収束性とリソース利用効率を向上させる。
  • トポロジ固有のハードウェアや埋め込み技術を必要とせず、任意の接続を持つ任意のイジンググラフを効率的に解けるようにする。

提案手法

  • 問題変数を二値状態{+1, -1}を持つスピンとして符号化することで、組合せ最適化問題(特にマックスカット問題)をイジングスピンガラスモデルにマッピングする。
  • 局所エネルギー変化に基づいてスピンを反復的に更新するシミュレーテッドアニーリングアルゴリズムをGPU上で実装し、システム全体のエネルギーを最小化することを目的とする。
  • GPUの細粒度並列性を活用して、数千のスレッドで同時にすべてのスピンを更新し、大規模な並列処理を実現する。
  • GPUスレッドスケジューリングの自然なランダム性を、シミュレーテッドアニーリングにおける熱雑音の模倣に用い、収束性とリソース利用効率を向上させる。
  • 固定2次元格子埋め込みやグラフマイナー変換を回避するため、任意のイジンググラフトポロジをサポートするメモリアクセスパターンを設計する。
  • GPUアーキテクチャにおける遅延低減とスループット最大化を目的として、メモリコalescingとカーネル起動設定を最適化する。

実験結果

リサーチクエスチョン

  • RQ1GPUベースのイジング計算は、大規模なVLSI物理設計問題においてCPUベースのソルバーよりも顕著な高速化を達成できるか?
  • RQ2GPUスレッドスケジューリングに内在するランダム性は、イジングシミュレーテッドアニーリングの収束性とパフォーマンスにどのように影響するか?
  • RQ3GPUベースのイジングソルバは、トポロジ固有のハードウェアや埋め込み技術を必要とせずに、任意のイジンググラフトポロジを処理できるか?
  • RQ4グラフ構造(例:正則トーラス対非正則非トーラス)は、GPUベースのイジングソルバのパフォーマンスとスケーラビリティにどのように影響するか?
  • RQ5さまざまな問題サイズにおいてGPUリソースをどれだけ効果的に活用できるか。また、パフォーマンスのボトルネックはどこに現れるか?

主な発見

  • GPUベースのイジングマックスカットソルバは、大規模なVLSI設計問題においてCPUバージョン比で2000倍を超えるピークスピードアップを達成した。
  • 問題サイズに応じて効果的にスケーリングされ、特に正則トーラス構造のグラフでは、より大きなグラフに対して速度向上が著しく継続的である。
  • 正則グラフ構造による優れた負荷分散のおかげで、6000~40000本以上のエッジを持つグラフにおいて、計算時間はほぼ一定を維持した。
  • 非正則非トーラスグラフではパフォーマンスのばらつきが見られるが、問題サイズの増大に伴い一貫したスピードアップの増加を示した。
  • GPUスレッドスケジューリングの自然なランダム性がリソース利用効率を向上させ、明示的な乱数生成器を必要とせずに収束性を改善した。
  • 本手法は、複雑なグラフマイナー埋め込みやトポロジ固有のハードウェア設計を必要とせず、任意のイジンググラフトポロジを効果的に処理できた。

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

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

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

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