固有値計算は,工学の様々な分野で必要とされている. 対称行列 A の固有値を求める場合,通常は行列 A を直交行列 P により, 対称三重対角行列 T = Pt A P に変換し,T の固有値を求める. そのため対称三重対角行列の固有値を求める方法が重要となる.
QR 法は全ての固有値を求める手法であり,三重対角行列に対して, 直交行列による相似変換を繰り返し,対角行列に近づけていく. 一部の固有値のみを求めることは困難だが,収束証明があり, 長い使用実績があるため,固有値計算法として定評がある. 一方,その計算過程は逐次的であり,並列化が困難である. そのため,本研究では QR 法の並列化を目的としている.
従来法の問題点と新しいマルチシフト QR 法数値計算法として実際に用いられる QR 法は,Implicit QR 法であり, 収束を速める原点シフトが暗に取り入れられている. よく用いられるのは Wilkinson シフトであり,T の右下 2 × 2 の小行列の固 有値のうち, 一番右下の対角成分に近い固有値を用いる. これを拡張し,右下 m × m の小行列の m 個の固有値をシフトとして用いるの がマルチシフト QR 法である. それぞれのシフトに伴う計算部分を並列化することで,パイプライン式の並列化が可 能となる. 一方,すべてのシフトによる計算が完了しなければ,次のステップで用いる m 個の シフトを求めることができない. そのためプロセッサのアイドルが発生し,並列化を妨げるのが,従来のマルチシフト の問題点である.
これに対し,パイプライン処理の効率を高める deferred シフトが提案されている. この方法は従来のマルチシフトに比べ,プロセッサの遊びを減らすことができるが, 収束性が低下する.
本研究ではパイプライン処理の効率化を目指し,新しいマルチシフト QR 法を提案す る. アルゴリズムの詳細および数値実験結果はポスターで述べる.