JPS60169975A - 高速lu分解器 - Google Patents
高速lu分解器Info
- Publication number
- JPS60169975A JPS60169975A JP2501784A JP2501784A JPS60169975A JP S60169975 A JPS60169975 A JP S60169975A JP 2501784 A JP2501784 A JP 2501784A JP 2501784 A JP2501784 A JP 2501784A JP S60169975 A JPS60169975 A JP S60169975A
- Authority
- JP
- Japan
- Prior art keywords
- memory
- matrix
- calculation
- row
- triangular part
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/10—Complex mathematical operations
- G06F17/11—Complex mathematical operations for solving equations, e.g. nonlinear equations, general mathematical optimization problems
- G06F17/12—Simultaneous equations, e.g. systems of linear equations
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Computational Mathematics (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Theoretical Computer Science (AREA)
- Operations Research (AREA)
- Databases & Information Systems (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Algebra (AREA)
- Complex Calculations (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
〔発明の利用分野〕
本発明は・一般疎行列のLU分解に係シ、特に電力系統
の潮流計算、水道・ガス等の管網計算・回路解析、構造
解析などで発生する連立1次方程式の解に好適な2高速
LU分解器に関する。
の潮流計算、水道・ガス等の管網計算・回路解析、構造
解析などで発生する連立1次方程式の解に好適な2高速
LU分解器に関する。
ここで、上記一般疎行列とは「要素の大部分が0であり
、かつ非0要素の位置に規則性のない行列」を定義され
る。
、かつ非0要素の位置に規則性のない行列」を定義され
る。
LU分解の並列計算方式および装置としては、下記(1
)、(2)などがある。これらはいづれも・バンド対角
構造を持つ行列にのみ有効で・一般疎行列に適用しよう
とすると必要な演算器数が増大し、また、個々の演算器
の稼動率が著しく低下するという欠点があった。前処理
でバンド対角化しておく方法も考えられるが、〔発明の
利用分解〕で述べたような対象ではバンド幅を十分に狭
くすることが不可能なため実用性に乏しい。
)、(2)などがある。これらはいづれも・バンド対角
構造を持つ行列にのみ有効で・一般疎行列に適用しよう
とすると必要な演算器数が増大し、また、個々の演算器
の稼動率が著しく低下するという欠点があった。前処理
でバンド対角化しておく方法も考えられるが、〔発明の
利用分解〕で述べたような対象ではバンド幅を十分に狭
くすることが不可能なため実用性に乏しい。
(IJ )l、’l’、 l(ung : ’l’he
3tructVre of parallelAlg
orithm、Aduavces in Compnt
er 、yoi。
3tructVre of parallelAlg
orithm、Aduavces in Compnt
er 、yoi。
i 91 pp、 65−112 Academic
press 、Newyork (1980) (2)金田二BCプロセッサアレイと高並列マトリクス
計算・情報処理学会論文誌、 VOl、 24゜NO,
2(1983) 〔発明の目的〕 本発明の目的は、一般疎行列を係数とする連立−次方程
式のLU分解を高速に実施する・並列演算装置を提供す
ることにある。
press 、Newyork (1980) (2)金田二BCプロセッサアレイと高並列マトリクス
計算・情報処理学会論文誌、 VOl、 24゜NO,
2(1983) 〔発明の目的〕 本発明の目的は、一般疎行列を係数とする連立−次方程
式のLU分解を高速に実施する・並列演算装置を提供す
ることにある。
初めにLU分解の概要について述べる0次のような連立
−次方程式を考えるO AX”b (1) ここに、A:nXn行列・x、b:n次元ベクトルであ
るOXをめるために・まず人を下三角行列りと上三角行
列Uの積に分解する。
−次方程式を考えるO AX”b (1) ここに、A:nXn行列・x、b:n次元ベクトルであ
るOXをめるために・まず人を下三角行列りと上三角行
列Uの積に分解する。
A = L −U (2)
その後・
1、 y = b (3)
なる三角方程式を前進代入により解き・さらに、U X
−)’ (4) なる三角方程式を後退代入によシ解けば・Xがまる。(
2)、 (a+、 (4)式の計算において・(2)式
は・0(n8)の手間を要し・0(n”)の手間t−要
する(3)式・(4)式の解に比べ・一般に計算量はは
るかに多くなる。なお本発明は、(3)式、(41式の
解に関する部分は含まない。
−)’ (4) なる三角方程式を後退代入によシ解けば・Xがまる。(
2)、 (a+、 (4)式の計算において・(2)式
は・0(n8)の手間を要し・0(n”)の手間t−要
する(3)式・(4)式の解に比べ・一般に計算量はは
るかに多くなる。なお本発明は、(3)式、(41式の
解に関する部分は含まない。
LU分解のアルゴリズムは以下の通りであるOA、L、
Uの(i、j )要素をそれぞれatj、utjIAi
jとする。
Uの(i、j )要素をそれぞれatj、utjIAi
jとする。
5tep1;に−1とする。
5tep 2 :全てのjに対し
5tep 3 : i )k、j )kなる(i、j)
に対し・a ij −a ij −tik ukJ (
7)step 4 : k=に+1とし、 k−nテあ
れば終る。
に対し・a ij −a ij −tik ukJ (
7)step 4 : k=に+1とし、 k−nテあ
れば終る。
k(nであれば5tep 2へ。
行列人がスパース(疎)の場合、人の全ての要素を記憶
し、全ての要素に対して(5)7 <’I)式の計算を
実行するのは極めて効率が悪い。汎用計算機のプログラ
ムでは、非0要素のみ記憶し、(5)〜(7)式の計算
も非0要素に関してのみ行うように工夫が凝らされてい
る0並列化を図る際も、非0要素のみを記憶し、非0要
素に対してのみ計算を行えるような・記憶装置および演
算装置の構成を工夫する必要がある。
し、全ての要素に対して(5)7 <’I)式の計算を
実行するのは極めて効率が悪い。汎用計算機のプログラ
ムでは、非0要素のみ記憶し、(5)〜(7)式の計算
も非0要素に関してのみ行うように工夫が凝らされてい
る0並列化を図る際も、非0要素のみを記憶し、非0要
素に対してのみ計算を行えるような・記憶装置および演
算装置の構成を工夫する必要がある。
スパースな係数行列の例を第1図に示す◎この例は簡単
なもので非0要素の割合はかなり多いが・実際の大規模
な問題では、充てん率(非0要素の割合)に、1チ以下
になる場合が多いことに注意しておく@この行列の上三
角部分と下三角部分を・以下のような異った形式で記憶
する。上三角部分については行に着目し、第1行の非0
要素列番号全それぞれ・後数個の異ったメモリバンクの
アドレスiに格納する。また、要素値を記憶する別のメ
モリを用意し、これも列番号メモリと同じようにバンク
に分割し、列番号メモリのバンクとの間で1対1の対応
がとれるようにしておく。要素値aijは・i行の非0
列番号jが格納されたバンクに対応する要素1直メモリ
バンクのアドレスivc格納される。
なもので非0要素の割合はかなり多いが・実際の大規模
な問題では、充てん率(非0要素の割合)に、1チ以下
になる場合が多いことに注意しておく@この行列の上三
角部分と下三角部分を・以下のような異った形式で記憶
する。上三角部分については行に着目し、第1行の非0
要素列番号全それぞれ・後数個の異ったメモリバンクの
アドレスiに格納する。また、要素値を記憶する別のメ
モリを用意し、これも列番号メモリと同じようにバンク
に分割し、列番号メモリのバンクとの間で1対1の対応
がとれるようにしておく。要素値aijは・i行の非0
列番号jが格納されたバンクに対応する要素1直メモリ
バンクのアドレスivc格納される。
第1図の例で・第1行の非0要素列番号は1゜4.6.
9であり、要素値はa11+ a五4+ ”16+ a
19である。これらはそれぞれ、第2図(a)K示すよ
うに1列番号メモリ4.要素値メモリ5のアドレスlに
格納される。図において、40〜43.50〜53は、
それぞれメモリ4.5のバンクを示している。
9であり、要素値はa11+ a五4+ ”16+ a
19である。これらはそれぞれ、第2図(a)K示すよ
うに1列番号メモリ4.要素値メモリ5のアドレスlに
格納される。図において、40〜43.50〜53は、
それぞれメモリ4.5のバンクを示している。
下三角部分については列に着目し、第1列の非0要素行
番号を・行番号メモリの異ったバンクに格納する。要素
値メモリは上三角部分の場合と同様にバンクに分割し、
行番号メモリのバンクとの間で対応をとる。第1図の例
では、第1列の非0要素行番号はl、2,5.6であシ
・要素値は”11+ ”21+ all* aGlであ
る。これらはそれぞれ・第2図の)に示すように行番号
メモリ6・要素値メモリ7のアドレス1に記憶される。
番号を・行番号メモリの異ったバンクに格納する。要素
値メモリは上三角部分の場合と同様にバンクに分割し、
行番号メモリのバンクとの間で対応をとる。第1図の例
では、第1列の非0要素行番号はl、2,5.6であシ
・要素値は”11+ ”21+ all* aGlであ
る。これらはそれぞれ・第2図の)に示すように行番号
メモリ6・要素値メモリ7のアドレス1に記憶される。
なお、第2図(a)、 (b)において、Nは非0要素
が存在しないことを示している。
が存在しないことを示している。
本記憶方式の特徴は以下の2点である。
(1) ピボット(5tep 1〜4におけるk)行お
よびピボット列の要素を逆サーチなしに並列に読み出す
ことができる。
よびピボット列の要素を逆サーチなしに並列に読み出す
ことができる。
(2) (7)式の計算を、同一行あるいは同一列に対
し並列に実行する際・メモリアクセス競合が発生しない
。
し並列に実行する際・メモリアクセス競合が発生しない
。
演算装置の基本構成を第3図に示す。比較、ラッチ機能
を持つセルを2次元状に配列したサーチセルアレイ8と
・積和機能を持つセルを1次元状に配列した積和セルア
レイ9を第3図に示すように組合わせる。メモリについ
ては、下三角部分の計算を行う場合と下三角部分の計算
を行う場合で結合の仕方が異る。第3図は下三角部分を
計算する場合を示しており・下三角部分の列番号メモリ
4をサーチセル8に・下三角部分の要素値メモリ5を積
和セル9に接続している。なお、メモリ4゜5には・計
算開始時点では行列Aの下三角部分の非0要素位置、要
素値が格納されているが・計算終了後は、行列Uの非0
要素位置、非O要素値が格納される0このため2行列A
では0要素であっても行列Uで非0となるものに関して
は(fillinの発生と呼ぶ)、事前に調ベアドレス
を確保しておくこととする〇 演算は以下のように行われる。ピボット列の非0要素行
番号’I+’2* 13m・・・がlサイクルに1つづ
つアドレスとしてメモリ4に入力され・メモリ4から出
力された当該性の非0列番号111゜h2.・・・、h
sがサーチセルアレイ8に並列に入力される。最上段の
サーチセルFi5当該列番号群と・右方入力線80から
ブロードキャストされるピボット行のfl1%1番目の
非0列番号j1を比較する。
を持つセルを2次元状に配列したサーチセルアレイ8と
・積和機能を持つセルを1次元状に配列した積和セルア
レイ9を第3図に示すように組合わせる。メモリについ
ては、下三角部分の計算を行う場合と下三角部分の計算
を行う場合で結合の仕方が異る。第3図は下三角部分を
計算する場合を示しており・下三角部分の列番号メモリ
4をサーチセル8に・下三角部分の要素値メモリ5を積
和セル9に接続している。なお、メモリ4゜5には・計
算開始時点では行列Aの下三角部分の非0要素位置、要
素値が格納されているが・計算終了後は、行列Uの非0
要素位置、非O要素値が格納される0このため2行列A
では0要素であっても行列Uで非0となるものに関して
は(fillinの発生と呼ぶ)、事前に調ベアドレス
を確保しておくこととする〇 演算は以下のように行われる。ピボット列の非0要素行
番号’I+’2* 13m・・・がlサイクルに1つづ
つアドレスとしてメモリ4に入力され・メモリ4から出
力された当該性の非0列番号111゜h2.・・・、h
sがサーチセルアレイ8に並列に入力される。最上段の
サーチセルFi5当該列番号群と・右方入力線80から
ブロードキャストされるピボット行のfl1%1番目の
非0列番号j1を比較する。
一致した場合は、左方入力線84からブロードキャスト
されている要素値ukj+ をラッチする。ラッチされ
た要素値は・ピボット行の第1番目の非0要素値である
((5)式参照)0 次のサイクルでは・前サイクルで最上段に入力された列
番号はそのまま、第2段目のセルに入力される。最上段
で要素値がラッチされた場合は。
されている要素値ukj+ をラッチする。ラッチされ
た要素値は・ピボット行の第1番目の非0要素値である
((5)式参照)0 次のサイクルでは・前サイクルで最上段に入力された列
番号はそのまま、第2段目のセルに入力される。最上段
で要素値がラッチされた場合は。
要素値も第2段目のセルに入力される。i2段目のセル
は、右方入力線81.左方入力線85からの入力値を用
い、ピボット行の第2番目の非0要素j2に対し、最上
段のセルが行ったのと同様の処理をする。このサイクル
では、最上段のセルは、メモリ4から入力されるピボッ
ト列の第2番目の非0要素i2が指定する行の、非0要
素番号に対し前サイクルと同様の処理を行っている。こ
のように、サーチセルアレイ8では・縦方向については
・ピボット列の第i五番目、第12番目、第13番目・
・・の非0要素に対しパイプライン的に処理を実行し、
横方向に見れば全セルが並列に・ピボット行の同一の非
0要素に関する処理を実行することになる。この結果・
サーチセルの最下段からは・毎サイクルごとに、 uk
kl、 Llkk21 ・・・、 ukkl を同時に
取り出すことができる。ただし、h+j、。
は、右方入力線81.左方入力線85からの入力値を用
い、ピボット行の第2番目の非0要素j2に対し、最上
段のセルが行ったのと同様の処理をする。このサイクル
では、最上段のセルは、メモリ4から入力されるピボッ
ト列の第2番目の非0要素i2が指定する行の、非0要
素番号に対し前サイクルと同様の処理を行っている。こ
のように、サーチセルアレイ8では・縦方向については
・ピボット列の第i五番目、第12番目、第13番目・
・・の非0要素に対しパイプライン的に処理を実行し、
横方向に見れば全セルが並列に・ピボット行の同一の非
0要素に関する処理を実行することになる。この結果・
サーチセルの最下段からは・毎サイクルごとに、 uk
kl、 Llkk21 ・・・、 ukkl を同時に
取り出すことができる。ただし、h+j、。
J2+・・・、Jsのとき−ukk=0としている。こ
れらの値は、同時に積和セルアレイ9に入力される。
れらの値は、同時に積和セルアレイ9に入力される。
これと同期してセルアレイ9には、左方入力線94から
tikがブロードキャストされる・またメモリ5のアド
レスとしてiを与えることにエーリ。
tikがブロードキャストされる・またメモリ5のアド
レスとしてiを与えることにエーリ。
同時K a iJ 、 a iJ −、a ik8を読
み込むことができる。斤レイ9は を並列に実行し結果をメモリ5の各バンクに並列に書き
込む。
み込むことができる。斤レイ9は を並列に実行し結果をメモリ5の各バンクに並列に書き
込む。
下三角部分に関する計算では、用3図においてメモリ4
の代りにメモリ6を、メモリ5の代りにメモリ7を接続
する0計算のプロセスは・行ト列の関係が入れ代ること
を除けば下三角部分と同様であるので説明は省略する。
の代りにメモリ6を、メモリ5の代りにメモリ7を接続
する0計算のプロセスは・行ト列の関係が入れ代ること
を除けば下三角部分と同様であるので説明は省略する。
以上の処理により(7)式の計算が終了した後・ビボツ
)f更新し280〜87.94のブロードキャストライ
ンのデータも合わせて更新する。84〜87のラインに
設定する要素値に関しては、下三角部分の計算の場合、
除算を必要とすること((6)式参照〕に注意しておく
。この除算”も・アレイ9に除算機能を持たせておけば
並列に実行可能である。
)f更新し280〜87.94のブロードキャストライ
ンのデータも合わせて更新する。84〜87のラインに
設定する要素値に関しては、下三角部分の計算の場合、
除算を必要とすること((6)式参照〕に注意しておく
。この除算”も・アレイ9に除算機能を持たせておけば
並列に実行可能である。
以下1本発明の実施例を・第4図により説明する。第4
図において、実線は単一のデータ線、帯状の線は並列の
データ線・破線は制御信号を表わすものとする。
図において、実線は単一のデータ線、帯状の線は並列の
データ線・破線は制御信号を表わすものとする。
制御装置100は・クロック信号を出力し全装置の同M
をとるとともに・デコーダ130にスイッチ制御信号を
送信する。制御信号は130でデコードされ、スイッチ
120〜123に送られる。
をとるとともに・デコーダ130にスイッチ制御信号を
送信する。制御信号は130でデコードされ、スイッチ
120〜123に送られる。
110〜113はそれぞれ、ピボット行の非0列番号(
あるいはピボット列の非0行番号)、ピボット行の非0
要素値(ある匹はピボット列の非0要素値)・ピボット
列の非(l素値(ピボット行の非0要素値)、ピボット
列の非0行番号(ピボット行の非0列番号)を格納する
レジスタである。
あるいはピボット列の非0行番号)、ピボット行の非0
要素値(ある匹はピボット列の非0要素値)・ピボット
列の非(l素値(ピボット行の非0要素値)、ピボット
列の非0行番号(ピボット行の非0列番号)を格納する
レジスタである。
以下でスイッチ制御を中心に動作説明を行う。
(1)U要素(上玉角部分〕計算時
(a) レジスタへのデータ格納
(1)スイッチ122は、制御装置100とU要素の非
0列番号メモリ4を接続し・スイッチ120は4とレジ
スタ110を接続する。
0列番号メモリ4を接続し・スイッチ120は4とレジ
スタ110を接続する。
100からピボット値が4に入力され、ピボット行の非
0列番号が110IC格納される。
0列番号が110IC格納される。
これと同時に、スイッチ123が100とU要素の要素
値メモリ5を接続し・スイッチ121が5とレジスタ1
llft接続する。5にピボット値が入力され、ピボッ
ト行の非0要素1直が111に格納される。
値メモリ5を接続し・スイッチ121が5とレジスタ1
llft接続する。5にピボット値が入力され、ピボッ
ト行の非0要素1直が111に格納される。
(11)スイッチ122は100とL要素(上玉角部分
)の非0行番号メモリ6を接続し、スイッチ120は6
とレジスタ113を接続する。100からピボット1直
が6FC入力され・ピボット列の非0行番号がレジスタ
113に格納される。これと同時に、スイッチ123が
100とL要素の要素値メモリ7t−接続し・スイッチ
121が7とレジスタ112を接続する。7にピボット
値が入力され、ピボット列の非0要素値がレジスタ11
2に格納される。
)の非0行番号メモリ6を接続し、スイッチ120は6
とレジスタ113を接続する。100からピボット1直
が6FC入力され・ピボット列の非0行番号がレジスタ
113に格納される。これと同時に、スイッチ123が
100とL要素の要素値メモリ7t−接続し・スイッチ
121が7とレジスタ112を接続する。7にピボット
値が入力され、ピボット列の非0要素値がレジスタ11
2に格納される。
(b) 演算実行
(1) スイッチ122は100と4f7c、、cイン
チ120は4とサーチセルアレイ8を接続する。スイッ
チ123は100と5を、スイッチ121は5と積和セ
ルアレイ9を接続する。
チ120は4とサーチセルアレイ8を接続する。スイッ
チ123は100と5を、スイッチ121は5と積和セ
ルアレイ9を接続する。
(it)100はレジスタ113から、毎サイクルに1
つづつ行番号を取出し4に入力する。
つづつ行番号を取出し4に入力する。
4からは、毎サイクルにS個(メモリバンク数)づつ列
番号が取出され9に入力される。
番号が取出され9に入力される。
8は・当該入力データと・ito、111からのブロー
ドキャストデータに基づき、サーチ演算を実行する。9
は・5および8から淑り込んだ要素値と・112からブ
ロードキャストされた要素値に基づいて積和演算を実行
し、結果を5に書き込む。112はシフトレジスタの機
能を持ち、ブロードキャストデータを毎サイクルごと更
新する。
ドキャストデータに基づき、サーチ演算を実行する。9
は・5および8から淑り込んだ要素値と・112からブ
ロードキャストされた要素値に基づいて積和演算を実行
し、結果を5に書き込む。112はシフトレジスタの機
能を持ち、ブロードキャストデータを毎サイクルごと更
新する。
(2)L要素計算時
メモリ4と6.5と7の関係が入れ代るようにスイッチ
制御が行われることを除き・(1)と同様の動作を行う
。ただし・(IJ(a)(1)に相当する部分で、(6
)式の演算を行うため・以下の処理を挿入する。5と1
12と接続し、ピボット行の第1要素値(対角成分)を
レジスタ112に格納する。次に7と9を接続する。9
(除算機能も持つものとする)は112からブロードキ
ャストされたデータで・7からの入力データを除し・結
果1klllに格納すると同時に・7に書き込むO クロックは、側5図に示す工うな2相クロツクを用いる
。アドレス信号はψ1の立上りで100から出力される
0サーチセルは、ψ2の立上りのタイミング201〜2
02で入力ラッチし、203〜2050区間で演算を実
行する。
制御が行われることを除き・(1)と同様の動作を行う
。ただし・(IJ(a)(1)に相当する部分で、(6
)式の演算を行うため・以下の処理を挿入する。5と1
12と接続し、ピボット行の第1要素値(対角成分)を
レジスタ112に格納する。次に7と9を接続する。9
(除算機能も持つものとする)は112からブロードキ
ャストされたデータで・7からの入力データを除し・結
果1klllに格納すると同時に・7に書き込むO クロックは、側5図に示す工うな2相クロツクを用いる
。アドレス信号はψ1の立上りで100から出力される
0サーチセルは、ψ2の立上りのタイミング201〜2
02で入力ラッチし、203〜2050区間で演算を実
行する。
積和セルは、ψ2の立上りのタイミング206〜208
で入力ラッチし・212〜214の区間で演算を実行す
る。ψ2の立下りのタイミング209〜211ではメモ
リ5あるいは7へのリード信号がライト信号に変更され
、5あるいは7への書き込みが行われる。
で入力ラッチし・212〜214の区間で演算を実行す
る。ψ2の立下りのタイミング209〜211ではメモ
リ5あるいは7へのリード信号がライト信号に変更され
、5あるいは7への書き込みが行われる。
第6.第7図にサーチセル・積和セルの内部構成例を示
す。
す。
H,T、 Kma>提案のシストリックアレイでは・n
xn行列のLU分解を3nサイクルで実行可能である。
xn行列のLU分解を3nサイクルで実行可能である。
ただしこれは、マトリクスのバンド幅の2乗に等しい数
の演算セルを利用した場合の話であり、nが108〜1
04の一般疎行列、縁付きバンド対角行列等に対しては
セル数が膨大となり現実的でなくなる。
の演算セルを利用した場合の話であり、nが108〜1
04の一般疎行列、縁付きバンド対角行列等に対しては
セル数が膨大となり現実的でなくなる。
これに対し本発明は・一般疎行列・縁付きバンド対角行
列等のLU分解を現実的な規模のノ・−ドウエアで高速
に実施しうるものである。1行の非0要素数がCである
nxn行列に対し、2cnサイクルでLU分解を行う。
列等のLU分解を現実的な規模のノ・−ドウエアで高速
に実施しうるものである。1行の非0要素数がCである
nxn行列に対し、2cnサイクルでLU分解を行う。
このとき必要な演算セルはサーチセルC!個、積和セル
C個である〇サイクルタイム200r18を仮定すれば
、C=io、n−1ooooO問題に対し。
C個である〇サイクルタイム200r18を仮定すれば
、C=io、n−1ooooO問題に対し。
2 x 10x10000x200xl O−’ =4
xlO−” (sec)の時間でLU分解可能である。
xlO−” (sec)の時間でLU分解可能である。
第1図は簡単な疎行列の例、第2図は第1図の行列に対
するメモリの構成例・第3図は並列計算方式の説明図、
第4図は並列計算装置の実施例、第5図はタイミング説
明画・第6図はサーチセルの内部構成図・第7図は積和
セルの内部構成図である。 4・・・上三角部分非0要素の列番号メモリ・40〜4
3・・・メモリ4のバンク、5・・・下三角部分の非0
要素1iM、50〜53・・・メモリ5のバンク、6・
・・上玉角部分の非O要素の行番号メモリ、60〜63
・・・メモリ6のバンク、7・・・上玉角部分の非0要
素1直、70〜73・・・メモリ7のバンク、44・・
・メモリ4へのアドレス入力線、54・・・メモリ5へ
のアドレス入力線、8・・・サーチセルアレイ・80〜
83・・・ピボット行の非O要素列番号入力線、84〜
87・・・ピボット行の非0要素値入力線、9・・・積
和セルアレイ、90〜93・・・積和セル、94・・・
ピボット列の非0要素値入力線、100・・・制御装置
、110〜113・・・レジスタ、120〜123・・
・スイッチ、130・・・デコーダ・200〜202・
・・サーチセル人力ラッテタイミング・203〜205
・・・サーチセル演算区間、206〜208・・・積和
セル人力ラッチタイミング、209〜211・・・積和
セル掛き込みタイミング、212〜214・・・積和セ
ル演算区間・215〜21G・・・積和セル書き込み区
間、800・・・サーチセル、801,802・・・入
力用レジスタ、803・・・スインf、804・・・比
較器・805・・・要素値入力線・806・・・列(行
)番号入力線、807・・・列(行)番号ブロードキャ
スト線、808・・・要素値ブロードキャスト線。 809・・・要素値出力線・810・・・列(行)番号
出力線、900・・・積和セル、901・・・加算器、
902・・・乗算器、903・・・除算器・904,9
05・・・入力レジスタ、906,907・・・スイッ
チ、908・・・要素値入力線(サーチセルエリ)、9
09・・・要素値ブロードキャスト線、9工0・・・要
素値入出力第 2 目 第 3 国 第 5 国 第 6 目 f 07 第 7 目 00 \ 婢
するメモリの構成例・第3図は並列計算方式の説明図、
第4図は並列計算装置の実施例、第5図はタイミング説
明画・第6図はサーチセルの内部構成図・第7図は積和
セルの内部構成図である。 4・・・上三角部分非0要素の列番号メモリ・40〜4
3・・・メモリ4のバンク、5・・・下三角部分の非0
要素1iM、50〜53・・・メモリ5のバンク、6・
・・上玉角部分の非O要素の行番号メモリ、60〜63
・・・メモリ6のバンク、7・・・上玉角部分の非0要
素1直、70〜73・・・メモリ7のバンク、44・・
・メモリ4へのアドレス入力線、54・・・メモリ5へ
のアドレス入力線、8・・・サーチセルアレイ・80〜
83・・・ピボット行の非O要素列番号入力線、84〜
87・・・ピボット行の非0要素値入力線、9・・・積
和セルアレイ、90〜93・・・積和セル、94・・・
ピボット列の非0要素値入力線、100・・・制御装置
、110〜113・・・レジスタ、120〜123・・
・スイッチ、130・・・デコーダ・200〜202・
・・サーチセル人力ラッテタイミング・203〜205
・・・サーチセル演算区間、206〜208・・・積和
セル人力ラッチタイミング、209〜211・・・積和
セル掛き込みタイミング、212〜214・・・積和セ
ル演算区間・215〜21G・・・積和セル書き込み区
間、800・・・サーチセル、801,802・・・入
力用レジスタ、803・・・スインf、804・・・比
較器・805・・・要素値入力線・806・・・列(行
)番号入力線、807・・・列(行)番号ブロードキャ
スト線、808・・・要素値ブロードキャスト線。 809・・・要素値出力線・810・・・列(行)番号
出力線、900・・・積和セル、901・・・加算器、
902・・・乗算器、903・・・除算器・904,9
05・・・入力レジスタ、906,907・・・スイッ
チ、908・・・要素値入力線(サーチセルエリ)、9
09・・・要素値ブロードキャスト線、9工0・・・要
素値入出力第 2 目 第 3 国 第 5 国 第 6 目 f 07 第 7 目 00 \ 婢
Claims (1)
- 【特許請求の範囲】 1、連立−次方程式求解のためのLU分解の計算におい
て、係数行列の上玉角部分の非O要素列番号および要素
値を記憶するための第1のメモリと・係数行列の下三角
部分の非O要素行番号および要素値を記憶するための第
2のメモリと・2次元状に配列された比較機能を持つセ
ルと。 1次元状に配列された積和演算および除算機能に実行す
ることを特徴とする高速LU分解器。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2501784A JPS60169975A (ja) | 1984-02-15 | 1984-02-15 | 高速lu分解器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2501784A JPS60169975A (ja) | 1984-02-15 | 1984-02-15 | 高速lu分解器 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPS60169975A true JPS60169975A (ja) | 1985-09-03 |
Family
ID=12154138
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2501784A Pending JPS60169975A (ja) | 1984-02-15 | 1984-02-15 | 高速lu分解器 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPS60169975A (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS62248065A (ja) * | 1986-04-22 | 1987-10-29 | Fujitsu Ltd | スパ−ス行列の連立方程式の解法方式 |
WO2000011564A1 (fr) * | 1998-08-19 | 2000-03-02 | Minitera Ltd. | Systeme de calcul uniforme comportant une structure programmable a deux couches |
-
1984
- 1984-02-15 JP JP2501784A patent/JPS60169975A/ja active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS62248065A (ja) * | 1986-04-22 | 1987-10-29 | Fujitsu Ltd | スパ−ス行列の連立方程式の解法方式 |
WO2000011564A1 (fr) * | 1998-08-19 | 2000-03-02 | Minitera Ltd. | Systeme de calcul uniforme comportant une structure programmable a deux couches |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US4635292A (en) | Image processor | |
US5081573A (en) | Parallel processing system | |
CN110415157B (zh) | 一种矩阵乘法的计算方法及装置 | |
US4601006A (en) | Architecture for two dimensional fast fourier transform | |
JPH03131965A (ja) | ニューラルネットワーク用二次元収縮アレイ及びその方法 | |
JPH0233191B2 (ja) | ||
JPH03209561A (ja) | 連立一次方程式の解を求める計算装置及び方法 | |
CN112765540B (zh) | 数据处理方法、装置及相关产品 | |
JPH07117948B2 (ja) | コンピユータ装置 | |
CN114003198A (zh) | 内积处理部件、任意精度计算设备、方法及可读存储介质 | |
US5422836A (en) | Circuit arrangement for calculating matrix operations in signal processing | |
CN116710912A (zh) | 一种矩阵乘法器及矩阵乘法器的控制方法 | |
Chang et al. | Residue arithmetic VLSI array architecture for manipulator pseudo-inverse Jacobian computation | |
CN110457648B (zh) | 一种用于lu分解的脉动阵列结构的实现方法 | |
JPS60169975A (ja) | 高速lu分解器 | |
CN116050492A (zh) | 一种扩展单元 | |
JPH04316153A (ja) | ニューロプロセッサ | |
Schimmler et al. | Instruction systolic array in image processing applications | |
JPH07200539A (ja) | 二次元dct演算装置 | |
CN115756613B (zh) | 基于向量化处理的sinc插值方法、装置及SAR雷达 | |
CN115033843B (zh) | 基于三角脉动阵列的协方差矩阵计算的电路实现方法 | |
RU2709160C1 (ru) | Устройство обращения треугольной матрицы | |
JPH0752748B2 (ja) | 三次元デバイスのシミュレーション装置 | |
JPH1063647A (ja) | 行列演算装置 | |
JPH07101415B2 (ja) | 情報処理装置及びその学習方法 |