TOP特許意匠商標
特許ウォッチ Twitter
10個以上の画像は省略されています。
公開番号2024127077
公報種別公開特許公報(A)
公開日2024-09-20
出願番号2023035942
出願日2023-03-08
発明の名称演算処理装置及び演算処理方法
出願人富士通株式会社
代理人弁理士法人酒井国際特許事務所
主分類G06F 17/16 20060101AFI20240912BHJP(計算;計数)
要約【課題】標準固有値問題の計算効率を向上させる演算処理装置及び演算処理方法を提供する。
【解決手段】計算実行部は、所定の対称行列に対する標準固有値問題の計算を分割して生成されたそれぞれが異なる計算を行う複数の計算単位について、各計算単位の計算がそれぞれで実行される複数のタスクのうちの第1タスクと第2タスクとの間にいずれか一方の結果に基づいて他方が計算を行うという依存関係が存在しない場合、第1タスクと第2タスクとを非同期で計算し、第1タスクと第2タスクとに依存関係が存在する場合、第1タスクと第2タスクとを逐次計算する。出力部は、計算実行部により計算された所定の対称行列に対する標準固有値問題の計算結果を出力する。
【選択図】図5
特許請求の範囲【請求項1】
所定の対称行列に対する標準固有値問題の計算を分割して生成されたそれぞれが異なる計算を行う複数の計算単位について、各前記計算単位がそれぞれで実行される複数のタスクのうちの第1タスクと第2タスクとの間にいずれか一方の結果に基づいて他方が計算を行うという依存関係が存在しない場合、前記第1タスクと前記第2タスクとを非同期で計算し、前記第1タスクと前記第2タスクとに前記依存関係が存在する場合、前記第1タスクと前記第2タスクとを逐次計算する計算実行部と、
前記計算実行部により計算された前記所定の対称行列に対する標準固有値問題の計算結果を出力する出力部と
を備えたことを特徴とする演算処理装置。
続きを表示(約 1,000 文字)【請求項2】
前記計算実行部は、前記第1タスク及び前記第2タスクのそれぞれについて、実行する前記計算単位の計算量が所定値以上の場合、前記計算単位の計算を複数スレッドで実行することを特徴とする請求項1に記載の演算処理装置。
【請求項3】
前記複数のタスク間の計算の結果の入出力関係を示す依存関係グラフを生成する依存関係グラフ生成部をさらに備え、
前記計算実行部は、前記依存関係グラフ生成部により生成された前記依存関係グラフを基に、前記第1タスクと前記第2タスクとの間の依存関係の存否を判定する依存関係判定部とを備える
ことを特徴とする請求項1に記載の演算処理装置。
【請求項4】
前記計算実行部は、前記所定の対称行列に対する標準固有値問題の計算に含まれる対称行列の三重対角化の計算を複数に分割した計算単位を含む前記複数の計算単位について、前記第1タスクと前記第2タスクとの間の依存関係の存否に基づいて計算を実行することを特徴とする請求項1に記載の演算処理装置。
【請求項5】
前記計算実行部は、前記所定の対称行列に対する標準固有値問題の計算に含まれる対称行列の三重対角化から得られる三重対角行列に対する固有値及び固有ベクトルの計算を複数に分割した計算単位を含む前記複数の計算単位について、前記第1タスクと前記第2タスクとの間の依存関係の存否に基づいて計算を実行することを特徴とする請求項1に記載の演算処理装置。
【請求項6】
前記計算実行部は、前記三重対角行列の固有ベクトルの逆変換で使用する三角行列の計算を行う計算単位を含む前記複数の計算単位について、前記第1タスクと前記第2タスクとの間の依存関係の存否に基づいて計算を実行することを特徴とする請求項5に記載の演算処理装置。
【請求項7】
所定の対称行列に対する標準固有値問題の計算を分割して生成されたそれぞれが異なる計算を行う複数の計算単位について、
各前記計算単位がそれぞれで実行される複数のタスクのうちの第1タスクと第2タスクとの間にいずれか一方の結果に基づいて他方が計算を行うという依存関係が存在しない場合、前記第1タスクと前記第2タスクとを非同期で計算し、
前記第1タスクと前記第2タスクとに前記依存関係が存在する場合、前記第1タスクと前記第2タスクとを逐次計算する
処理をプロセッサに実行させることを特徴とする演算処理方法。

発明の詳細な説明【技術分野】
【0001】
本発明は、演算処理装置及び演算処理方法に関する。
続きを表示(約 2,400 文字)【背景技術】
【0002】
行列の標準固有値問題は、特定の正方行列に対して、Aν=λνと表される固有値(λ)と固有ベクトル(ν)とをすべて求める問題である。特定の正方行列がn×nの大きさの場合、固有値(λ)と固有ベクトル(ν)のペアが一般にn個存在し、標準固有値問題を解くことでそれらを求めることができる。標準固有値問題は、科学技術分野において幅広く用いられている。特に対称行列の標準固有値問題は、新薬設計やビッグデータ解析などで用いられ、現代社会において重要なテーマである。
【0003】
対称行列の標準固有値問題を計算機で求める場合、一般には次のように行列を変換しながら計算が進められる。第1に、計算機は、対称行列の三重対角化を行う。次に、計算機は、三重対角行列に対する固有値及び固有ベクトルの計算を行う。最後に、計算機は、三重対角行列の固有ベクトルの逆変換を行い、元の対称行列の固有値及び固有ベクトルを算出する。
【0004】
ここで、三重対角行列は、対角成分と対角成分の上下隣り合う要素のみ非ゼロである行列である。また、三重対角化では、行列の相似変換により対称行列が三重対角行列へ変換される。この変換に用いられる行列として、ハウスホルダー変換を用いたハウスホルダー行列が知られている。
【0005】
三重対角化では、一般には以下の3つの手法のいずれかが用いられる。第1の手法は、QR法と呼ばれる手法であり、直交行列による相似変換を用いて標準固有値問題を解くことが行われる。QR法は、固有値・固有ベクトルを安定して求めやすいという特徴を有する。第2の手法は、MRRR(Multiple Relatively Robust Representations)法と呼ばれる手法である。MRRR法は、精度良く標準固有値問題を解き易いという特徴を有する。第3の手法は、分割統治法と呼ばれる手法である。分割統治法は、行列を小さな行列に分割し、固有値及び固有ベクトルを計算する方法である。分割統治法は、高い並列度で計算し易いという特徴を有する。近年の計算機は、大規模化に伴い並列度が非常に高い。そこで、高い並列度により標準固有値問題を解くために、分割統治法が用いられることが多い。
【0006】
標準固有値問題を始めとする様々な数学的問題では、行列演算などが多用される。そのため、線形代数の基本的な演算をまとめたBasic Linear Algebra Subprograms(BLAS)や標準固有値問題計算関数及び特異値問題計算関数をまとめたLinear Algebra Package(LAPACK)等がオープンソースとして公開されている。一般的には、BLASやLAPACKを組み合わせて対称行列の標準固有値問題を計算することができる。BLASやLAPACKは頻繁に用いられるため、各ベンダーからチューニングされた様々なライブラリが提供されている。
【0007】
ここで、近年のプロセッサの傾向として、より多くのコアを搭載することで計算性能の向上が図られている。例えば、富士通が開発したスーパーコンピュータ京とスーパーコンピュータ富岳向けのプロセッサのコア数は8から48に増加している。その他、Nvidia社が開発しているフラグシップ向けGPUのコア数は、順に、5120(V100)、6912(A100)、16896(H100)と増加している。このようなプロセッサを用いる場合、計算性能を高めるためには、すべてのコアを使い切るような高い並列度を持ったアルゴリズムを用いることが好ましい。
【0008】
倍精度の対称行列の標準固有値問題をLAPACKにより分割統治法で解く場合、倍精度の対称行列の標準固有値問題の専用関数(DSYEVDと呼ばれる関数:Double to Symmetric Eigenvalue using Divide and conquer algorithm)が用いられる。DSYEVDでは、主にDSYTRD、DSTEDC及びDORMTRと呼ばれる関数で処理が構成される。DSYTRD(Double to Symmetric tridiagonal form reduce)は、対称行列の三重対角化を行う関数である。DSTEDC(Double to Symmetric tridiagonal Eigenvalue using Divide and conquer algorithm)は、三重対角行列の標準固有値問題を分割統治法で解く関数である。DORMTR(Double Overwrite Real M-by-N matrix with Trans)は、三重対角行列の固有ベクトルを行列積により逆変換を行う関数である。
【0009】
ここで、各関数の特徴を挙げる。DSYTRDは、キャッシュヒットし難い傾向があり、計算が進むにつれて並列度が減少する。また、DSTEDCは、高い並列度と高い計算効率で計算することが可能である。また、DORMTRは、高い計算効率で計算することが可能である。そのため、一般に対称行列の標準固有値問題では、DSYTRDが全体の計算時間のうち多くの時間を占める。このようなそれぞれの関数の特徴から、DSYTRDにおけるパフォーマンスの問題を改善することで全体のパフォーマンスを向上することができると考えられる。
【0010】
なお、並列処理の技術として、与えられた計算モデルを分割して、非相互依存の複数のサブ計算を構築し、複数のプロセッサがサブ計算をそれぞれ並列で処理する技術が提案されている。
【先行技術文献】
【特許文献】
(【0011】以降は省略されています)

この特許をJ-PlatPatで参照する

関連特許

富士通株式会社
プロセッサ
今日
富士通株式会社
アバター制御
14日前
富士通株式会社
基板装置及び電子機器
1日前
富士通株式会社
半導体装置及び実装方法
21日前
富士通株式会社
ヘテロ積層デバイスの製造方法
23日前
富士通株式会社
演算処理装置及び演算処理方法
今日
富士通株式会社
受信器および適応等化処理方法
11日前
富士通株式会社
半導体装置の製造方法及び基板
7日前
富士通株式会社
自動探索的データ解析(EDA)
16日前
富士通株式会社
分散学習プログラム、方法、及び装置
23日前
富士通株式会社
施策決定方法及び施策決定プログラム
17日前
富士通株式会社
深層信念ネットワークのトレーニング
11日前
富士通株式会社
説明可能な人工知能のためのグラフ縮小
7日前
富士通株式会社
データ制御方法およびデータ制御プログラム
8日前
富士通株式会社
演算処理装置および演算処理装置の制御方法
8日前
富士通株式会社
乗降者カウントプログラムおよび情報処理装置
11日前
富士通株式会社
表示プログラム、表示方法および情報処理装置
7日前
富士通株式会社
探索プログラム、探索方法および情報処理装置
8日前
富士通株式会社
施策評価支援方法及び施策評価支援プログラム
15日前
富士通株式会社
プログラム、情報処理方法および情報処理装置
1日前
富士通株式会社
演算プログラム、演算方法、および情報処理装置
11日前
富士通株式会社
演算プログラム、演算方法、および情報処理装置
11日前
富士通株式会社
グラフェン素子およびグラフェン素子の製造方法
8日前
富士通株式会社
管理プログラム、管理方法、および情報処理装置
今日
富士通株式会社
表示プログラム,情報処理装置および表示制御方法
8日前
富士通株式会社
プログラム、データ処理方法およびデータ処理装置
8日前
富士通株式会社
検索処理プログラム、検索処理方法及び検索処理装置
22日前
富士通株式会社
進捗管理装置、進捗管理方法及び進捗管理プログラム
今日
富士通株式会社
マイクロプロセッサ及びマイクロプロセッサの処理方法
17日前
富士通株式会社
文字認識プログラム、文字認識方法および文字認識装置
21日前
富士通株式会社
情報処理プログラム,情報処理方法および情報処理装置
8日前
富士通株式会社
通信制御プログラム、通信制御方法および通信制御装置
22日前
富士通株式会社
領域特定プログラム、領域特定装置、及び領域特定方法
7日前
富士通株式会社
情報処理方法、情報処理装置および情報処理プログラム
1日前
富士通株式会社
強化学習プログラム、情報処理装置および強化学習方法
21日前
富士通株式会社
対象物判定プログラム、情報処理装置及び対象物判定方法
24日前
続きを見る