JPH0546578A - 並列数値演算方式 - Google Patents

並列数値演算方式

Info

Publication number
JPH0546578A
JPH0546578A JP23239091A JP23239091A JPH0546578A JP H0546578 A JPH0546578 A JP H0546578A JP 23239091 A JP23239091 A JP 23239091A JP 23239091 A JP23239091 A JP 23239091A JP H0546578 A JPH0546578 A JP H0546578A
Authority
JP
Japan
Prior art keywords
row
vector
matrix
rows
column
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.)
Withdrawn
Application number
JP23239091A
Other languages
English (en)
Inventor
Toshiyuki Nakada
登志之 中田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
NEC Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by NEC Corp filed Critical NEC Corp
Priority to JP23239091A priority Critical patent/JPH0546578A/ja
Publication of JPH0546578A publication Critical patent/JPH0546578A/ja
Withdrawn legal-status Critical Current

Links

Landscapes

  • Complex Calculations (AREA)

Abstract

(57)【要約】 (修正有) 【目的】 n行n列の行列とn行のベクトルとの積の演
算をp(0<p<n)台のプロセッサで並列演算し、行
方向に行列及びベクトルを分割して各プロセッサに割り
付けた場合、各プロセッサが演算されるベクトルの担当
する要素を他のプロセッサに分配する通信量を削減す
る。 【構成】 積ベクトル12の要素のうちベクトル11の
第j行の要素13から影響を受けるのは、行列10の第
j列14の非零要素15に対応する要素16だけである
ことに注目し、行列10の第j列14の非零要素を担当
するプロセッサにのみベクトル11の第j行の要素13
を転送する。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は並列数値演算方式に関す
る。
【0002】
【従来の技術】n(n>0)行n列の行列とn行のベク
トルとの積の演算をp(0<p<n)台のプロセッサで
並列に求める方式としては図3に示すように、n(n>
0)行n列の行列とn行のベクトルを共に行方向に分割
して前記p台のプロセッサにn/p行ずつ割り付けて並
列に演算する方式が存在した。
【0003】
【発明が解決しようとする課題】しかしこの場合、乗算
される、n行のベクトルの要素は、各行の演算に必要で
ある可能性が存在するため、各プロセッサが全プロセッ
サに担当する行の要素を分配する必要がある。この通信
量がp*n/p*p=n*pとなり、通信時間のために
並列処理による速度向上が妨げられるという欠点が存在
した。
【0004】本発明の目的はこのような欠点を除去し、
プロセッサ間の通信時間を削減し、速度向上が得られる
ような並列演算方式を提供することにある。
【0005】
【課題を解決するための手段】請求項1に記載の行列数
値演算方式は、n(n>0)行n列の行列とn行のベク
トルとの積をとってn行の積ベクトルを得る演算をp
(0<p<n)台のプロセッサで並列に求める方式であ
って、前記n(n>0)行n列の行列とn行のベクトル
を共に行方向に分割して前記p台のプロセッサにn/p
行ずつ割り付けて並列に演算する方式であって、前記ベ
クトルの第j行(1n)の要素が前記積ベクトル
の第k行(1n)の要素に影響を与えるのは前記
行列の第k行第j列の要素が非零であるときのみである
ことに注目し、前記ベクトルの要素をそのデータが必要
なプロセッサにのみ転送することにより、プロセッサ間
通信の量を減らすことを特徴とする。
【0006】また請求項2に記載の行列数値演算方式
は、請求項1の発明において、前記行列の第j列が非零
である最も小さい行i1jと最も大きい行i2jだけを各列
jで記憶しておき、前記ベクトルの第j要素が第i1j
から第i2j行までの前記積ベクトルの要素に影響を与え
ると仮定して、第i1j行を担当するプロセッサから第i
2j行を担当するプロセッサまでに前記ベクトルの第j行
の要素を転送することにより、第j行の要素の影響範囲
を記憶するのに必要なデータ領域を削減すると共に、転
送が必要な行の判定を削除することにより、転送時間に
要する時間を削減することを特徴とする。
【0007】
【作用】請求項1の発明においては、行列の各行最初の
非零要素の列番号と最後の非零要素の番号を用いて、乗
算されるベクトルの各要素がどの行の要素までに影響を
与えるかを前持って算出して保持している。有限要素法
などで用いられる疎行列では、非零要素が行列の対角項
の付近に集中しているため、ベクトルの各行の要素が演
算結果に影響を与える範囲は限られている。このような
場合にはプロセッサ間通信を削減することが可能とな
り、並列処理による速度向上が得られることになる。
【0008】また、有限要素法などで用いられる疎行列
では、非零要素が行列の対角項の付近に集中しているた
め、行列の第j列が非零である最も小さい行i1jと最も
大きい行i2jの間のほとんどの行では第j列が非零であ
る確率が高い。従って、行列の第j列が非零である最も
小さい行i1jと最も大きい行i2jだけを各列jで記憶し
ておき、前記ベクトルの第j要素が第i1j行から第i2j
行までの前記積ベクトルの要素に影響を与えると仮定し
て前記ベクトルの第j行の要素を転送することにより、
第j行の要素の影響範囲を記憶するのに必要なデータ領
域を削減すると共に、転送が必要な行の判定を削除する
ことにより、転送時間に要する時間を削減することにな
る。
【0009】
【実施例】本発明の並列数値演算方式について、図面を
参照して更に詳しく説明する。
【0010】図1は請求項1の発明の一実施例を示した
ものである。図1でn(n>0)行n列の行列10とn
行のベクトル11との積をとってn行12の積ベクトル
を得る演算をp(0<p<n)台のプロセッサで行なう
ことを考える。図1において、ベクトル11のj行目の
要素13は積を求める時点において、行列10の第j列
14の各要素と掛け合わされ、その結果が積ベクトル1
2の各要素に足しこまれる。図2は本発明において、行
列10、ベクトル11、並びに積ベクトル12をp台
(本図では3台)に割り当てた時の、各プロセッサの担
当を示したものである。図2に示すように行列の各行を
担当するプロセッサ20は行列10、ベクトル11、積
ベクトル12を行方向に分割して担当する。各プロセッ
サは各行を担当するプロセッサの番号を保持する担当番
号表21を有する。
【0011】図1において、ベクトル11のj行目の要
素13が積ベクトル12の値に影響を及ぼすのは、行列
10の第j列14の非零要素15が存在する行の要素1
6だけである。そこで本実施例では、各プロセッサは行
列10の各列の要素に対して、要素が0であるか否かを
示すフラグ17を保持し、このフラグ17と、担当番号
表21を参照してベクトル11の第j行(1n)
の要素13を必要とするプロセッサにのみ転送する。
【0012】図3は請求項2の発明の一実施例を示した
ものである。
【0013】行列10が大きくなると、第j列に対応す
る非零要素指示フラグ17を各プロセッサで保持するこ
とが困難になる。また、転送時に第j列に対応する非零
要素指示フラグ17の各要素が0であるか否かを判断す
るのがかえってオーバヘッドになることがある。
【0014】また有限要素法で用いられる疎行列では、
非零要素が行列の対角項の付近に集中していることが多
い。そこで本実施例では、行列10の第j行14の非零
要素の先頭の行i1 30 と最後の行i2 31 の間は非零であ
る確率が高いと仮定し、ベクトルの第j行要素13が積
ベクトルの行i130 から行i2 31 の全ての要素32に影
響を及ぼすと仮定する。
【0015】そこで各プロセッサでベクトルの第j行要
素13が影響を及ぼすと仮定する積ベクトルの要素範囲
32を示すために、行列10の第j列14の非零要素の
先頭行i1 30 と行列10の第j列14の非零要素の最後
の行i2 31 を保持する範囲表33を保持し、この表と、
担当番号表21を参照してベクトル11の第j行(1
n)の要素13を必要とするプロセッサにのみ転送
する。
【0016】
【発明の効果】以上述べたように請求項1の発明におい
ては、行列の各行最初の非零要素の列番号と最後の非零
要素の番号を用いて、乗算されるベクトルの各要素がど
の行の要素までに影響を与えるかを前持って算出して保
持している。有限要素法などで用いられる疎行列では、
非零要素が行列の対角項の付近に集中しているため、ベ
クトルの各行の要素が演算結果に影響を与える範囲は限
られている。このような場合にはプロセッサ間通信を削
減することが可能となり、並列処理による速度向上が得
られることになる。
【0017】また、有限要素法などで用いられる疎行列
では、非零要素が行列の対角項の付近に集中しているた
め、行列の第j列が非零である最も小さい行i1jと最も
大きい行i2jの間のほとんどの行では第j列が非零であ
る確率が高い。従って、行列の第j列が非零である最も
小さい行i1jと最も大きい行i2jだけを各列jで記憶し
ておき、前記ベクトルの第j要素が第i1j行から第i2j
行までの前記積ベクトルの要素に影響を与えると仮定し
て前記ベクトルの第j行の要素を転送することにより、
第j行の要素の影響範囲を記憶するのに必要なデータ領
域を削減すると共に、転送が必要な行の判定を削除する
ことにより、転送時間に要する時間を削減することにな
る。
【図面の簡単な説明】
【図1】請求項1の発明の一実施例を示す構成図であ
る。
【図2】本発明で用いた行のプロセッサへの割り当て方
法を示す図である。
【図3】請求項2の発明の一実施例を示す構成図であ
る。
【符号の説明】
10 行列 11 ベクトル 12 積ベクトル 13 ベクトルの第j行の要素 14 行列の第j列 15 行列の第j列の非零要素 16 積ベクトルでベクトルの第j列の影響を受ける
要素 17 第j列に対応する非零要素指示フラグ 20 行列の各行を担当するプロセッサ 21 担当番号表 30 第j列の非零要素を保持する先頭の行 31 第j列の非零要素を保持する最後の行 32 ベクトルの第j行が影響を及ぼすと仮定する積
ベクトルの要素の範囲 33 第j行に対する範囲表

Claims (2)

    【特許請求の範囲】
  1. 【請求項1】 n(n>0)行n列の行列とn行のベク
    トルとの積をとってn行の積ベクトルを得る演算をp
    (0<p<n)台のプロセッサで並列に求める方式であ
    って、 前記n(n>0)行n列の行列とn行のベクトルを共に
    行方向に分割して前記p台のプロセッサにn/p行ずつ
    割り付けて並列に演算する方式であって、 前記ベクトルの第j行(1n)の要素が前記積ベ
    クトルの第k行(1n)の要素に影響を与えるの
    は前記行列の第k行第j列の要素が非零であるときのみ
    であることに注目し、前記ベクトルの要素をそのデータ
    が必要なプロセッサにのみ転送することにより、プロセ
    ッサ間通信の量を減らすことを特徴とする並列数値演算
    方式。
  2. 【請求項2】 前記行列の第j列が非零である最も小さ
    い行i1jと最も大きい行i2jだけを各列jで記憶してお
    き、前記ベクトルの第j要素が第i1j行から第i2j行ま
    での前記積ベクトルの要素に影響を与えると仮定して、
    第i1j行を担当するプロセッサから第i2j行を担当する
    プロセッサまでに前記ベクトルの第j行の要素を転送す
    ることにより、第j行の要素の影響範囲を記憶するのに
    必要なデータ領域を削減すると共に、転送が必要な行の
    判定を削減することにより、転送時間に要する時間を削
    減することを特徴とする請求項1に記載の並列数値演算
    方式。
JP23239091A 1991-08-20 1991-08-20 並列数値演算方式 Withdrawn JPH0546578A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP23239091A JPH0546578A (ja) 1991-08-20 1991-08-20 並列数値演算方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP23239091A JPH0546578A (ja) 1991-08-20 1991-08-20 並列数値演算方式

Publications (1)

Publication Number Publication Date
JPH0546578A true JPH0546578A (ja) 1993-02-26

Family

ID=16938493

Family Applications (1)

Application Number Title Priority Date Filing Date
JP23239091A Withdrawn JPH0546578A (ja) 1991-08-20 1991-08-20 並列数値演算方式

Country Status (1)

Country Link
JP (1) JPH0546578A (ja)

Similar Documents

Publication Publication Date Title
EP0240032B1 (en) Vector processor with vector data compression/expansion capability
JP2007317179A (ja) 帯域幅要件が軽減された行列乗算
GB950911A (en) Modular computer system
US20140196043A1 (en) System and method for re-factorizing a square matrix into lower and upper triangular matrices on a parallel processor
JPH06295257A (ja) デジタル信号処理システム
Sagar et al. Task allocation model for distributed systems
JPS63201851A (ja) バッファ記憶アクセス方法
EP0619547A1 (en) A method of requesting data and apparatus therefor
EP1035479A2 (en) System for processing vector data
JPH0546578A (ja) 並列数値演算方式
US20030200422A1 (en) Parallel processor
CN109522125B (zh) 一种矩阵乘积转置的加速方法、装置及处理器
US6199143B1 (en) Computing system with fast data transfer of CPU state related information
JP2591362B2 (ja) データ選択処理方法
US5134694A (en) Method and device for the processing of address words
Briggs Memory Organizations and Their Effectiveness for Multiprocessing Computers.
US6272592B1 (en) Cache memory device
KR20230117200A (ko) 레지스터의 니어-메모리 결정
Paw et al. Domain decomposition procedures for finite element analysis on transputer based parallel computers
US6965985B2 (en) Sign generation bypass path to aligner for reducing signed data load latency
JP3296489B2 (ja) 連想メモリ装置における演算方法
Swarztrauber The Communication Machine
JP2735195B2 (ja) テーブル検索装置
CN111507178A (zh) 数据处理的优化方法及装置、存储介质、计算机设备
JPH0561841A (ja) 並列計算機における負荷の動的均等化方式

Legal Events

Date Code Title Description
A300 Withdrawal of application because of no request for examination

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 19981112