分散メモリ型並列機における並列固有値ソルバ
対称密行列を対象とし、二分法+逆反復法や直交化処理を含む並列実装を研究。修士論文では大規模固有値問題ソルバの分散メモリ並列機上での実装を体系化しました。
片桐孝洋・金田康正「並列固有値ソルバーの実現とその性能」(1997)、「並列固有値ソルバーの実現とその並列性の改良」(JSPP'98)。
Parallel Numerical Linear Algebra × Auto-Tuning × Agentic AI
Householder法の超並列化から、ABCLib、自動チューニング、通信回避、そしてAIエージェントへ
このページは1999年に開設した「片桐孝洋の並列固有値ソルバのページ」を、原内容を保存しながら2026年の研究状況に合わせて再構成したものです。密行列・疎行列の固有値計算を、アルゴリズムだけでなく、分散メモリ並列化、通信削減、性能可搬性、精度保証、ソフトウェア自動チューニング、機械学習、AIエージェントという観点から整理します。
Overview
実対称・Hermitian密行列の直接法では、一般に三重対角化、三重対角固有値問題、固有ベクトルの逆変換という複数段階を通ります。各段階には複数のアルゴリズム、データ分散、通信方式、CPU/GPUカーネル、精度、並列度の選択肢があり、固有値計算は自動チューニングとAIエージェントの非常に自然な対象です。
Research Evolution
研究の中心課題は一貫して「その時代の計算機で、数値的信頼性を保ちながら固有値計算を速くするには何を自動化すべきか」です。
対称密行列を対象とし、二分法+逆反復法や直交化処理を含む並列実装を研究。修士論文では大規模固有値問題ソルバの分散メモリ並列機上での実装を体系化しました。
片桐孝洋・金田康正「並列固有値ソルバーの実現とその性能」(1997)、「並列固有値ソルバーの実現とその並列性の改良」(JSPP'98)。
HITACHI SR2201の1024 PEを用い、密実対称固有値問題に対するHouseholder三重対角化を通信量の観点から再設計。(Cyclic, Cyclic)分散と通信複雑度を抑える方式により、1024 PEでScaLAPACKに対して約2~5倍の高速化を報告しました。
ABCLib(Automatically Blocking-and-Communication adjustment Library)を提案し、密実対称固有値ソルバABCLib_DRSSEDへ発展。ブロック長、ループ展開、通信実装、データ分散などを性能パラメータとして扱い、FIBERの最適化タイミングと連携しました。
Multi-section with Multiple Eigenvalues(MME)法を提案し、実行時に実装パラメータを選択。アルゴリズムの中に自動チューニングを組み込む方向へ研究を拡張しました。
Householderベクトルの保持と逆変換を見直し、process-grid-free方式やcommunication splitting multicasting、非ブロッキングMPI、ハイブリッドMPIを利用して超並列環境での通信コストを削減しました。
T. Katagiri and S. Itoh, “A Massively Parallel Dense Symmetric Eigensolver with Communication Splitting Multicasting Algorithm,” VECPAR 2010. / Communication Avoiding and Reducing Algorithm for Symmetric Eigenproblem for Very Small Matrices.
JHPCN共同研究 “Developing Accuracy Assured High Performance Numerical Libraries for Eigenproblems” で、高精度・精度保証アルゴリズム、高性能実装、自動チューニングを統合する研究を推進しました。
LAPACK固有値計算ルーチンのテスト系列を対象に、故障を早期に検出できるテストを機械学習で予測し、テスト実行順序を最適化する研究へ展開。性能だけでなく、検証・品質保証工程もAIの対象になっています。
生成AI・AIエージェントと自動チューニングを統合し、問題分析、アルゴリズム選択、コード生成、実機ベンチマーク、数値検証、再最適化、知識蓄積を閉ループ化する研究テーマへ接続します。
Householder Parallelization
密実対称固有値問題では、Householder変換による三重対角化が大きな計算コストを占めます。演算量だけでなく、ベクトル・行列データの通信、Householderベクトルの保持、逆変換時の通信がスケーラビリティを左右します。
2001年のParallel Computing論文では、従来の対称性利用方式だけに拘らず、MPP環境で通信複雑度を抑えるHouseholder三重対角化方式を採用しました。
多数PE環境でロードバランスと通信を両立するデータ分散を利用。1024 PE SR2201上でScaLAPACKとの比較評価を行いました。
2010年前後には、Householderベクトルの重複保持によるメモリ増加と通信削減のトレードオフを明示的に扱い、communication splitting multicastingへ展開しました。
ABCLib & Auto-Tuning
ABCLibは Automatically Blocking-and-Communication adjustment Library の略で、並列数値計算ライブラリ自身がブロッキング、通信、実装方式を計算機環境に合わせて調整する構想です。固有値計算パッケージABCLib_DRSSEDは、この考え方を実際の並列固有値ソルバに組み込みました。
実対称密行列固有値問題を対象とする並列ソルバ。Before Execute-time Optimization(BEO)、データ分散のロードバランシング、通信・計算パラメータの適応を組み込みました。
Parallel Computing論文 →ブロック長、loop unrolling、アルゴリズム選択などの自動チューニング知識をディレクティブとして記述する言語。数値計算専門家の知識をソフトウェアへ埋め込む仕組みでした。
Parallel Computing論文 →Install-time / Before Execute-time / Run-time の複数タイミングで最適化を実行する枠組み。現在のAIエージェントで言えば、事前学習・起動時適応・実行中適応を役割分担する設計に近い発想です。
自動チューニングソフトウェア工学 →Modern Eigensolver Landscape
1999年版で中心だったScaLAPACKは現在も基準となるライブラリですが、現代のHPCではGPU、2-stage reduction、タイルアルゴリズム、異種計算、組込みautotuningが重要になっています。疎行列側ではKrylov法を中心に、大規模分散・GPU対応が進んでいます。
| ライブラリ | 主対象 | 現在の特徴 | 自動化との接点 |
|---|---|---|---|
| ScaLAPACK | 分散メモリ密行列 | 対称/Hermitian・非対称固有値問題、D&C、MRRR等 | 基準実装・vendor最適化・process grid選択 |
| ELPA | 大規模対称/Hermitian密行列 | 1-stage/2-stage、NVIDIA/AMD/Intel GPU、MPI/OpenMP | ライブラリ自身がautotuning機構を備える |
| SLATE | Exascale向け分散密行列 | MPI/OpenMP + CUDA/HIPによるGPU加速、ScaLAPACK機能を現代化 | タイル・デバイス配置・通信/計算重畳の探索 |
| SLEPc | 大規模疎行列・構造化固有値問題 | PETSc上のMPI並列、CUDA/HIP GPU、標準/一般化/非線形固有値問題等 | 反復法・前処理・spectral transformationの選択 |
Agentic Eigensolver Engineering
次の研究段階では、単一の性能パラメータを探索するだけでなく、「問題の性質を理解し、アルゴリズムを選び、コードを生成し、実機で試し、数値的正しさまで検証し、知識として残す」一連の工程をAIエージェントで閉ループ化します。
Selected Publications
Historical Archive
以下は元ページの技術内容を、表現とHTMLだけ整理して保存したものです。当時のリンクには現在利用できないものもあります。
Arnoldi法:大規模疎非対称固有値問題に対する代表的Krylov部分空間法。現在はSLEPc等の並列ライブラリで、shift-and-invertや各種spectral transformationと組み合わせて利用される。
Related Pages
固有値計算を含む数値ソフトウェアを、性能可搬性の観点から体系化する研究概念。
PAE.html →仕様設計、プログラミング、最適化、知識探索という開発サイクルからAuto-Tuningを捉える。
AutoSE.html →LLM、マルチエージェント、実機性能フィードバック、自律研究を含む現在の研究テーマ。
genai-hpc.html →