Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP3495010B2 - Information processing apparatus and calculation method in information processing apparatus - Google Patents
[go: Go Back, main page]

JP3495010B2 - Information processing apparatus and calculation method in information processing apparatus - Google Patents

Information processing apparatus and calculation method in information processing apparatus

Info

Publication number
JP3495010B2
JP3495010B2 JP2001169407A JP2001169407A JP3495010B2 JP 3495010 B2 JP3495010 B2 JP 3495010B2 JP 2001169407 A JP2001169407 A JP 2001169407A JP 2001169407 A JP2001169407 A JP 2001169407A JP 3495010 B2 JP3495010 B2 JP 3495010B2
Authority
JP
Japan
Prior art keywords
data
element processor
calculation
processors
processor
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.)
Expired - Fee Related
Application number
JP2001169407A
Other languages
Japanese (ja)
Other versions
JP2002049596A (en
Inventor
丈治 大島
俊之 田村
悟 古藤
浩乃 坪田
伸史 小守
伸治 中島
浩詔 寺田
誠 岩田
克人 山口
潤治 大西
明 近藤
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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric 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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP2001169407A priority Critical patent/JP3495010B2/en
Publication of JP2002049596A publication Critical patent/JP2002049596A/en
Application granted granted Critical
Publication of JP3495010B2 publication Critical patent/JP3495010B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Complex Calculations (AREA)
  • Multi Processors (AREA)

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【発明の属する技術分野】この発明は、並列プロセッサ
によって処理性能を飛躍的に向上させる情報処理装置の
構成および計算方法に関するものであり、より詳しく
は、微分方程式の数値計算の高速化に関するものであ
る。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a configuration and a calculation method of an information processing apparatus for dramatically improving processing performance by a parallel processor, and more particularly to speeding up of numerical calculation of differential equations. is there.

【0002】[0002]

【従来の技術】この発明の主たる応用分野である微分方
程式の解法においては、空間的・時間的に離散化した解
析時空間で、対象とする方程式を差分化し、隣接する格
子点の相互作用によって解を求めている。従来では、こ
れらの問題をノイマン型計算機による逐次計算法、ある
いはマルチプロセッサ上での並列計算法により解析して
きた。
2. Description of the Related Art In the solution of a differential equation, which is the main field of application of the present invention, the equation of interest is differentiated in an analysis time space that is discretized spatially and temporally, and the interaction between adjacent lattice points is used. Seeking a solution. Conventionally, these problems have been analyzed by the sequential calculation method by Neumann type computer or the parallel calculation method on a multiprocessor.

【0003】また、近年では、例えば、天気予報や大気
・海洋汚染などの環境アセスメントにおいては、大規模
な熱および流体の数値解析予測を行っている。天気予報
では、大気の動きを予測し、気圧,風速,気温,日射を
基に高・低気圧の移動,台風の進路を予測して天気予報
を出す。環境アセスメントでは、汚染源が大気や海流に
よってどのように拡散するかを、流速や汚染物質濃度を
予測して評価する。そこには、超大型計算機が数多く投
入され、多大な計算時間を費やしている。このように多
くの計算機資源を投入し、計算速度を予測精度を向上さ
せ、風雨による災害を防止したり、環境破壊を未然に防
止する努力が払われてきた。マルチプロセッサ上でこの
種の問題を取り扱う方法が試みられており、日本機械学
会論文集59巻558号、PP.427−432(文献
1)あるいは日本機械学会論文集60巻569号、P
P.99−106(文献2)で示されるように、離散化
された解析領域をブロック状に分割し、それぞれの分割
領域を1つの要素プロセッサに割り当て、全体として複
数の要素プロセッサからなるマルチプロセッサ・システ
ムによって並列処理を行う領域分割法が行われている。
Further, in recent years, large-scale numerical analysis and prediction of heat and fluid have been performed in, for example, weather forecasts and environmental assessments such as atmospheric and marine pollution. In the weather forecast, the movement of the atmosphere is predicted, and the movement of high / low pressure and the course of a typhoon are predicted based on the atmospheric pressure, wind speed, temperature, and solar radiation, and the weather forecast is issued. In the environmental assessment, how the pollution source is diffused by the atmospheric and ocean currents is estimated by estimating the flow velocity and the pollutant concentration. A large number of super-large-scale computers are put in there, and a great deal of calculation time is spent. Thus, efforts have been made to invest a large amount of computer resources, improve calculation speed and prediction accuracy, prevent disasters caused by wind and rain, and prevent environmental damage. A method of dealing with this kind of problem on a multiprocessor has been tried, and the Japan Society of Mechanical Engineers, Vol. 59, No. 558, PP. 427-432 (reference 1) or the Japan Society of Mechanical Engineers, Volume 60, 569, P.
P. 99-106 (reference 2), a discretized analysis area is divided into blocks, each divided area is assigned to one element processor, and a multiprocessor system composed of a plurality of element processors as a whole. A domain division method that performs parallel processing is used.

【0004】図68は、従来例である文献1に示された
要素プロセッサをニアネイバメッシュで結合し、領域分
割法を行うためのシステム全体の構成図である。図にお
いて、201は担当する分割領域の演算を行う要素プロ
セッサ、202は要素プロセッサ201間のデータ通信
を行うための要素プロセッサ間コネクション、203は
要素プロセッサ201を統括管理するためのホストコン
ピュータ、204はホストコンピュータ203と要素プ
ロセッサ201とを連結するためのインターフェースボ
ード、205は要素プロセッサ201を4個実装した要
素プロセッサボードである。
FIG. 68 is a block diagram of the entire system for performing the area division method by connecting the element processors shown in Document 1 which is a conventional example with a near neighbor mesh. In the figure, 201 is an element processor that performs the operation of a divided area in charge, 202 is an inter-element processor connection for performing data communication between the element processors 201, 203 is a host computer for centrally managing the element processors 201, and 204 is An interface board for connecting the host computer 203 and the element processor 201, and 205 is an element processor board on which four element processors 201 are mounted.

【0005】また、文献2における従来例では、汎用並
列計算機AP1000を使用し、要素プロセッサ201
を同様のニアネイバメッシュにより結合している。
Further, in the conventional example in Document 2, a general-purpose parallel computer AP1000 is used and an element processor 201 is used.
Are connected by a similar near neighbor mesh.

【0006】これらの汎用マルチプロセッサ・システム
を利用した並列計算法においては、プロセッサ間の通信
方法は、パケット通信などの低速の通信手段を用いてい
る。また、プロセッサ間で処理の同期が必要であるた
め、要素プロセッサ201間のデータ転送時のオーバー
ヘッドが存在し、要素プロセッサ201の台数を増加さ
せるに伴い並列化効率が低下する。図69は、文献2で
示された、偏微分方程式解法の一応用例である数値流体
解析を、差分法を用いて行った場合の、要素プロセッサ
台数増加に伴う並列化効率の低下状況を示した図であ
る。図中横軸は要素プロセッサ201の台数、縦軸は演
算速度向上率、○印はMAC法を使用した場合の演算速
度向上率、△印はSMAC法を使用した場合の演算速度
向上率、□印はHSMAC法を使用した場合の演算速度
向上率、実線は要素プロセッサ201の台数に比例した
演算速度向上率を示す。MAC法、SMAC法、HSM
AC法ともに要素プロセッサ201の台数が増加するに
つれ、データ転送のオーバーヘッドにより要素プロセッ
サ201の台数増加に伴う並列化効率が低下している。
In the parallel computing method utilizing these general-purpose multiprocessor systems, low-speed communication means such as packet communication is used as the communication method between the processors. Further, since it is necessary to synchronize the processing between the processors, there is an overhead in data transfer between the element processors 201, and the parallelization efficiency decreases as the number of element processors 201 increases. FIG. 69 shows a situation in which parallelization efficiency is lowered with an increase in the number of element processors when the numerical fluid analysis, which is one application example of the partial differential equation solving method shown in Document 2, is performed using the difference method. It is a figure. In the figure, the horizontal axis is the number of element processors 201, the vertical axis is the calculation speed improvement rate, the circle is the calculation speed improvement rate when the MAC method is used, and the triangle is the calculation speed improvement rate when the SMAC method is used. A mark indicates a calculation speed improvement rate when the HSMAC method is used, and a solid line indicates a calculation speed improvement rate proportional to the number of the element processors 201. MAC method, SMAC method, HSM
With the AC method, as the number of element processors 201 increases, the parallelization efficiency decreases due to the increase in the number of element processors 201 due to the overhead of data transfer.

【0007】また、偏微分方程式を解析する上での演算
レベルでの並列性に着目すると、既存のハードウエアを
使用する従来の数値解法では、ハードウエアのアーキテ
クチャが汎用性を重視しているため、偏微分方程式の解
析時に現れる演算レベルの高度な並列性を並列処理に組
み込むことは不可能であった。
Further, focusing on the parallelism at the operation level in analyzing the partial differential equation, in the conventional numerical solution method using the existing hardware, the hardware architecture attaches importance to versatility. , It was impossible to incorporate into the parallel processing the high level of parallelism that appears at the time of analysis of partial differential equations.

【0008】つまり、ノイマン型の大型計算機や汎用並
列計算機を用いても、大規模な偏微分方程式を高速に、
しかも安価に解析することは困難であった。
That is, even if a large Neumann type computer or a general-purpose parallel computer is used, a large-scale PDE can be executed at high speed.
Moreover, it was difficult to analyze at low cost.

【0009】[0009]

【発明が解決しようとする課題】従来の微分方程式の求
解方式は以上のような手法であったため、nCUBE、
AP−1000、トランスピュータ(Transput
er)などの汎用並列プロセッサを使用した領域分割法
による偏微分方程式の解法が主流であった。これらのマ
ルチプロセッサ間の通信方式は、パケット通信など低速
の通信手段を用いている。既存のハードウエア・アーキ
テクチャを踏襲する限り、プロセッサ間並列処理及び並
行処理を重視せざるを得ない。即ち、領域分割法による
解法は、全計算時間のうち、通信時間に比べて演算時間
の占める割合いが多い粗粒度並列処理にはある程度の効
果があったが、微分方程式の解析に現れる演算時間に比
べて通信時間の占める割合いが多い細粒度並列処理では
データ転送時のオーバーヘッドが大きくなり、並列化効
率が低下するという問題があった。
Since the conventional differential equation solving method is the above-described method, nCUBE,
AP-1000, Transputer
er) and other general-purpose parallel processors were used to solve partial differential equations by the domain decomposition method. The communication system between these multiprocessors uses low-speed communication means such as packet communication. As long as the existing hardware architecture is followed, parallel processing between processors and parallel processing must be emphasized. In other words, the solution by the domain division method had some effect on coarse-grain parallel processing in which the calculation time occupies a large proportion of the total calculation time, but the calculation time that appears in the differential equation analysis In the fine-grain parallel processing, which has a large proportion of communication time as compared with, there was a problem that the overhead during data transfer becomes large and the parallelization efficiency decreases.

【0010】また、ソフトウェアを改良することでレイ
テンシー・トレランス(データ待ち問題に対する対処
性)を高める様々な手法が考案されているが、既存ハー
ドウエアを使用する限り、通信方式を抜本的に変更する
ことは不可能で、通信同期待ちを劇的に減少させること
は不可能であるという問題点があった。
Various methods have been devised to improve latency tolerance (coping with the data waiting problem) by improving software. However, as long as existing hardware is used, the communication method is drastically changed. However, there is a problem that it is impossible to dramatically reduce the communication synchronization waiting time.

【0011】さらに、プロセッサ内の演算レベルでの並
列性はハードが持つアーキテクチャに依存し、ソフトレ
ベルでは対応しきれないという問題点があった。
Further, there is a problem that the parallelism at the operation level in the processor depends on the architecture of the hardware and cannot be dealt with at the software level.

【0012】この発明は上記のような問題点を解消する
ためになされたもので、この発明の第1の目的は、要素
プロセッサ間で非同期にメッセージ伝達を行うことによ
って、レイテンシー・トレランスを向上することができ
る情報処理装置を得ることにある。
The present invention has been made to solve the above problems, and a first object of the present invention is to improve the latency tolerance by asynchronously transmitting a message between element processors. It is to obtain an information processing device capable of performing.

【0013】また、この発明は上記のような問題点を解
消するためになされたもので、この発明の第2の目的
は、通信によって要素プロセッサ内の処理が阻害されな
いメモリ構造を有することによって、微分方程式の求解
に適したメモリアクセス方式を行うことのできる情報処
理装置を得ることにある。
The present invention has been made to solve the above problems, and a second object of the present invention is to provide a memory structure in which processing in the element processor is not hindered by communication. It is to obtain an information processing device capable of performing a memory access method suitable for solving a differential equation.

【0014】さらに、この発明は上記のような問題点を
解消するためになされたもので、この発明の第3の目的
は、布線論理を直接ハードウェア化した演算器をプロセ
ッサ内に配列し、熱流体数値解析やその他の偏微分方程
式の解法を基本とした数値解析手法に内在する演算レベ
ルでの並列性を最大限に発揮することのできる情報処理
装置を得ることにある。
Further, the present invention has been made to solve the above-mentioned problems, and a third object of the present invention is to arrange an arithmetic unit in which a wiring logic is directly implemented as hardware in a processor. An object of the present invention is to obtain an information processing device capable of maximizing the parallelism at the operation level, which is inherent in the numerical analysis method based on the thermal fluid numerical analysis and other partial differential equation solving methods.

【0015】[0015]

【課題を解決するための手段】第1の発明に係る情報処
理装置は、複数の要素プロセッサと、互いに隣接する前
記要素プロセッサ間を繋ぐ複数のデータバスとを備え、
所定の方程式で記述できる場の支配方程式を求解する際
に用いる格子状に離散化された計算空間を複数の領域に
分割し、前記複数の領域のそれぞれごとに前記要素プロ
セッサを割り当てて、並列的にかつ反復的に演算を行わ
せる情報処理装置であって、一の前記要素プロセッサ
は、反復的な演算の過程において、隣接する他の前記要
素プロセッサにおける演算の過程に拘わらず、互いに隣
接する前記領域同士の境界部分の格子点のデータを更新
し、前記他の要素プロセッサは、前記一の要素プロセッ
サに係る前記境界部分の前記格子点の前記データが前記
一の要素プロセッサによって更新されたか否かに拘わら
ず、前記一の要素プロセッサに係る前記境界部分の前記
格子点の前記データを前記データバスを介して参照しつ
つ、反復的な演算を行い、前記要素プロセッサは、演算
を実行するプロセッシングユニット及び演算に関する各
種データを記憶するためのデータメモリを有し、前記一
の要素プロセッサは、前記境界部分の前記格子点の前記
データを自己の前記データメモリに書き込み、前記他の
要素プロセッサは、前記一の要素プロセッサの前記デー
タメモリに記憶されている前記境界部分の前記格子点の
前記データを参照し、前記プロセッシングユニットは、
前記格子点の全てに対し前記格子点の存在する位置が前
記場の中の計算領域の内部か、あるいは前記計算領域内
の物体の内部か外部かを示す内点ビット及び外点ビット
を、さらに前記計算領域境界に位置する前記格子点に対
して境界条件の情報を与える境界条件ビットを、前記要
素プロセッサの前記データメモリにロードしておき、前
記内点ビット、前記外点ビット及び前記境界条件ビット
に従ってデータフローグラフの処理を変更することがで
きる同一の布線論理に従ったハードウェア回路をさらに
備えることを特徴とする。
An information processing apparatus according to a first invention comprises a plurality of element processors and a plurality of data buses connecting between the element processors adjacent to each other,
A grid-discretized calculation space used when solving a field governing equation that can be described by a predetermined equation is divided into a plurality of regions, and the element processors are assigned to each of the plurality of regions, and parallelized. In the information processing device for performing repetitive arithmetic operations, one of the element processors is adjacent to each other in the iterative operation process regardless of the operation process of the other adjacent element processors. The data of the grid point of the boundary portion between the regions is updated, and the other element processor determines whether the data of the grid point of the boundary portion related to the one element processor is updated by the one element processor. Regardless of the above, the iterative calculation is performed while referring to the data of the lattice points of the boundary portion according to the one element processor via the data bus. The element processor has a processing unit for executing an operation and a data memory for storing various data related to the operation, and the one element processor stores the data of the grid point of the boundary portion in its own Writing to a data memory, the other element processor refers to the data of the grid point of the boundary portion stored in the data memory of the one element processor, and the processing unit,
An inside point bit and an outside point bit indicating whether the position where the grid point exists for all of the grid points is inside the calculation area in the field, or inside or outside the object in the calculation area, and Boundary condition bits that give information of boundary conditions to the grid points located at the boundary of the calculation area are loaded in the data memory of the element processor, and the inner point bits, the outer point bits, and the boundary condition bits are loaded. It is characterized by further comprising a hardware circuit according to the same wiring logic that can change the processing of the data flow graph according to the bit.

【0016】第2の発明に係る情報処理装置は、複数の
要素プロセッサと、互いに隣接する前記要素プロセッサ
間を繋ぐ複数のデータバスとを備え、所定の方程式で記
述できる場の支配方程式を求解する際に用いる格子状に
離散化された計算空間を複数の領域に分割し、前記複数
の領域のそれぞれごとに前記要素プロセッサを割り当て
て、並列的にかつ反復的に演算を行わせる情報処理装置
であって、一の前記要素プロセッサは、反復的な演算の
過程において、隣接する他の前記要素プロセッサにおけ
る演算の過程に拘わらず、互いに隣接する前記領域同士
の境界部分の格子点のデータを更新し、前記他の要素プ
ロセッサは、前記一の要素プロセッサに係る前記境界部
分の前記格子点の前記データが前記一の要素プロセッサ
によって更新されたか否かに拘わらず、前記一の要素プ
ロセッサに係る前記境界部分の前記格子点の前記データ
を前記データバスを介して参照しつつ、反復的な演算を
行い、前記要素プロセッサは、演算を実行するプロセッ
シングユニット及び演算に関する各種データを記憶する
ためのデータメモリを有し、前記一の要素プロセッサ
は、前記境界部分の前記格子点の前記データを自己の前
記データメモリに書き込み、前記他の要素プロセッサ
は、前記一の要素プロセッサの前記データメモリに記憶
されている前記境界部分の前記格子点の前記データを参
照し、隣接する前記要素プロセッサ同士を結合した細ノ
ード結合と、一つ以上の前記要素プロセッサを飛び越し
て前記要素プロセッサ同士を粗ノード結合コネクション
で結合した粗ノード結合とを有することを特徴とする。
An information processing apparatus according to a second aspect of the present invention includes a plurality of element processors and a plurality of data buses that connect the element processors adjacent to each other, and solves a governing equation of a field that can be described by a predetermined equation. In an information processing device that divides a calculation space discretized into a grid used in the case into a plurality of regions, allocates the element processors to each of the plurality of regions, and performs operations in parallel and iteratively. Therefore, the one element processor updates the data of the grid point at the boundary between the adjacent areas in the iterative operation process regardless of the operation process in the other adjacent element processors. In the other element processor, the data of the grid point of the boundary portion related to the one element processor is updated by the one element processor. Regardless of whether or not the element processor executes the operation while referring to the data of the grid point of the boundary portion of the one element processor via the data bus, the element processor executes the operation. A processing unit and a data memory for storing various data relating to operations, wherein the one element processor writes the data at the grid point of the boundary portion in its own data memory, and the other element processor. Refers to the data of the grid point of the boundary portion stored in the data memory of the one element processor, and combines the adjacent element processors with a fine node connection, and one or more of the elements. Having a coarse node connection in which the element processors are skipped over and the element processors are connected to each other by a coarse node connection. And it features.

【0017】第3の発明に係る情報処理装置における計
算方法は、複数の要素プロセッサと、互いに隣接する前
記要素プロセッサ間を繋ぐ複数のデータバスとを備え、
所定の方程式で記述できる場の支配方程式を求解する際
に用いる格子状に離散化された計算空間を複数の領域に
分割し、前記複数の領域のそれぞれごとに前記要素プロ
セッサを割り当てて、並列的にかつ反復的に演算を行わ
せる情報処理装置を用いた計算方法であって、(a)一
の前記要素プロセッサが、反復的な演算の過程におい
て、隣接する他の前記要素プロセッサにおける演算の過
程に拘わらず、互いに隣接する前記領域同士の境界部分
の格子点のデータを更新する工程と、(b)前記他の要
素プロセッサが、前記一の要素プロセッサに係る前記境
界部分の前記格子点の前記データが前記一の要素プロセ
ッサによって更新されたか否かに拘わらず、前記一の要
素プロセッサに係る前記境界部分の前記格子点の前記デ
ータを前記データバスを介して参照しつつ、反復的な演
算を行う工程とを備え、前記所定の方程式は、微分方程
式を含み、非同期に、かつ独立に前記要素プロセッサを
動作させて前記微分方程式の解を差分法を用いて得るこ
とを特徴とする。
A calculation method in an information processing apparatus according to a third aspect of the present invention comprises a plurality of element processors and a plurality of data buses connecting the element processors adjacent to each other.
A grid-discretized calculation space used when solving a field governing equation that can be described by a predetermined equation is divided into a plurality of regions, and the element processors are assigned to each of the plurality of regions, and parallelized. And (a) a calculation method using an information processing device for repetitively performing an operation, wherein one element processor has an operation step in another element processor adjacent thereto in the process of iterative operation. Regardless of the above, updating the data of the grid points at the boundary between the adjacent areas, and (b) the other element processor, Regardless of whether the data has been updated by the one element processor, the data of the grid point of the boundary portion of the one element processor is transferred to the data buffer. And performing a repetitive operation, the predetermined equation includes a differential equation, and the element processor is operated asynchronously and independently to obtain a solution of the differential equation by a difference method. Is obtained by using.

【0018】第4の発明に係る情報処理装置における計
算方法は、複数の要素プロセッサと、互いに隣接する前
記要素プロセッサ間を繋ぐ複数のデータバスとを備え、
所定の方程式で記述できる場の支配方程式を求解する際
に用いる格子状に離散化された計算空間を複数の領域に
分割し、前記複数の領域のそれぞれごとに前記要素プロ
セッサを割り当てて、並列的にかつ反復的に演算を行わ
せる情報処理装置を用いた計算方法であって、(a)一
の前記要素プロセッサが、反復的な演算の過程におい
て、隣接する他の前記要素プロセッサにおける演算の過
程に拘わらず、互いに隣接する前記領域同士の境界部分
の格子点のデータを更新する工程と、(b)前記他の要
素プロセッサが、前記一の要素プロセッサに係る前記境
界部分の前記格子点の前記データが前記一の要素プロセ
ッサによって更新されたか否かに拘わらず、前記一の要
素プロセッサに係る前記境界部分の前記格子点の前記デ
ータを前記データバスを介して参照しつつ、反復的な演
算を行う工程とを備え、前記要素プロセッサは、演算を
実行するプロセッシングユニット及び演算に関する各種
データを記憶するためのデータメモリを有し、前記工程
(a)において、前記一の要素プロセッサは、前記境界
部分の前記格子点の前記データを自己の前記データメモ
リに書き込み、前記工程(b)において、前記他の要素
プロセッサは、前記一の要素プロセッサの前記データメ
モリに記憶されている前記境界部分の前記格子点の前記
データを参照し、前記格子点の全てに対し前記格子点の
存在する位置が前記場の中の計算領域の内部か外部か、
あるいは前記計算領域内の物体の内部か外部かを示す内
点ビット及び外点ビットを、さらに前記計算領域境界に
位置する前記格子点に対して境界条件の情報を与える境
界条件ビットを、前記要素プロセッサの前記データメモ
リ上に予め与えておき、前記要素プロセッサには前記内
点ビット、前記外点ビット及び前記境界条件ビットによ
り処理を変更することができる同一の計算プログラムを
用いて前記プロセッシングユニットが演算を行うことを
特徴とする。
A calculation method in an information processing apparatus according to a fourth aspect of the present invention comprises a plurality of element processors and a plurality of data buses connecting the element processors adjacent to each other,
A grid-discretized calculation space used when solving a field governing equation that can be described by a predetermined equation is divided into a plurality of regions, and the element processors are assigned to each of the plurality of regions, and parallelized. And (a) a calculation method using an information processing device for repetitively performing an operation, wherein one element processor has an operation step in another element processor adjacent thereto in the process of iterative operation. Regardless of the above, updating the data of the grid points at the boundary between the adjacent areas, and (b) the other element processor, Regardless of whether the data has been updated by the one element processor, the data of the grid point of the boundary portion of the one element processor is transferred to the data buffer. And performing a repetitive operation, the element processor having a processing unit for executing the operation and a data memory for storing various data related to the operation, and the step (a) In the step (b), the one element processor writes the data of the grid point of the boundary portion to the data memory of its own, and in the step (b), the other element processor writes the data of the one element processor. With reference to the data of the grid points of the boundary portion stored in the memory, whether the position where the grid points exist for all of the grid points is inside or outside the calculation area in the field,
Alternatively, the inside point bit and the outside point bit indicating whether the object is inside or outside the calculation area, and the boundary condition bit that gives boundary condition information to the grid point located on the boundary of the calculation area are the elements. The processing unit is given in advance to the data memory of the processor, and the processing unit is provided to the element processor by using the same calculation program whose processing can be changed by the interior point bit, the exterior point bit and the boundary condition bit. It is characterized by performing a calculation.

【0019】第5の発明に係る情報処理装置における計
算方法は、複数の要素プロセッサと、互いに隣接する前
記要素プロセッサ間を繋ぐ複数のデータバスとを備え、
所定の方程式で記述できる場の支配方程式を求解する際
に用いる格子状に離散化された計算空間を複数の領域に
分割し、前記複数の領域のそれぞれごとに前記要素プロ
セッサを割り当てて、並列的にかつ反復的に演算を行わ
せる情報処理装置を用いた計算方法であって、(a)一
の前記要素プロセッサが、反復的な演算の過程におい
て、隣接する他の前記要素プロセッサにおける演算の過
程に拘わらず、互いに隣接する前記領域同士の境界部分
の格子点のデータを更新する工程と、(b)前記他の要
素プロセッサが、前記一の要素プロセッサに係る前記境
界部分の前記格子点の前記データが前記一の要素プロセ
ッサによって更新されたか否かに拘わらず、前記一の要
素プロセッサに係る前記境界部分の前記格子点の前記デ
ータを前記データバスを介して参照しつつ、反復的な演
算を行う工程とを備え、前記要素プロセッサは、演算を
実行するプロセッシングユニット及び演算に関する各種
データを記憶するためのデータメモリを有し、前記工程
(a)において、前記一の要素プロセッサは、前記境界
部分の前記格子点の前記データを自己の前記データメモ
リに書き込み、前記工程(b)において、前記他の要素
プロセッサは、前記一の要素プロセッサの前記データメ
モリに記憶されている前記境界部分の前記格子点の前記
データを参照し、前記プロセッシングユニットは、前記
格子点の全てに対し前記格子点の存在する位置が前記場
の中の計算領域の内部か、あるいは前記計算領域内の物
体の内部か外部かを示す内点ビット及び外点ビットを、
さらに前記計算領域境界に位置する前記格子点に対して
境界条件の情報を与える境界条件ビットを、前記要素プ
ロセッサの前記データメモリにロードしておき、前記内
点ビット、前記外点ビット及び前記境界条件ビットに従
ってデータフローグラフの処理を変更することができる
同一の布線論理に従ったハードウェア回路をさらに備え
る前記情報処理装置を用いることを特徴とする。
A calculation method in an information processing apparatus according to a fifth aspect of the present invention comprises a plurality of element processors and a plurality of data buses connecting the element processors adjacent to each other.
A grid-discretized calculation space used when solving a field governing equation that can be described by a predetermined equation is divided into a plurality of regions, and the element processors are assigned to each of the plurality of regions, and parallelized. And (a) a calculation method using an information processing device for repetitively performing an operation, wherein one element processor has an operation step in another element processor adjacent thereto in the process of iterative operation. Regardless of the above, updating the data of the grid points at the boundary between the adjacent areas, and (b) the other element processor, Regardless of whether the data has been updated by the one element processor, the data of the grid point of the boundary portion of the one element processor is transferred to the data buffer. And performing a repetitive operation, the element processor having a processing unit for executing the operation and a data memory for storing various data related to the operation, and the step (a) In the step (b), the one element processor writes the data of the grid point of the boundary portion to the data memory of its own, and in the step (b), the other element processor writes the data of the one element processor. With reference to the data of the grid points of the boundary portion stored in the memory, the processing unit determines whether the positions where the grid points exist for all the grid points are inside the calculation area in the field. , Or an inside point bit and an outside point bit indicating whether the object is inside or outside the calculation area,
Further, a boundary condition bit that gives boundary condition information to the grid point located on the boundary of the calculation area is loaded in the data memory of the element processor, and the inner point bit, the outer point bit, and the boundary. The information processing apparatus further comprises a hardware circuit according to the same wiring logic capable of changing the processing of the data flow graph according to the condition bit.

【0020】第6の発明に係る情報処理装置における計
算方法は、複数の要素プロセッサと、互いに隣接する前
記要素プロセッサ間を繋ぐ複数のデータバスとを備え、
所定の方程式で記述できる場の支配方程式を求解する際
に用いる格子状に離散化された計算空間を複数の領域に
分割し、前記複数の領域のそれぞれごとに前記要素プロ
セッサを割り当てて、並列的にかつ反復的に演算を行わ
せる情報処理装置を用いた計算方法であって、(a)一
の前記要素プロセッサが、反復的な演算の過程におい
て、隣接する他の前記要素プロセッサにおける演算の過
程に拘わらず、互いに隣接する前記領域同士の境界部分
の格子点のデータを更新する工程と、(b)前記他の要
素プロセッサが、前記一の要素プロセッサに係る前記境
界部分の前記格子点の前記データが前記一の要素プロセ
ッサによって更新されたか否かに拘わらず、前記一の要
素プロセッサに係る前記境界部分の前記格子点の前記デ
ータを前記データバスを介して参照しつつ、反復的な演
算を行う工程とを備え、前記要素プロセッサは、演算を
実行するプロセッシングユニット及び演算に関する各種
データを記憶するためのデータメモリを有し、前記工程
(a)において、前記一の要素プロセッサは、前記境界
部分の前記格子点の前記データを自己の前記データメモ
リに書き込み、前記工程(b)において、前記他の要素
プロセッサは、前記一の要素プロセッサの前記データメ
モリに記憶されている前記境界部分の前記格子点の前記
データを参照し、計算対象となる前記格子点が隣接する
前記領域との境界上にあるため、前記場の支配方程式を
解くための通信回数が少ない前記格子点についてもダミ
ーの通信を行うことにより全ての前記格子点での通信回
数を平準化することを特徴とする。
A calculation method in an information processing apparatus according to a sixth aspect of the present invention comprises a plurality of element processors and a plurality of data buses connecting between the element processors adjacent to each other,
A grid-discretized calculation space used when solving a field governing equation that can be described by a predetermined equation is divided into a plurality of regions, and the element processors are assigned to each of the plurality of regions, and parallelized. And (a) a calculation method using an information processing device for repetitively performing an operation, wherein one element processor has an operation step in another element processor adjacent thereto in the process of iterative operation. Regardless of the above, updating the data of the grid points at the boundary between the adjacent areas, and (b) the other element processor, Regardless of whether the data has been updated by the one element processor, the data of the grid point of the boundary portion of the one element processor is transferred to the data buffer. And performing a repetitive operation, the element processor having a processing unit for executing the operation and a data memory for storing various data related to the operation, and the step (a) In the step (b), the one element processor writes the data of the grid point of the boundary portion to the data memory of its own, and in the step (b), the other element processor writes the data of the one element processor. Communication for solving the governing equation of the field because the data of the grid point of the boundary portion stored in the memory is referred to and the grid point to be calculated is on the boundary with the adjacent region. It is characterized in that the number of times of communication at all the grid points is leveled by performing dummy communication for the grid points having a small number of times.

【0021】第7の発明に係る情報処理装置における計
算方法は、複数の要素プロセッサと、互いに隣接する前
記要素プロセッサ間を繋ぐ複数のデータバスとを備え、
所定の方程式で記述できる場の支配方程式を求解する際
に用いる格子状に離散化された計算空間を複数の領域に
分割し、前記複数の領域のそれぞれごとに前記要素プロ
セッサを割り当てて、並列的にかつ反復的に演算を行わ
せる情報処理装置を用いた計算方法であって、(a)一
の前記要素プロセッサが、反復的な演算の過程におい
て、隣接する他の前記要素プロセッサにおける演算の過
程に拘わらず、互いに隣接する前記領域同士の境界部分
の格子点のデータを更新する工程と、(b)前記他の要
素プロセッサが、前記一の要素プロセッサに係る前記境
界部分の前記格子点の前記データが前記一の要素プロセ
ッサによって更新されたか否かに拘わらず、前記一の要
素プロセッサに係る前記境界部分の前記格子点の前記デ
ータを前記データバスを介して参照しつつ、反復的な演
算を行う工程とを備え、前記要素プロセッサは、演算を
実行するプロセッシングユニット及び演算に関する各種
データを記憶するためのデータメモリを有し、前記工程
(a)において、前記一の要素プロセッサは、前記境界
部分の前記格子点の前記データを自己の前記データメモ
リに書き込み、前記工程(b)において、前記他の要素
プロセッサは、前記一の要素プロセッサの前記データメ
モリに記憶されている前記境界部分の前記格子点の前記
データを参照し、計算対象となる前記格子点が隣接する
前記領域との境界上にあるため、前記場の支配方程式を
解くための演算回数が少ない前記格子点についてもダミ
ーの演算を行うことにより全ての前記格子点での演算回
数を平準化することを特徴とする。
A calculation method in an information processing apparatus according to a seventh invention comprises a plurality of element processors and a plurality of data buses connecting between the element processors adjacent to each other,
A grid-discretized calculation space used when solving a field governing equation that can be described by a predetermined equation is divided into a plurality of regions, and the element processors are assigned to each of the plurality of regions, and parallelized. And (a) a calculation method using an information processing device for repetitively performing an operation, wherein one element processor has an operation step in another element processor adjacent thereto in the process of iterative operation. Regardless of the above, updating the data of the grid points at the boundary between the adjacent areas, and (b) the other element processor, Regardless of whether the data has been updated by the one element processor, the data of the grid point of the boundary portion of the one element processor is transferred to the data buffer. And performing a repetitive operation, the element processor having a processing unit for executing the operation and a data memory for storing various data related to the operation, and the step (a) In the step (b), the one element processor writes the data of the grid point of the boundary portion to the data memory of its own, and in the step (b), the other element processor writes the data of the one element processor. An operation for solving the governing equation of the field because the grid point of the boundary part stored in the memory is referred to and the grid point to be calculated is on the boundary with the adjacent area. It is characterized in that the number of calculations at all the grid points is leveled by performing a dummy calculation for the grid points having a small number of times.

【0022】第8の発明に係る情報処理装置における計
算方法は、複数の要素プロセッサと、互いに隣接する前
記要素プロセッサ間を繋ぐ複数のデータバスとを備え、
所定の方程式で記述できる場の支配方程式を求解する際
に用いる格子状に離散化された計算空間を複数の領域に
分割し、前記複数の領域のそれぞれごとに前記要素プロ
セッサを割り当てて、並列的にかつ反復的に演算を行わ
せる情報処理装置を用いた計算方法であって、(a)一
の前記要素プロセッサが、反復的な演算の過程におい
て、隣接する他の前記要素プロセッサにおける演算の過
程に拘わらず、互いに隣接する前記領域同士の境界部分
の格子点のデータを更新する工程と、(b)前記他の要
素プロセッサが、前記一の要素プロセッサに係る前記境
界部分の前記格子点の前記データが前記一の要素プロセ
ッサによって更新されたか否かに拘わらず、前記一の要
素プロセッサに係る前記境界部分の前記格子点の前記デ
ータを前記データバスを介して参照しつつ、反復的な演
算を行う工程とを備え、前記要素プロセッサは、演算を
実行するプロセッシングユニット及び演算に関する各種
データを記憶するためのデータメモリを有し、前記工程
(a)において、前記一の要素プロセッサは、前記境界
部分の前記格子点の前記データを自己の前記データメモ
リに書き込み、前記工程(b)において、前記他の要素
プロセッサは、前記一の要素プロセッサの前記データメ
モリに記憶されている前記境界部分の前記格子点の前記
データを参照し、隣接する前記格子点が異なる前記要素
プロセッサにまたがって割り当てられた場合、双方の前
記要素プロセッサで互いに相手方へ送信するためにデー
タを時系列的に2組もち、これらの格子点に対するデー
タが更新された場合、更新されたデータが時系列的に前
の組のデータと比較して所定値以下の変位ならば相手方
のデータの書換えをしないことを特徴とする。
A calculation method in an information processing apparatus according to an eighth invention comprises a plurality of element processors and a plurality of data buses connecting the element processors adjacent to each other,
A grid-discretized calculation space used when solving a field governing equation that can be described by a predetermined equation is divided into a plurality of regions, and the element processors are assigned to each of the plurality of regions, and parallelized. And (a) a calculation method using an information processing device for repetitively performing an operation, wherein one element processor has an operation step in another element processor adjacent thereto in the process of iterative operation. Regardless of the above, updating the data of the grid points at the boundary between the adjacent areas, and (b) the other element processor, Regardless of whether the data has been updated by the one element processor, the data of the grid point of the boundary portion of the one element processor is transferred to the data buffer. And performing a repetitive operation, the element processor having a processing unit for executing the operation and a data memory for storing various data related to the operation, and the step (a) In the step (b), the one element processor writes the data of the grid point of the boundary portion to the data memory of its own, and in the step (b), the other element processor writes the data of the one element processor. To refer to the data of the grid points of the boundary part stored in the memory, and when the adjacent grid points are allocated to the different element processors, both element processors transmit to each other. If there are two sets of data in time series and the data for these grid points are updated, the updated data Characterized in that but not the rewriting of the other party of the data if the predetermined value or less displacement compared to the time-series manner before the set of data.

【0023】第9の発明に係る情報処理装置における計
算方法は、複数の要素プロセッサと、互いに隣接する前
記要素プロセッサ間を繋ぐ複数のデータバスとを備え、
所定の方程式で記述できる場の支配方程式を求解する際
に用いる格子状に離散化された計算空間を複数の領域に
分割し、前記複数の領域のそれぞれごとに前記要素プロ
セッサを割り当てて、並列的にかつ反復的に演算を行わ
せる情報処理装置を用いた計算方法であって、(a)一
の前記要素プロセッサが、反復的な演算の過程におい
て、隣接する他の前記要素プロセッサにおける演算の過
程に拘わらず、互いに隣接する前記領域同士の境界部分
の格子点のデータを更新する工程と、(b)前記他の要
素プロセッサが、前記一の要素プロセッサに係る前記境
界部分の前記格子点の前記データが前記一の要素プロセ
ッサによって更新されたか否かに拘わらず、前記一の要
素プロセッサに係る前記境界部分の前記格子点の前記デ
ータを前記データバスを介して参照しつつ、反復的な演
算を行う工程とを備え、前記要素プロセッサは、演算を
実行するプロセッシングユニット及び演算に関する各種
データを記憶するためのデータメモリを有し、前記工程
(a)において、前記一の要素プロセッサは、前記境界
部分の前記格子点の前記データを自己の前記データメモ
リに書き込み、前記工程(b)において、前記他の要素
プロセッサは、前記一の要素プロセッサの前記データメ
モリに記憶されている前記境界部分の前記格子点の前記
データを参照し、隣接する前記要素プロセッサ同士を結
合した細ノード結合と、一つ以上の前記要素プロセッサ
を飛び越して前記要素プロセッサ同士を粗ノード結合コ
ネクションで結合した粗ノード結合とを有する前記情報
処理装置を用いることを特徴とする。
A calculation method in an information processing apparatus according to a ninth aspect comprises a plurality of element processors and a plurality of data buses connecting the element processors adjacent to each other,
A grid-discretized calculation space used when solving a field governing equation that can be described by a predetermined equation is divided into a plurality of regions, and the element processors are assigned to each of the plurality of regions, and parallelized. And (a) a calculation method using an information processing device for repetitively performing an operation, wherein one element processor has an operation step in another element processor adjacent thereto in the process of iterative operation. Regardless of the above, updating the data of the grid points at the boundary between the adjacent areas, and (b) the other element processor, Regardless of whether the data has been updated by the one element processor, the data of the grid point of the boundary portion of the one element processor is transferred to the data buffer. And performing a repetitive operation, the element processor having a processing unit for executing the operation and a data memory for storing various data related to the operation, and the step (a) In the step (b), the one element processor writes the data of the grid point of the boundary portion to the data memory of its own, and in the step (b), the other element processor writes the data of the one element processor. By referring to the data of the grid points of the boundary portion stored in the memory, a fine node connection in which the adjacent element processors are connected to each other, and one or more of the element processors are skipped and the element processors are roughly connected to each other. It is characterized in that the information processing apparatus having the coarse node connection connected by the node connection connection is used.

【0024】[0024]

【作用】第1の発明におけるデータバスによって、隣接
する要素プロセッサ間でデータ通信を行い、そのデータ
を用いて、要素プロセッサが各々非同期に、かつ独立に
動作して計算することにより、要素プロセッサ間の通信
時間を短縮することができる。
According to the first aspect of the present invention, data communication is performed between the adjacent element processors by the data bus, and the element processors operate asynchronously and independently using the data to perform calculation. Communication time can be shortened.

【0025】また、第1の発明における隣接する要素プ
ロセッサ間のデータの通信を、各々の要素プロセッサ毎
に、非同期でかつ繰り返し行うことにより、各要素プロ
セッサ上で行われる演算は、隣接要素プロセッサの処理
を阻害することなく、全く非同期に処理を継続すること
が可能となる。つまり、隣接要素プロセッサの演算を妨
げずに隣接する要素プロセッサ間で通信することができ
る。
Further, the data communication between the adjacent element processors in the first aspect of the invention is performed asynchronously and repeatedly for each element processor, so that the operation performed on each element processor is performed by the adjacent element processors. It is possible to continue the processing completely asynchronously without hindering the processing. That is, it is possible to communicate between the adjacent element processors without hindering the operation of the adjacent element processors.

【0026】さらに、第1の発明における要素プロセッ
サは、隣接する要素プロセッサのデータメモリを直接参
照することによって、互いに隣接する要素プロセッサ間
のデータの通信を、容易に、プロセッシングユニット毎
に、非同期でかつ繰り返し行うことができる。
Further, the element processor according to the first aspect of the present invention directly refers to the data memory of the adjacent element processors to facilitate data communication between the element processors adjacent to each other, asynchronously for each processing unit. And can be repeated.

【0027】さらにまた、第1の発明におけるプロセッ
シングユニットは、格子点の種類に関わらず同一の布線
論理に従ったハードウェア回路によって計算ができるよ
うに、格子点の全てに対し格子点の存在する位置が場の
中の計算領域の内部か、あるいは計算領域内の物体の内
部か外部かを示す内点ビット及び外点ビットを、さらに
計算領域境界に位置する格子点に対して境界条件の情報
を与える境界条件ビットを、要素プロセッサのデータメ
モリにロードしておき、内点ビット、外点ビット及び境
界条件ビットに従ってデータフローグラフの処理を変更
する。
Furthermore, in the processing unit according to the first aspect of the present invention, the existence of grid points for all grid points allows the calculation by a hardware circuit according to the same wiring logic regardless of the kind of grid points. The inside point bit and the outside point bit indicating whether the position to be calculated is inside the calculation area in the field, or inside or outside the object in the calculation area, and the boundary condition of the grid point located on the calculation area boundary. Boundary condition bits that provide information are loaded into the data memory of the element processor, and the processing of the data flow graph is changed according to the inside point bits, outside point bits, and boundary condition bits.

【0028】第2の発明におけるデータバスによって、
隣接する要素プロセッサ間でデータ通信を行い、そのデ
ータを用いて、要素プロセッサが各々非同期に、かつ独
立に動作して計算することにより、要素プロセッサ間の
通信時間を短縮することができる。
According to the data bus of the second invention,
Data communication is performed between adjacent element processors, and by using the data, the element processors operate asynchronously and independently of each other to perform calculation, whereby the communication time between the element processors can be shortened.

【0029】また、第2の発明における隣接する要素プ
ロセッサ間のデータの通信を、各々の要素プロセッサ毎
に、非同期でかつ繰り返し行うことにより、各要素プロ
セッサ上で行われる演算は、隣接要素プロセッサの処理
を阻害することなく、全く非同期に処理を継続すること
が可能となる。つまり、隣接要素プロセッサの演算を妨
げずに隣接する要素プロセッサ間で通信することができ
る。
Further, the data communication between the adjacent element processors according to the second aspect of the present invention is performed asynchronously and repeatedly for each element processor, so that the operation performed on each element processor is performed by the adjacent element processors. It is possible to continue the processing completely asynchronously without hindering the processing. That is, it is possible to communicate between the adjacent element processors without hindering the operation of the adjacent element processors.

【0030】さらに、第2の発明における要素プロセッ
サは、隣接する要素プロセッサのデータメモリを直接参
照することによって、互いに隣接する要素プロセッサ間
のデータの通信を、容易に、プロセッシングユニット毎
に、非同期でかつ繰り返し行うことができる。
Further, the element processor according to the second aspect of the present invention, by directly referring to the data memory of the adjacent element processor, facilitates data communication between the element processors adjacent to each other, asynchronously for each processing unit. And can be repeated.

【0031】さらにまた、第2の発明においては、隣接
する要素プロセッサ同士を結合した細ノード結合と、一
つ以上の要素プロセッサを飛び越して要素プロセッサ同
士を粗ノード結合コネクションで結合した粗ノード結合
とを有することで、粗ノード結合と細ノード結合とを用
いて計算を進め、精度を落とすことなく計算時間の短縮
を行うことができる。
Furthermore, in the second invention, a fine node connection in which adjacent element processors are connected to each other, and a coarse node connection in which one or more element processors are skipped and the element processors are connected to each other by a coarse node connection connection. With the above, it is possible to proceed with the calculation by using the coarse node connection and the fine node connection, and to reduce the calculation time without lowering the accuracy.

【0032】第3の発明におけるデータバスによって、
隣接する要素プロセッサ間でデータ通信を行い、そのデ
ータを用いて、要素プロセッサが各々非同期に、かつ独
立に動作して計算することにより、要素プロセッサ間の
通信時間を短縮することができる。
According to the data bus of the third invention,
Data communication is performed between adjacent element processors, and by using the data, the element processors operate asynchronously and independently of each other to perform calculation, whereby the communication time between the element processors can be shortened.

【0033】また、第3の発明における隣接する要素プ
ロセッサ間のデータの通信を、各々の要素プロセッサ毎
に、非同期でかつ繰り返し行うことにより、各要素プロ
セッサ上で行われる演算は、隣接要素プロセッサの処理
を阻害することなく、全く非同期に処理を継続すること
が可能となる。つまり、隣接要素プロセッサの演算を妨
げずに隣接する要素プロセッサ間で通信することができ
る。
The data communication between the adjacent element processors according to the third aspect of the present invention is performed asynchronously and repeatedly for each element processor, so that the operation performed on each element processor is performed by the adjacent element processors. It is possible to continue the processing completely asynchronously without hindering the processing. That is, it is possible to communicate between the adjacent element processors without hindering the operation of the adjacent element processors.

【0034】さらに、第3の発明における所定の方程式
が、微分方程式であって、微分方程式の解を差分法を用
いて得る際には、計算の対象としている格子点に対して
隣接する格子点以外の格子点の影響がきわめて小さいた
め、精度の高い解析解を得ることができる。
Further, the predetermined equation in the third invention is a differential equation, and when the solution of the differential equation is obtained by using the difference method, the lattice points adjacent to the lattice point to be calculated are Since the influence of the grid points other than is extremely small, it is possible to obtain a highly accurate analytical solution.

【0035】第4の発明におけるデータバスによって、
隣接する要素プロセッサ間でデータ通信を行い、そのデ
ータを用いて、要素プロセッサが各々非同期に、かつ独
立に動作して計算することにより、要素プロセッサ間の
通信時間を短縮することができる。
According to the data bus of the fourth invention,
Data communication is performed between adjacent element processors, and by using the data, the element processors operate asynchronously and independently of each other to perform calculation, whereby the communication time between the element processors can be shortened.

【0036】また、第4の発明における隣接する要素プ
ロセッサ間のデータの通信を、各々の要素プロセッサ毎
に、非同期でかつ繰り返し行うことにより、各要素プロ
セッサ上で行われる演算は、隣接要素プロセッサの処理
を阻害することなく、全く非同期に処理を継続すること
が可能となる。つまり、隣接要素プロセッサの演算を妨
げずに隣接する要素プロセッサ間で通信することができ
る。
The data communication between the adjacent element processors according to the fourth aspect of the invention is performed asynchronously and repeatedly for each element processor, so that the operation performed on each element processor is performed by the adjacent element processors. It is possible to continue the processing completely asynchronously without hindering the processing. That is, it is possible to communicate between the adjacent element processors without hindering the operation of the adjacent element processors.

【0037】さらに、第4の発明における要素プロセッ
サは、隣接する要素プロセッサのデータメモリを直接参
照することによって、互いに隣接する要素プロセッサ間
のデータの通信を、容易に、プロセッシングユニット毎
に、非同期でかつ繰り返し行うことができる。
Furthermore, the element processor according to the fourth aspect of the present invention directly refers to the data memory of the adjacent element processor to facilitate data communication between the element processors adjacent to each other, asynchronously for each processing unit. And can be repeated.

【0038】さらにまた、第4の発明におけるプロセッ
シングユニットは、格子点の種類に関わらず同一の計算
プログラムを用いて演算を行うことができるように、格
子点の全てに対し格子点の存在する位置が場の中の計算
領域の内部か外部か、あるいは計算領域内の物体の内部
か外部かを示す内点ビット及び外点ビットを、さらに計
算領域境界に位置する格子点に対して境界条件の情報を
与える境界条件ビットを、要素プロセッサの前記プログ
ラムメモリ上に予め与えておき、要素プロセッサには内
点ビット、外点ビット及び境界条件ビットにより処理を
変更する。
Furthermore, in the processing unit according to the fourth aspect of the present invention, the positions where the grid points exist for all the grid points so that the same calculation program can be used regardless of the kind of the grid points. The inside point bit and the outside point bit indicating whether is inside or outside the calculation area in the field or inside or outside the object in the calculation area. Boundary condition bits giving information are given in advance in the program memory of the element processor, and the processing is changed by the inner point bit, the outer point bit and the boundary condition bit in the element processor.

【0039】第5の発明におけるデータバスによって、
隣接する要素プロセッサ間でデータ通信を行い、そのデ
ータを用いて、要素プロセッサが各々非同期に、かつ独
立に動作して計算することにより、要素プロセッサ間の
通信時間を短縮することができる。
According to the data bus of the fifth invention,
Data communication is performed between adjacent element processors, and by using the data, the element processors operate asynchronously and independently of each other to perform calculation, whereby the communication time between the element processors can be shortened.

【0040】また、第5の発明における隣接する要素プ
ロセッサ間のデータの通信を、各々の要素プロセッサ毎
に、非同期でかつ繰り返し行うことにより、各要素プロ
セッサ上で行われる演算は、隣接要素プロセッサの処理
を阻害することなく、全く非同期に処理を継続すること
が可能となる。つまり、隣接要素プロセッサの演算を妨
げずに隣接する要素プロセッサ間で通信することができ
る。
Further, the data communication between the adjacent element processors according to the fifth aspect of the present invention is performed asynchronously and repeatedly for each element processor, whereby the operation performed on each element processor is performed by the adjacent element processors. It is possible to continue the processing completely asynchronously without hindering the processing. That is, it is possible to communicate between the adjacent element processors without hindering the operation of the adjacent element processors.

【0041】さらに、第5の発明における要素プロセッ
サは、隣接する要素プロセッサのデータメモリを直接参
照することによって、互いに隣接する要素プロセッサ間
のデータの通信を、容易に、プロセッシングユニット毎
に、非同期でかつ繰り返し行うことができる。
Further, the element processor according to the fifth aspect of the present invention directly refers to the data memory of the adjacent element processors to facilitate data communication between the element processors adjacent to each other, asynchronously for each processing unit. And can be repeated.

【0042】さらにまた、第5の発明におけるプロセッ
シングユニットは、格子点の種類に関わらず同一の布線
論理に従ったハードウェア回路によって計算ができるよ
うに、格子点の全てに対し格子点の存在する位置が場の
中の計算領域の内部か、あるいは計算領域内の物体の内
部か外部かを示す内点ビット及び外点ビットを、さらに
計算領域境界に位置する格子点に対して境界条件の情報
を与える境界条件ビットを、要素プロセッサのデータメ
モリにロードしておき、内点ビット、外点ビット及び境
界条件ビットに従ってデータフローグラフの処理を変更
する。
Furthermore, in the processing unit according to the fifth aspect of the present invention, the existence of grid points for all grid points allows the calculation by a hardware circuit according to the same wiring logic regardless of the kind of grid points. The inside point bit and the outside point bit indicating whether the position to be calculated is inside the calculation area in the field, or inside or outside the object in the calculation area, and the boundary condition of the grid point located on the calculation area boundary. Boundary condition bits that provide information are loaded into the data memory of the element processor, and the processing of the data flow graph is changed according to the inside point bits, outside point bits, and boundary condition bits.

【0043】第6の発明におけるデータバスによって、
隣接する要素プロセッサ間でデータ通信を行い、そのデ
ータを用いて、要素プロセッサが各々非同期に、かつ独
立に動作して計算することにより、要素プロセッサ間の
通信時間を短縮することができる。
According to the data bus of the sixth invention,
Data communication is performed between adjacent element processors, and by using the data, the element processors operate asynchronously and independently of each other to perform calculation, whereby the communication time between the element processors can be shortened.

【0044】また、第6の発明における隣接する要素プ
ロセッサ間のデータの通信を、各々の要素プロセッサ毎
に、非同期でかつ繰り返し行うことにより、各要素プロ
セッサ上で行われる演算は、隣接要素プロセッサの処理
を阻害することなく、全く非同期に処理を継続すること
が可能となる。つまり、隣接要素プロセッサの演算を妨
げずに隣接する要素プロセッサ間で通信することができ
る。
The data communication between the adjacent element processors according to the sixth aspect of the present invention is performed asynchronously and repeatedly for each element processor, so that the operation performed on each element processor is performed by the adjacent element processors. It is possible to continue the processing completely asynchronously without hindering the processing. That is, it is possible to communicate between the adjacent element processors without hindering the operation of the adjacent element processors.

【0045】さらに、第6の発明における要素プロセッ
サは、隣接する要素プロセッサのデータメモリを直接参
照することによって、互いに隣接する要素プロセッサ間
のデータの通信を、容易に、プロセッシングユニット毎
に、非同期でかつ繰り返し行うことができる。
Further, the element processor according to the sixth aspect of the present invention directly refers to the data memory of the adjacent element processors to facilitate data communication between the element processors adjacent to each other, asynchronously for each processing unit. And can be repeated.

【0046】さらにまた、第6の発明における要素プロ
セッサは、通信回数が少ない格子点についてもダミーの
通信を行うことにより、通信回数の少ない格子点の通信
回数を増やすことによって、全ての格子点での通信回数
を平準化する。
Furthermore, the element processor according to the sixth aspect of the present invention performs dummy communication with respect to a grid point with a small number of times of communication, thereby increasing the number of times of communication of a grid point with a small number of times of communication, and Equalize the number of communication of.

【0047】第7の発明におけるデータバスによって、
隣接する要素プロセッサ間でデータ通信を行い、そのデ
ータを用いて、要素プロセッサが各々非同期に、かつ独
立に動作して計算することにより、要素プロセッサ間の
通信時間を短縮することができる。
According to the data bus of the seventh invention,
Data communication is performed between adjacent element processors, and by using the data, the element processors operate asynchronously and independently of each other to perform calculation, whereby the communication time between the element processors can be shortened.

【0048】また、第7の発明における隣接する要素プ
ロセッサ間のデータの通信を、各々の要素プロセッサ毎
に、非同期でかつ繰り返し行うことにより、各要素プロ
セッサ上で行われる演算は、隣接要素プロセッサの処理
を阻害することなく、全く非同期に処理を継続すること
が可能となる。つまり、隣接要素プロセッサの演算を妨
げずに隣接する要素プロセッサ間で通信することができ
る。
The data communication between the adjacent element processors according to the seventh aspect of the invention is performed asynchronously and repeatedly for each element processor, so that the operation performed on each element processor is performed by the adjacent element processors. It is possible to continue the processing completely asynchronously without hindering the processing. That is, it is possible to communicate between the adjacent element processors without hindering the operation of the adjacent element processors.

【0049】さらに、第7の発明における要素プロセッ
サは、隣接する要素プロセッサのデータメモリを直接参
照することによって、互いに隣接する要素プロセッサ間
のデータの通信を、容易に、プロセッシングユニット毎
に、非同期でかつ繰り返し行うことができる。
Further, the element processor according to the seventh aspect of the present invention directly refers to the data memory of the adjacent element processor to facilitate data communication between the element processors adjacent to each other, asynchronously for each processing unit. And can be repeated.

【0050】さらにまた、第7の発明における要素プロ
セッサは、演算回数が少ない格子点についてもダミーの
演算を行うことにより、演算回数が少ない格子点の演算
回数を増やすことによって、全ての格子点での演算回数
を平準化する。
Furthermore, the element processor according to the seventh aspect of the present invention increases the number of times of calculation of the grid points having a small number of calculations by performing a dummy calculation even for the grid points having a small number of calculations so that all the grid points can be calculated. Equalizes the number of calculations of.

【0051】第8の発明におけるデータバスによって、
隣接する要素プロセッサ間でデータ通信を行い、そのデ
ータを用いて、要素プロセッサが各々非同期に、かつ独
立に動作して計算することにより、要素プロセッサ間の
通信時間を短縮することができる。
According to the data bus of the eighth invention,
Data communication is performed between adjacent element processors, and by using the data, the element processors operate asynchronously and independently of each other to perform calculation, whereby the communication time between the element processors can be shortened.

【0052】また、第8の発明における隣接する要素プ
ロセッサ間のデータの通信を、各々の要素プロセッサ毎
に、非同期でかつ繰り返し行うことにより、各要素プロ
セッサ上で行われる演算は、隣接要素プロセッサの処理
を阻害することなく、全く非同期に処理を継続すること
が可能となる。つまり、隣接要素プロセッサの演算を妨
げずに隣接する要素プロセッサ間で通信することができ
る。
Further, the data communication between the adjacent element processors according to the eighth aspect of the present invention is performed asynchronously and repeatedly for each element processor, whereby the operation performed on each element processor is performed by the adjacent element processors. It is possible to continue the processing completely asynchronously without hindering the processing. That is, it is possible to communicate between the adjacent element processors without hindering the operation of the adjacent element processors.

【0053】さらに、第8の発明における要素プロセッ
サは、隣接する要素プロセッサのデータメモリを直接参
照することによって、互いに隣接する要素プロセッサ間
のデータの通信を、容易に、プロセッシングユニット毎
に、非同期でかつ繰り返し行うことができる。
Further, the element processor according to the eighth aspect of the present invention directly refers to the data memory of the adjacent element processors to facilitate data communication between the element processors adjacent to each other, asynchronously for each processing unit. And can be repeated.

【0054】さらにまた、第8の発明における要素プロ
セッサは、隣接する格子点が異なる要素プロセッサにま
たがって割り当てられた場合、双方の要素プロセッサで
互いに相手方から送信されたデータを時系列的に2組も
ち、これらの格子点に対するデータが更新された場合、
更新されたデータが時系列的に前の組のデータと比較し
て所定値以下の変位ならば相手方のデータの書換えをし
ないようにすることで、要素プロセッサ間の不要な通信
を省くことができる。
Furthermore, in the element processor according to the eighth aspect of the invention, when adjacent lattice points are allocated to different element processors, two sets of data transmitted from each other by the other element processors are arranged in time series. If the data for these grid points is updated,
Unnecessary communication between the element processors can be omitted by not rewriting the other party's data if the updated data is displaced by a predetermined value or less compared with the previous set of data in time series. .

【0055】第9の発明におけるデータバスによって、
隣接する要素プロセッサ間でデータ通信を行い、そのデ
ータを用いて、要素プロセッサが各々非同期に、かつ独
立に動作して計算することにより、要素プロセッサ間の
通信時間を短縮することができる。
According to the data bus of the ninth invention,
Data communication is performed between adjacent element processors, and by using the data, the element processors operate asynchronously and independently of each other to perform calculation, whereby the communication time between the element processors can be shortened.

【0056】また、第9の発明における隣接する要素プ
ロセッサ間のデータの通信を、各々の要素プロセッサ毎
に、非同期でかつ繰り返し行うことにより、各要素プロ
セッサ上で行われる演算は、隣接要素プロセッサの処理
を阻害することなく、全く非同期に処理を継続すること
が可能となる。つまり、隣接要素プロセッサの演算を妨
げずに隣接する要素プロセッサ間で通信することができ
る。
Further, the data communication between the adjacent element processors in the ninth aspect of the invention is performed asynchronously and repeatedly for each element processor, so that the operation performed on each element processor is performed by the adjacent element processors. It is possible to continue the processing completely asynchronously without hindering the processing. That is, it is possible to communicate between the adjacent element processors without hindering the operation of the adjacent element processors.

【0057】さらに、第9の発明における要素プロセッ
サは、隣接する要素プロセッサのデータメモリを直接参
照することによって、互いに隣接する要素プロセッサ間
のデータの通信を、容易に、プロセッシングユニット毎
に、非同期でかつ繰り返し行うことができる。
Furthermore, the element processor according to the ninth aspect of the present invention directly refers to the data memory of the adjacent element processors to facilitate data communication between the element processors adjacent to each other, asynchronously for each processing unit. And can be repeated.

【0058】さらにまた、第9の発明においては、隣接
する要素プロセッサ同士を結合した細ノード結合と、一
つ以上の要素プロセッサを飛び越して要素プロセッサ同
士を粗ノード結合コネクションで結合した粗ノード結合
とを有することで、粗ノード結合と細ノード結合とを用
いて計算を進め、精度を落とすことなく計算時間の短縮
を行うことができる。
Furthermore, in the ninth aspect of the invention, a fine node connection in which adjacent element processors are connected to each other and a coarse node connection in which one or more element processors are skipped and the element processors are connected to each other by a coarse node connection connection. With the above, it is possible to proceed with the calculation by using the coarse node connection and the fine node connection, and to reduce the calculation time without lowering the accuracy.

【0059】[0059]

【発明の実施の形態】<実施の形態1>以下、この発明
の第1実施の形態を図について説明する。図1はこの発
明の第1実施の形態におけるマルチプロセッサの全体構
成図である。図1において、1は演算処理を統括するホ
ストコンピュータ、2はホストコンピュータ1の制御の
下で演算処理を行う情報処理装置本体、3は空間的に配
置され情報処理装置2を構成する要素プロセッサ、4は
ホストコンピュータ1と情報処理装置2間を結び情報の
やりとりを行うためのネットワーク、5は各要素プロセ
ッサ3内に設けられ演算を行うためのプロセッシングユ
ニット、6は各要素プロセッサ3内に設けられ情報を格
納するためのメモリ部、7は空間的に配置された要素プ
ロセッサ3相互の間を結び情報のやりとりを行うための
要素プロセッサ間コネクションである。
BEST MODE FOR CARRYING OUT THE INVENTION <First Embodiment> A first embodiment of the present invention will be described below with reference to the drawings. FIG. 1 is an overall configuration diagram of a multiprocessor according to a first embodiment of the present invention. In FIG. 1, 1 is a host computer that controls arithmetic processing, 2 is an information processing apparatus main body that performs arithmetic processing under the control of the host computer 1, 3 is a spatially arranged element processor that constitutes the information processing apparatus 2, Reference numeral 4 is a network for connecting the host computer 1 and the information processing apparatus 2 to exchange information, 5 is a processing unit provided in each element processor 3 for performing calculation, and 6 is provided in each element processor 3. A memory unit 7 for storing information is an inter-element processor connection for connecting the spatially arranged element processors 3 and exchanging information.

【0060】図1の情報処理装置2においては、要素プ
ロセッサ3同士の結合状態は格子状に配置するニアネイ
バメッシュの場合について示すが、例えばリニアアレ
イ、リング、スター、ツリー、シストリックアレイ、完
全結合等の他の結合方式であってもよい。
In the information processing apparatus 2 shown in FIG. 1, the connection state of the element processors 3 is shown in the case of a near neighbor mesh arranged in a lattice, but for example, a linear array, ring, star, tree, systolic array, complete array. Other coupling methods such as coupling may be used.

【0061】次に動作について説明する。ホストコンピ
ュータ1は、ネットワーク4を介して情報処理装置2に
対し、初期条件および境界条件の設定、情報処理装置2
内部の演算の収束判定、情報処理装置2における演算結
果の出力などを行う。各要素プロセッサ3は、要素プロ
セッサ間コネクション7を介して互いに情報交換できる
ように結ばれており、ネットワーク4を介してホストコ
ンピュータ1から情報処理装置2へ送られる制御命令に
従い、初期条件および境界条件を設定されたり、計算の
収束判定のための情報を送出したり、計算結果の送出を
行う。ホストコンピュータ1には、パーソナルコンピュ
ータあるいはワークステーション等が用いられ、ネット
ワーク4を介して情報処理装置2と接続される。
Next, the operation will be described. The host computer 1 sets initial conditions and boundary conditions to the information processing device 2 via the network 4, and sets the information processing device 2
The convergence determination of the internal calculation, the output of the calculation result in the information processing device 2, etc. are performed. The respective element processors 3 are connected to each other via an inter-element processor connection 7 so as to be able to exchange information with each other, and in accordance with a control command sent from the host computer 1 to the information processing apparatus 2 via the network 4, initial conditions and boundary conditions. Is set, information for determining the convergence of calculation is transmitted, and the calculation result is transmitted. A personal computer, a workstation, or the like is used as the host computer 1, and is connected to the information processing device 2 via the network 4.

【0062】各要素プロセッサ3は、プロセッシングユ
ニット5、メモリ部6から構成され、ネットワーク4及
び要素プロセッサ間コネクション7を介してホストコン
ピュータ1から送られてきた初期条件・境界条件をメモ
リ部6に格納し、ホストコンピュータ1からの計算開始
トークンを受け取った後、プロセッシングユニット5に
おいて直ちに所定の演算処理を独立に行い、処理の済ん
だデータをメモリ部6に書き込み、或いは隣接要素プロ
セッサ3のメモリ部6に書き込み、更に計算を続ける機
能を有する。
Each element processor 3 comprises a processing unit 5 and a memory section 6, and stores in the memory section 6 initial conditions and boundary conditions sent from the host computer 1 via the network 4 and the connection 7 between the element processors. Then, after receiving the calculation start token from the host computer 1, the processing unit 5 immediately and independently performs a predetermined arithmetic processing and writes the processed data in the memory unit 6 or the memory unit 6 of the adjacent element processor 3. It has a function to write in and continue calculation.

【0063】要素プロセッサ3は、ハードウエアの構成
方式によって3種類に大別される。図2乃至図4は、種
々の要素プロセッサ3a〜3cのハードウエア構成方式
の例を示すブロック図である。
The element processors 3 are roughly classified into three types according to the hardware configuration method. 2 to 4 are block diagrams showing examples of hardware configuration methods of various element processors 3a to 3c.

【0064】各図において、8はメモリ部6内に設けら
れたデータメモリ、9は要素プロセッサ3内部に設けら
れプロセッシングユニット5とデータメモリ8間を結び
情報のやりとりを行うためのプロセッサ内データバス、
10はプロセッシングユニット5内部に設けられた浮動
小数点演算器、11はプロセッシングユニット5内部に
設けられたプログラムメモリ、12は同じくプロセッシ
ングユニット5内部に設けられた機能モジュール、13
はプロセッシングユニット5内に設けられ布線論理に従
ったデータフローグラフ状のハードウエア回路、14は
データフローグラフ13に従って配置された演算器、1
5はデータフローグラフ13に従って演算器14を結ん
だデータ線である。
In each drawing, 8 is a data memory provided in the memory section 6, 9 is a processor internal data bus provided in the element processor 3 for connecting the processing unit 5 and the data memory 8 and exchanging information. ,
Reference numeral 10 is a floating-point arithmetic unit provided inside the processing unit 5, 11 is a program memory provided inside the processing unit 5, 12 is a functional module also provided inside the processing unit 5, 13
Is a data flow graph-shaped hardware circuit provided in the processing unit 5 in accordance with the wiring logic, 14 is an arithmetic unit arranged according to the data flow graph 13, 1
Reference numeral 5 is a data line connecting the arithmetic units 14 according to the data flow graph 13.

【0065】微分方程式の求解に必要な全演算をハード
ウエアで実現することによって命令レベルでの最大の並
列度を実現可能となる。領域分割法にもとづいたマルチ
プロセッサ解法においては、各プロセッサの命令レベル
での並列性はプロセッサのアーキテクチャに依存してお
り、微分方程式の解法自体が持つ並列性に準処するもの
ではない。図2は、データ処理の流れを布線論理に基づ
くデータフローグラフで実現した要素プロセッサの構成
図である。
The maximum degree of parallelism at the instruction level can be realized by implementing all the operations necessary for the solution of the differential equation by hardware. In the multiprocessor solution based on the domain decomposition method, the parallelism at the instruction level of each processor depends on the architecture of the processor and does not correspond to the parallelism of the solution of the differential equation itself. FIG. 2 is a block diagram of an element processor that realizes the flow of data processing with a data flow graph based on the wiring logic.

【0066】<実施の形態2>この発明の第2実施の形
態を図について説明する。図2はこの発明の第2実施の
形態による情報処理装置を構成する要素プロセッサを示
すブロック図である。図2において、プロセッシングユ
ニット5内には、例えば、各演算器14が図5に示す布
線論理に従ったデータフローグラフ13に沿って配置さ
れ、データ線15によって結線されている。図5は基本
処理の流れを示したデータフローグラフである。図にお
いて、16は演算ノードであり、アーク17に沿って入
力されるデータに対して所定の演算を行い、演算結果を
アーク17に沿って次の演算ノードへ出力する。
<Second Embodiment> A second embodiment of the present invention will be described with reference to the drawings. FIG. 2 is a block diagram showing an element processor constituting an information processing apparatus according to the second embodiment of the present invention. 2, in the processing unit 5, for example, the respective arithmetic units 14 are arranged along the data flow graph 13 according to the wiring logic shown in FIG. 5, and are connected by the data lines 15. FIG. 5 is a data flow graph showing the flow of basic processing. In the figure, reference numeral 16 denotes an operation node, which performs a predetermined operation on the data input along the arc 17 and outputs the operation result to the next operation node along the arc 17.

【0067】演算器14は、例えば、四則演算、論理演
算、メモリ読み出し・書き込み命令、絶対値、指数演算
等を実行する機能を持っている。
The arithmetic unit 14 has a function of executing, for example, four arithmetic operations, a logical operation, a memory read / write instruction, an absolute value, and an exponential operation.

【0068】ネットワーク4を介してホストコンピュー
タ1より送られてくるトークン(ノードアドレスあるい
は計算開始をコールするメッセージ)が、さらにプロセ
ッサ内データバス9を介してプロセッシングユニット5
に入ると、要素プロセッサ3aはまずデータメモリ8、
例えばDRAM(Dynamic Randum Access Memory)、S
RAM、フラッシュメモリ等にアクセスし、蓄えられて
いる自己のプロセッシングユニット5の状態量と、隣接
するプロセッシングユニット5の状態量を吸い上げて必
要なデータが揃えられる。それぞれのデータは演算器1
4の列をデータフローグラフ13の上部から順に通り次
々と演算加工され、自動的に最終演算器14にまで到達
する。
The token (node address or message for calling calculation start) sent from the host computer 1 via the network 4 is further processed via the in-processor data bus 9 to the processing unit 5.
Upon entering, the processor element 3a first detects the data memory 8,
For example, DRAM (Dynamic Randum Access Memory), S
By accessing a RAM, a flash memory, or the like, and sucking up the stored state quantity of its own processing unit 5 and the state quantity of the adjacent processing unit 5, the necessary data is prepared. Each data is arithmetic unit 1
The columns of 4 are sequentially processed from the upper part of the data flow graph 13 to be subjected to arithmetic processing one after another, and reach the final arithmetic unit 14 automatically.

【0069】各データは演算器14の列をデータフロー
グラフ13の上部から順に通り次々と演算加工され、自
動的に最終演算器14にまで到達する一連の演算が終了
すると、プロセッシングユニット5は計算結果をプロセ
ッサ内データバス9を介してデータメモリ8に書き込む
と同時に、要素プロセッサ間コネクション7を通して隣
接する要素プロセッサ3aのデータメモリ8に書き込ん
で一連の演算処理を終了する。この場合、プロセッシン
グユニット5はデータフローグラフ13に記述された一
連の処理のみを実行する専用計算機となり、高い演算処
理速度を得ることができる。
Each data is sequentially processed from the upper part of the data flow graph 13 through the column of the arithmetic unit 14, and when a series of arithmetic operations that automatically reach the final arithmetic unit 14 are completed, the processing unit 5 calculates. At the same time as writing the result to the data memory 8 via the in-processor data bus 9, the result is written to the data memory 8 of the adjacent element processor 3a through the inter-element processor connection 7 to complete a series of arithmetic processing. In this case, the processing unit 5 becomes a dedicated computer that executes only the series of processes described in the data flow graph 13, and a high arithmetic processing speed can be obtained.

【0070】<実施の形態3>次に、この発明の第3実
施の形態を図について説明する。図3はこの発明の第3
実施の形態による情報処理装置を構成する要素プロセッ
サを示すブロック図である。各要素プロセッサ内に書き
換え可能なプログラムメモリを配置することによって、
専用計算機としての機能に柔軟性を持たせることができ
る。図3に示すプロセッシングユニット5は、データフ
ローグラフ13に従った演算器14の配列の代わりに浮
動小数点演算器10とプログラムメモリ11により構成
される。演算はネットワーク4を介してホストコンピュ
ータ1から送られてくるプログラムをさらに要素プロセ
ッサ間コネクション7を介して各要素プロセッサ3bの
プログラムメモリ11にロードして行われる。
<Third Embodiment> Next, a third embodiment of the present invention will be described with reference to the drawings. FIG. 3 shows the third aspect of the present invention.
It is a block diagram showing an element processor which constitutes an information processor by an embodiment. By placing a rewritable program memory in each element processor,
The function as a dedicated computer can be made flexible. The processing unit 5 shown in FIG. 3 includes a floating point arithmetic unit 10 and a program memory 11 instead of the arrangement of the arithmetic units 14 according to the data flow graph 13. The calculation is performed by further loading a program sent from the host computer 1 via the network 4 into the program memory 11 of each element processor 3b via the inter-element processor connection 7.

【0071】プログラムメモリ11の内容は書き換えが
可能であり、ホストコンピュータからネットワーク4を
介してプロセッシングユニット5内のプログラムメモリ
11へ新たなプログラムをロードすることによりプログ
ラムを変更できる。従って、微分方程式の求解のための
アルゴリズムを変更したり、機能を追加したりする際に
は、新しいプログラムをプログラムメモリ11にロード
するのみで可能となる。
The contents of the program memory 11 can be rewritten, and the program can be changed by loading a new program from the host computer to the program memory 11 in the processing unit 5 via the network 4. Therefore, when changing the algorithm for solving the differential equation or adding a function, it is possible to simply load a new program into the program memory 11.

【0072】以上のように演算の高速化のために専用化
した構成のマルチプロセッサでも、プログラムを書き換
えることで、アルゴリズムの変更、機能の追加など柔軟
な機能を有することが可能となる。図3に示したプロセ
ッシングユニットによれば、図2のプロセッシングユニ
ットと比較して、プログラムを変更することによって解
法アルゴリズムを自由に選択・変更でき、計算機の適用
範囲が大きく広がる。
As described above, even a multiprocessor having a dedicated structure for speeding up operations can have flexible functions such as changing algorithms and adding functions by rewriting the program. According to the processing unit shown in FIG. 3, as compared with the processing unit shown in FIG. 2, the solution algorithm can be freely selected and changed by changing the program, and the application range of the computer is greatly expanded.

【0073】要素プロセッサ内に内容の書き換えが可能
なプログラムメモリを設けると、プログラムメモリの内
容を書き換えることによってプログラムを変更し、微分
方程式の求解のためのアルゴリズムやスキームを変更し
たり、機能を追加したりすることを同一ハードウェアで
実現することができる。図1および図3は、各々この発
明の第1実施の形態における各要素プロセッサのプログ
ラムメモリに新たなアルゴリズム、スキーム或いはモデ
ルをロードするための情報処理装置の構成及び要素プロ
セッサの構成を示している。
When a program memory whose contents can be rewritten is provided in the element processor, the program is changed by rewriting the contents of the program memory to change the algorithm or scheme for solving the differential equation or add a function. It is possible to implement the same with the same hardware. 1 and 3 respectively show the configuration of an information processing device and the configuration of an element processor for loading a new algorithm, scheme or model into the program memory of each element processor in the first embodiment of the present invention. .

【0074】図3においては、プログラムメモリ11の
内容は書き換えが可能であり、ホストコンピュータ1か
らネットワーク4を介してプロセッシングユニット5内
のプログラムメモリ11へ新たなプログラムをロードす
ることによりプログラムを変更できる。各要素プロセッ
サ3bにおいては、プログラムメモリ11に書き込まれ
たソフトウェアに従って浮動小数点演算器10を作動さ
せて演算を実施する構成となっている。要素プロセッサ
3bに対する新たなアルゴリズム、スキーム、モデルに
より書かれたプログラムがホストコンピュータ1からイ
ンプットされると、全ての要素プロセッサ3b上のプロ
グラムメモリ11がリセットされ、プログラムがネット
ワーク4及び要素プロセッサ間コネクション7を介して
各要素プロセッサ3bに割り振られ、プログラムメモリ
11のプログラムが書き替えられ、完了次第各要素プロ
セッサ3bは計算を開始できる状態となる。
In FIG. 3, the contents of the program memory 11 can be rewritten, and the program can be changed by loading a new program from the host computer 1 to the program memory 11 in the processing unit 5 via the network 4. . In each element processor 3b, the floating point arithmetic unit 10 is operated according to the software written in the program memory 11 to perform the arithmetic operation. When a program written by a new algorithm, scheme, or model for the element processors 3b is input from the host computer 1, the program memories 11 on all the element processors 3b are reset, and the programs are connected to the network 4 and the connection between the element processors 7 Is allocated to each element processor 3b via the, the program of the program memory 11 is rewritten, and each element processor 3b is ready to start calculation as soon as it is completed.

【0075】以上のように、演算の高速化のために専用
化した構成のマルチプロセッサでも、プログラムを書き
換えることで、スタティックにモデル、アルゴリズム、
スキームを再構成でき、柔軟な機能を有することが可能
となる。
As described above, even in the multiprocessor having a dedicated structure for speeding up the operation, the model, algorithm,
The scheme can be reconfigured and flexible functions can be provided.

【0076】要素プロセッサ内に、ホストコンピュータ
からの指令によって内容の書き換えが可能なデータメモ
リを設けると、データメモリの内容を書き換えることに
よって境界条件を変更し、様々な解析モデルの計算を同
一ハードウェアで実現することができる。
If a data memory whose contents can be rewritten by a command from the host computer is provided in the element processor, boundary conditions are changed by rewriting the contents of the data memory, and various analysis model calculations can be performed by the same hardware. Can be achieved with.

【0077】図1の各要素プロセッサ3は、演算器14
がデータ線15で結ばれたデータフローグラフ13状の
ハード回路を持つか、またはプログラムメモリ11に書
き込まれたソフトウェアに従って浮動小数点演算器10
を作動させるかして演算を実施するよう構成できる。ま
た、ホストコンピュータ1には初期条件設定プログラム
が搭載されており、この設定プログラムによって境界条
件を自由に設定することができる。ホストコンピュータ
1に計算の境界条件がインプットされると、初期条件設
定プログラムが起動され、全ての要素プロセッサ上のデ
ータメモリ8がリセットされ、計算の初期条件及び境界
条件がネットワーク4及び要素プロセッサ間コネクショ
ン7を介して各要素プロセッサ3に割り振られ、完了次
第各要素プロセッサ3は計算開始の待機状態となる。
Each element processor 3 of FIG.
Has a hardware circuit in the form of a data flow graph 13 connected by a data line 15 or the floating point arithmetic unit 10 according to software written in the program memory 11.
Can be operated to perform the calculation. Further, the host computer 1 is equipped with an initial condition setting program, and the boundary condition can be freely set by this setting program. When the calculation boundary conditions are input to the host computer 1, the initial condition setting program is started, the data memories 8 on all the element processors are reset, and the calculation initial conditions and boundary conditions are set to the network 4 and the connection between the element processors. 7 is assigned to each element processor 3 via 7, and upon completion, each element processor 3 enters a waiting state for starting calculation.

【0078】従って、同一のマルチプロセッサ構成の情
報処理装置2を用いて、様々な境界条件や初期条件に対
する演算が、ホストコンピュータに条件を入力するとい
う簡単な手続きで実現できる。
Therefore, by using the information processing device 2 having the same multiprocessor configuration, calculations for various boundary conditions and initial conditions can be realized by a simple procedure of inputting conditions to the host computer.

【0079】<実施の形態4>次に、この発明の第4実
施の形態を図について説明する。図4はこの発明の第4
実施の形態による情報処理装置を構成する要素プロセッ
サを示すブロック図である。図4に示すプロセッシング
ユニット5は、図2及び図3に示したプロセッシングユ
ニットの構成を複合した機能を有するものであり、図4
に示すプロセッシングユニット5においては、微分方程
式の解法に頻出する演算処理機能が機能モジュール12
の中にハード的に回路化して構成されている。計算を実
施する際には、プログラム中に機能モジュール12をコ
ールするコマンドを記述して、必要に応じて機能モジュ
ール12を呼び出して機能させる。従って、図3に示し
たプロセッシングユニットのように、演算処理の全てに
対してソフトウエアが浮動小数点演算器10を機能させ
る場合と比較して、その間の計算時間を大幅に削減する
ことができる。
<Fourth Embodiment> Next, a fourth embodiment of the present invention will be described with reference to the drawings. FIG. 4 shows the fourth aspect of the present invention.
It is a block diagram showing an element processor which constitutes an information processor by an embodiment. The processing unit 5 shown in FIG. 4 has a combined function of the configurations of the processing units shown in FIGS.
In the processing unit 5 shown in FIG. 1, the arithmetic processing function that frequently appears in the solution of the differential equation is the functional module 12
It is configured as a hardware circuit. When performing the calculation, a command for calling the functional module 12 is described in the program, and the functional module 12 is called and made to function as necessary. Therefore, as compared with the case where the software functions the floating-point arithmetic unit 10 for all the arithmetic processing as in the processing unit shown in FIG. 3, the calculation time during that time can be significantly reduced.

【0080】上記の機能を有する各要素プロセッサ3c
は、データ通信用の要素プロセッサ間コネクション7に
よって隣接要素プロセッサ3cと格子状に接続されてお
り、この要素プロセッサ間コネクション7を介して隣接
要素プロセッサ3c間のデータ通信が行われる。また、
全ての要素プロセッサ3cあるいは周辺要素プロセッサ
3cとホストコンピュータ1の間にはネットワーク4が
設けられ、収束判定フラグあるいは計算結果の通信が行
われる。
Each element processor 3c having the above function
Are connected to the adjacent element processors 3c in a grid pattern by the inter-element processor connection 7 for data communication, and the data communication between the adjacent element processors 3c is performed via this inter-element processor connection 7. Also,
A network 4 is provided between all the element processors 3c or peripheral element processors 3c and the host computer 1 to communicate the convergence determination flag or the calculation result.

【0081】<実施の形態5>次に、この発明の第5実
施の形態について図6を用いて説明する。第1実施の形
態に記載の2次元平面上に配した要素プロセッサ3から
構成された2次元計算基板を3次元的に接続することで
3次元計算への拡張も可能である。図6は、2次元計算
基板を3次元的に接続して3次元計算を行うための要素
プロセッサの構成を示す図である。
<Fifth Embodiment> Next, a fifth embodiment of the present invention will be described with reference to FIG. It is also possible to expand to three-dimensional calculation by connecting three-dimensionally a two-dimensional calculation board composed of the element processors 3 arranged on the two-dimensional plane described in the first embodiment. FIG. 6 is a diagram showing a configuration of an element processor for performing three-dimensional calculation by connecting two-dimensional calculation boards in three dimensions.

【0082】図において、1はホストコンピュータ、3
は3次元的に配置された要素プロセッサ、5は要素プロ
セッサ3内に設けられたプロセッシングユニット、6は
要素プロセッサ3内に設けられたメモリ部、4はネット
ワーク、18は要素プロセッサ3を2次元状に接続して
構成される2次元計算基板である。この場合、2次元計
算基板18の時間方向のパイプライン化とは異なり、2
次元計算基板18間に設けられたネットワーク4は、空
間積分のためのデータ授受に使用される。また、要素プ
ロセッサ3同士の3次元アレイ状結合状態も、ネットワ
ーク4の配線を変更することで、格子型トポロジー、ハ
イパーキューブ或いはパイプライン等に自由に変更する
ことが可能である。
In the figure, 1 is a host computer and 3
Is a three-dimensionally arranged element processor, 5 is a processing unit provided in the element processor 3, 6 is a memory section provided in the element processor 3, 4 is a network, 18 is a two-dimensional element processor 3 It is a two-dimensional calculation board configured by connecting to. In this case, unlike the case where the two-dimensional calculation board 18 is pipelined in the time direction,
The network 4 provided between the dimensional calculation boards 18 is used for exchanging data for spatial integration. Further, the connection state of the element processors 3 with each other in a three-dimensional array can be freely changed to a lattice type topology, a hypercube, a pipeline or the like by changing the wiring of the network 4.

【0083】なお、上記実施の形態においては、要素プ
ロセッサ3同士の結合状態は格子状に配置するニアネイ
バメッシュの場合について説明したが、例えば、コーダ
ルリング、3キューブ、2進4キューブ等の他の結合方
式であっても同様の効果を奏することができる。
In the above embodiment, the case where the element processors 3 are connected to each other in the form of a near neighbor mesh arranged in a lattice has been described. The same effect can be obtained even in the case of the coupling method.

【0084】<実施の形態6>次に、この発明の第6実
施の形態を図について説明する。以上示した実施の形態
による構成の情報処理装置2の使用方法ついて説明す
る。図1及び図6に、この発明の第1実施の形態におけ
る各要素プロセッサ3に初期条件及び境界条件を送り出
すためのマルチプロセッサ構成の情報処理装置を示し
た。
<Sixth Embodiment> Next, a sixth embodiment of the present invention will be described with reference to the drawings. A method of using the information processing device 2 having the configuration according to the above-described embodiment will be described. 1 and 6 show an information processing apparatus having a multiprocessor structure for sending initial conditions and boundary conditions to each element processor 3 according to the first embodiment of the present invention.

【0085】情報処理装置2は、各要素プロセッサ3に
おいて、図2に示したように演算器14がデータ線15
で結ばれたデータフローグラフ13状のハード回路を持
つか、または図3及び図4に示したようにプログラムメ
モリ11に書き込まれたソフトウエアに従って浮動小数
点演算器10を作動させるかして演算を実施する構成と
なっている。要素プロセッサ3に対する計算の初期条件
及び境界条件がホストコンピュータ1においてインプッ
トされると、全ての要素プロセッサ3上のデータメモリ
8がリセットされ、計算の初期条件及び境界条件がネッ
トワーク4及び要素プロセッサ間コネクション7を介し
て各要素プロセッサ3に割り振られ、完了次第各要素プ
ロセッサ3は計算開始の待機状態となる。
In each of the element processors 3 of the information processing device 2, as shown in FIG.
A floating point arithmetic unit 10 is operated according to the software written in the program memory 11 as shown in FIG. 3 and FIG. It is configured to be implemented. When the initial conditions for calculation and boundary conditions for the element processors 3 are input in the host computer 1, the data memories 8 on all the element processors 3 are reset, and the initial conditions for calculation and boundary conditions are the network 4 and the connection between the element processors. 7 is assigned to each element processor 3 via 7, and upon completion, each element processor 3 enters a waiting state for starting calculation.

【0086】従って、情報処理装置2では、同一のマル
チプロセッサの構成を用いて、様々な境界条件や初期条
件に対する演算が、ホストコンピュータに条件を入力す
るという簡単な手続きで実現できる。
Therefore, in the information processing apparatus 2, using the same multiprocessor configuration, operations for various boundary conditions and initial conditions can be realized by a simple procedure of inputting conditions to the host computer.

【0087】情報処理装置2の使用例として、領域分割
法に基づいた流体数値解析について説明する。連続体で
ある流体は、一般的に連続式とナビエ・ストークス方程
式と呼ばれる非線形性の強い方程式で記述される。これ
らの偏微分方程式によって記述される場の支配方程式を
有限差分法によって解く場合、まず対象とする現象と領
域を空間的・時間的に有限の大きさを持つ微小要素(格
子)に分割する。この格子上で偏微分方程式で表される
支配方程式を離散化して差分式に変形し、差分式を求解
することで解を得る。差分解法では、微小な空間要素が
有する状態量は、ごく近傍の要素が有する状態量にのみ
影響を受けるが、この効果は計算上では隣接要素の持つ
状態量に演算処理を施すかたちで実現される。つまり、
空間的に離れた微小要素は、お互いに影響を与えること
なく隣接する微小要素の影響のみを考慮しさえすれば、
独立して計算可能であることがわかる。
As a usage example of the information processing apparatus 2, a fluid numerical analysis based on the area division method will be described. A fluid that is a continuum is generally described by a continuous equation and an equation with strong nonlinearity called Navier-Stokes equation. When solving the field governing equation described by these partial differential equations by the finite difference method, first, the target phenomenon and region are divided into minute elements (lattices) having a finite size spatially and temporally. A solution is obtained by discretizing the governing equation represented by a partial differential equation on this lattice, transforming it into a difference equation, and solving the difference equation. In the difference decomposition method, the state quantity of a minute spatial element is affected only by the state quantity of an element in the immediate vicinity, but this effect is realized by calculating the state quantity of an adjacent element in the calculation. It That is,
Small elements that are spatially separated do not affect each other, and only consider the effects of adjacent minute elements.
It turns out that it can be calculated independently.

【0088】例えば、非圧縮性流体をSIMPLE(Se
mi-Implicit Method for Pressure-Linked Equatiens)
法(仮定圧力下で運動方程式を解き、連続性を満たさな
い分だけ、圧力及び速度を補正しながら最終的に連続則
を満足する解を得る手法、例えば、S.V.Patankar,Numer
ical Heat Transfer and Fluid Flow,(1980),McGRAW-HI
LL BOOK COMPANYに記載されている。)で解くことを考
える。
For example, SIMPLE (Se
mi-Implicit Method for Pressure-Linked Equatiens)
Method (a method of solving the equation of motion under an assumed pressure and finally obtaining a solution that satisfies the continuity law while correcting the pressure and velocity by the amount that does not satisfy the continuity, for example, SVPatankar, Numer
ical Heat Transfer and Fluid Flow, (1980), McGRAW-HI
It is described in LL BOOK COMPANY. ) To solve.

【0089】図70は、従来より行われているSIMP
LE法による流体数値解析の計算手順を示すフローチャ
ートである。図において、211はナビエ・ストークス
の運動方程式を解くルーチン群、212は圧力補正式を
解くルーチン群、213は速度・圧力の修正を行うルー
チン、214は非線形性収束のための反復サイクル、2
15は時間進行のための計算サイクルを表す。すなわ
ち、SIMPLE法による熱流体解析の手順は、ルーチ
ン群211による離散化されたナビエ・ストークス運動
方程式の求解、ルーチン群212による圧力補正式の求
解、そしてルーチン213による速度・圧力の決定方程
式の求解を順次実施し、さらに時間進行のための計算サ
イクル215を繰り返すことで数値解析解を得る。
FIG. 70 shows a conventional SIMP.
It is a flow chart which shows a calculation procedure of fluid numerical analysis by LE method. In the figure, 211 is a group of routines for solving Navier-Stokes equations of motion, 212 is a group of routines for solving pressure correction equations, 213 is a routine for correcting velocity / pressure, 214 is an iterative cycle for nonlinear convergence,
Reference numeral 15 represents a calculation cycle for time progress. That is, the procedure of thermofluid analysis by the SIMPLE method is as follows: Solving the discretized Navier-Stokes equation of motion by the routine group 211, solving the pressure correction equation by the routine group 212, and solving the velocity / pressure determining equation by the routine 213. Is sequentially performed, and the calculation cycle 215 for time progress is repeated to obtain a numerical analysis solution.

【0090】最近盛んに行われているマルチプロセッサ
を使った並列解法においては、全計算空間を複数の領域
に分割し、各領域ごとに要素プロセッサを割り振って、
要素プロセッサ間では境界の状態量のみをデータ通信す
るという領域分割法が主流となっている。
In the parallel solution method using a multiprocessor which has been actively used recently, the entire calculation space is divided into a plurality of areas, and element processors are allocated to each area,
The area division method, in which only the state quantity at the boundary is communicated between element processors, is the mainstream method.

【0091】ここで問題となるのが要素プロセッサ3間
の通信に関する同期待ちである。現在の汎用並列プロセ
ッサでは、プロセッサ間のデータ通信をパケット通信な
どによる低速のリモートメモリアクセスで実現している
ため、要素プロセッサ数に対して通信量をできる限り少
なくした粒度の大きい計算アルゴリズムを使用し、通信
同期待ちをできる限り回避するテクニックが必要とな
る。しかし、超並列に要素プロセッサを構成した場合の
同期待ちの急激な増加は避けられず、プロセッサ数に比
例した並列度は期待できない。
The problem here is the synchronization waiting for communication between the element processors 3. In the current general-purpose parallel processors, data communication between processors is realized by low-speed remote memory access such as packet communication.Therefore, use a large-scale calculation algorithm that minimizes the amount of communication with the number of element processors. , It is necessary to have a technique to avoid waiting for communication synchronization as much as possible. However, when the element processors are configured in a massively parallel fashion, a sharp increase in synchronization waiting is unavoidable, and parallelism proportional to the number of processors cannot be expected.

【0092】そこで、運動方程式および圧力修正方程式
が共に隣接格子点の状態量を参照するのみで解かれて
も、その解は十分な精度を有することに着目して、各格
子点についてそれぞれ独自に状態量を計算する新しいS
IMPLE法について示す。図7は、この実施の形態に
おける格子点=1,=2,・・・,=nが他の格子点計
算に割り込み動作をすることなく、それぞれ独立に状態
量を計算する演算アルゴリズムを示したフローチャート
である。
Therefore, even if both the motion equation and the pressure correction equation are solved only by referring to the state quantities of the adjacent grid points, the solution has sufficient accuracy, and each grid point is uniquely identified. New S to calculate state quantity
The IMPLE method will be described. FIG. 7 shows an arithmetic algorithm in which the lattice points = 1, = 2, ..., = n in this embodiment independently calculate the state quantity without interrupting other lattice point calculations. It is a flowchart.

【0093】図において、20はナビエ・ストークスの
運動方程式を解くルーチン群、21は圧力補正式を解く
ルーチン群、22は速度・圧力の修正を行うルーチン、
23は非線形性収束のための反復サイクル、24は時間
進行のための計算サイクル、25は格子点=1,=2,
・・・,=n毎に割り当てられた要素プロセッサ3のル
ーチン群である。
In the figure, 20 is a routine group for solving the Navier-Stokes equation of motion, 21 is a routine group for solving a pressure correction equation, 22 is a routine for correcting velocity / pressure,
23 is an iterative cycle for convergence of nonlinearity, 24 is a calculation cycle for time progression, 25 is a grid point = 1, = 2
..., = A group of routines of the element processor 3 assigned for each n.

【0094】ここで、非圧縮性2次元層流の流体数値解
析を例に取り、具体的なアルゴリズムを示す。温度場を
考慮しない場合、流体は以下の3つの無次元化方程式に
よって記述される。
Here, a specific algorithm will be shown by taking the numerical analysis of fluid of incompressible two-dimensional laminar flow as an example. Without considering the temperature field, the fluid is described by the following three dimensionless equations.

【0095】連続式は、数1に示され、運動量保存式
は、数2及び数3に示される。
The continuous equation is shown in equation 1, and the momentum conservation equation is shown in equations 2 and 3.

【0096】[0096]

【数1】 [Equation 1]

【0097】[0097]

【数2】 [Equation 2]

【0098】[0098]

【数3】 [Equation 3]

【0099】ここで各記号は、uがx方向速度成分、v
がy方向速度成分、pが圧力、Reがレイノルズ数を表
す。数1〜数3は一意に数4で表現できる。ここでφは
任意変数、Γは拡散項、Su,Spは生成項を表し、以
下の表1の値をとる。
Here, in each symbol, u is a velocity component in the x direction, v
Is the velocity component in the y direction, p is the pressure, and Re is the Reynolds number. The numbers 1 to 3 can be uniquely expressed by the number 4. Here, φ is an arbitrary variable, Γ is a diffusion term, and Su and Sp are generation terms, and take the values shown in Table 1 below.

【0100】[0100]

【数4】 [Equation 4]

【0101】[0101]

【表1】 [Table 1]

【0102】数4を差分化する際に必要となるコントロ
ールボリュームを図8に示す。任意変数φをコントロー
ルボリューム26の中心点P27に置き、隣接するφの
位置をE(East)28、W(west)29、N
(North)30、S(South)31と定義して
それらの中心点(コントロールボリューム26の境界と
格子線との交点)を小文字(e,w,n,s)で表示す
る。スタッガード(Staggered)グリッドであ
るため、スカラー量は大文字の位置に、ベクトル量(速
度)を小文字の位置に配置する。さて、数4を、時間差
分スキームとしてオイラー前進(Euler expl
icit)法を適用し、コントロールボリューム26に
出入りする流速を考えて離散化すると、数5のようにな
る。
FIG. 8 shows the control volume required when the equation 4 is differentiated. An arbitrary variable φ is placed at the center point P27 of the control volume 26, and the adjacent positions of φ are E (East) 28, W (west) 29, N.
(North) 30 and S (South) 31 are defined, and their center points (intersection points of the boundaries of the control volume 26 and the grid lines) are displayed in lower case (e, w, n, s). Since it is a staggered grid, the scalar quantity is placed in the uppercase position, and the vector quantity (velocity) is placed in the lowercase position. By the way, using Equation 4 as a time difference scheme, Euler exponential
icit method is applied and discretized considering the flow velocity entering and exiting the control volume 26, the result is as shown in Formula 5.

【0103】[0103]

【数5】 [Equation 5]

【0104】φが格子間で線形に分布し、かつe,w,
n,sがそれぞれPとE、PとW、PとN、PとSの中
点であるとすると、数6から数9が仮定できる。
Φ is linearly distributed between the lattices, and e, w,
Assuming that n and s are the midpoints of P and E, P and W, P and N, and P and S, the following equations 6 to 9 can be assumed.

【0105】[0105]

【数6】 [Equation 6]

【0106】[0106]

【数7】 [Equation 7]

【0107】[0107]

【数8】 [Equation 8]

【0108】[0108]

【数9】 [Equation 9]

【0109】数5をコントロールボリュームにわたって
積分すると、数10が得られる。
Integrating equation 5 over the control volume yields equation 10.

【0110】[0110]

【数10】 [Equation 10]

【0111】ここで、対流項Cと拡散項Dに関して数1
1及び数12のように定義する。ここで、添字はコント
ロールボリューム26の境界面の位置を示す。
Here, with respect to the convection term C and the diffusion term D,
It is defined as 1 and Equation 12. Here, the subscript indicates the position of the boundary surface of the control volume 26.

【0112】[0112]

【数11】 [Equation 11]

【0113】[0113]

【数12】 [Equation 12]

【0114】数11および数12の定義を使うと数10
は数13のようになる。
Using the definitions of the equations 11 and 12, the equation 10
Is like Equation 13.

【0115】[0115]

【数13】 [Equation 13]

【0116】この数13に空間差分スキームとしてハイ
ブリッド・スキームを適用し、φに関して整理すると、
数14のようになる。
Applying the hybrid scheme as the spatial difference scheme to this equation 13 and rearranging with respect to φ,
It becomes like the number 14.

【0117】[0117]

【数14】 [Equation 14]

【0118】時間差分法としては陽解法、陰解法、半陰
解法等様々なものが考えられるが、ここでは最終的に定
常解を求めることを目標とし、収束加速計算技法として
数13の右辺に含まれるφpを次時間の値φp n+1で評価
すると、数14より、数15の離散化方程式を得ること
ができる。
Although various methods such as an explicit method, an implicit method, and a semi-implicit method can be considered as the time difference method, the goal here is to finally obtain a stationary solution, and the convergence acceleration calculation technique is included in the right side of Equation 13. If φ p is evaluated by the next time value φ p n + 1 , the discretization equation of Equation 15 can be obtained from Equation 14.

【0119】[0119]

【数15】 [Equation 15]

【0120】SIMPLE法によって導出した離散化方
程式の未知数である速度と圧力の関係付けを行う。まず
運動方程式数2、数3の離散化方程式を導く。変数φは
u、vであり、速度uについては数16から数19を定
義すると、離散化方程式は数20のようになり、速度v
については数21から数24を定義すると、離散化方程
式は数25のようになる。
The velocity and pressure, which are unknown values of the discretized equation derived by the SIMPLE method, are related. First, the discretized equations of the equations of motion 2 and 3 are derived. The variables φ are u and v, and when the equations 16 to 19 are defined for the velocity u, the discretization equation becomes as shown in the equation 20, and the velocity v
When the equations (21) to (24) are defined for, the discretization equation becomes as shown in equation (25).

【0121】速度uについてのw面の係数を数16に示
す。
Equation 16 shows the coefficient of the w plane for the velocity u.

【0122】[0122]

【数16】 [Equation 16]

【0123】速度uについてのe面の係数を数17に示
す。
Equation 17 shows the coefficient of the e-plane for the velocity u.

【0124】[0124]

【数17】 [Equation 17]

【0125】速度uについてのs面の係数を数18に示
す。
Equation 18 shows the coefficient of the s-plane for the velocity u.

【0126】[0126]

【数18】 [Equation 18]

【0127】速度uについてのn面の係数を数19に示
す。
Equation 19 shows the coefficient of the n-plane for the velocity u.

【0128】[0128]

【数19】 [Formula 19]

【0129】[0129]

【数20】 [Equation 20]

【0130】速度vについてのw面の係数を数21に示
す。
Equation 21 shows the coefficient of the w plane for the velocity v.

【0131】[0131]

【数21】 [Equation 21]

【0132】速度vについてのe面の係数を数22に示
す。
Equation 22 shows the coefficient of the e-plane for the velocity v.

【0133】[0133]

【数22】 [Equation 22]

【0134】速度vについてのs面の係数を数23に示
す。
Equation 23 shows the coefficient of the s-plane for the velocity v.

【0135】[0135]

【数23】 [Equation 23]

【0136】速度vについてのn面の係数を数24に示
す。
Equation 24 shows the coefficient of the n-plane for the velocity v.

【0137】[0137]

【数24】 [Equation 24]

【0138】[0138]

【数25】 [Equation 25]

【0139】数20を解くことによってP点での仮定流
速u*を求めることができる。数25を解くことによっ
てP点での仮定流速v*を求めることができる。数2
0、数25から得られた仮定値u*,v*と、同式を導く
際に必要なFpを使って圧力補正方程式の係数を決定
し、圧力補正値p´を求める。数26に圧力補正方程式
を示す。ただし、式中の添字eとnは各々East側、
North側の要素プロセッサから転送されてきた値で
あることを示す。
By solving the equation 20, the assumed flow velocity u * at the point P can be obtained. By solving the equation 25, the assumed flow velocity v * at the point P can be obtained. Number 2
The coefficient of the pressure correction equation is determined by using the assumed values u * , v * obtained from Equation 0 and Equation 25 and F p necessary for deriving the equation, and the pressure correction value p ′ is obtained. Equation 26 shows a pressure correction equation. However, the subscripts e and n in the formula are respectively on the East side,
Indicates that the value has been transferred from the element processor on the North side.

【0140】[0140]

【数26】 [Equation 26]

【0141】速度および圧力はWest側とSouth
側の要素プロセッサから転送されてきた圧力補正値p´
を用いて数27から数29の式で計算される。
Speed and pressure are on the West side and South
Pressure correction value p ′ transferred from the element processor on the side
Is calculated by the equations 27 to 29.

【0142】[0142]

【数27】 [Equation 27]

【0143】[0143]

【数28】 [Equation 28]

【0144】[0144]

【数29】 [Equation 29]

【0145】計算格子点は、一般に離散化された点は物
体の内部であったり、壁の近傍であったり、流入・流出
口であったりと様々な種類が考えられる。計算プログラ
ム(ソフトウエア)あるいは演算回路(ハードウエア)
を点の種類にあわせて何種類も用意するのは、プログラ
ミングを大変繁雑にしてしまう。そこで、各点の位置情
報を内点及び外点ビットと境界条件ビットの形で初期条
件として各要素プロセッサのメモリ上に与えておき、計
算自体は全く同一のプログラムを実行できるようにす
る。
Various types of calculation grid points are generally considered, such as discrete points inside the object, near the wall, and inflow / outflow points. Calculation program (software) or arithmetic circuit (hardware)
Providing many types according to the types of points makes programming very complicated. Therefore, the position information of each point is given in the form of inner and outer point bits and boundary condition bits as an initial condition on the memory of each element processor, so that the calculation itself can execute exactly the same program.

【0146】計算領域の内点と外点の区別もビットを使
用して行う。離散化点が物体内部にあるときを外点、流
体部にあるときを内点とする。内点・外点ビットは変数
u,v,pそれぞれについて定義され、内点を1(o
n)、外点を0(off)とする。例えば、uに対する
フラグをbit(u)とすると、uの離散化方程式の係
数を決定する前に次の演算処理を施す。
A bit is also used to distinguish between the inside point and the outside point of the calculation area. When the discretized point is inside the object, it is defined as the outer point, and when it is located in the fluid part, the inner point is defined. The interior and exterior points bits are defined for each of the variables u, v, p, and the interior point is 1 (o
n), and the outer point is 0 (off). For example, if the flag for u is bit (u), the following arithmetic processing is performed before determining the coefficient of the discretization equation of u.

【0147】[0147]

【数30】 [Equation 30]

【0148】境界条件については、以下に示す種類の境
界条件の設定が可能とする。変数u,v,pのそれぞれ
がウォール・ファンクション(Wall Function)を使用
するか否かを示すフラグを持つ。但し、どの面に壁面が
在るかを判断するためにw,e,s,nそれぞれの方向
別にビットを設定する。u及びvの離散化方程式の係数
を決定する前に数31から数33の演算処理を施す。
Regarding the boundary conditions, the following types of boundary conditions can be set. Each of the variables u, v, and p has a flag indicating whether or not to use a wall function. However, a bit is set for each direction of w, e, s, and n in order to determine which surface the wall surface is on. Before determining the coefficients of the discretization equations of u and v, the arithmetic processing of Expressions 31 to 33 is performed.

【0149】ウォール・ファンクション(Wall Functio
n)を使った壁面条件を数31に示す。
Wall Function (Wall Functio
The wall surface condition using n) is shown in Equation 31.

【0150】[0150]

【数31】 [Equation 31]

【0151】勾配0の流出条件を数32に示す。The outflow condition with a gradient of 0 is shown in equation 32.

【0152】[0152]

【数32】 [Equation 32]

【0153】境界値固定を数33に示す。The boundary value fixing is shown in equation 33.

【0154】[0154]

【数33】 [Expression 33]

【0155】数32と数33を合わせて変数φpは数3
4のように記述できる。
By combining the equations 32 and 33, the variable φ p is the equation 3
It can be described as 4.

【0156】[0156]

【数34】 [Equation 34]

【0157】各計算セルで必要な演算に着目すると、流
体の支配方程式の特性上、境界条件の違いこそあれほと
んど同一の演算を行うことになる。上記の境界条件設定
に従い、各種のビットを立てることによってデータメモ
リ8上に初期的に境界条件をマッピングしさえすれば、
計算セルが計算空間の境界、内点、外点のどれに位置す
るかに関わらず同一のプログラムを使用できる。従っ
て、要素プロセッサ3のプログラムメモリ11上には1
格子点の物理量を計算するのに必要な一連の演算を記述
するプログラムをロードするだけでよい。その1種類の
演算プログラムを使用し、計算格子を順次スイープして
計算するには、まず計算格子の格子点番号(またはデー
タメモリ8上のベースアドレス)を入力トークンとして
要素プロセッサ3内の循環型パイプライン(図21の8
4)上に流す、例えば入力トークンである格子点番号を
2とすれば、演算器は2番目の格子点に割り振られたメ
モリ領域とアクセスをして計算を開始する。トークンの
入力には順序制限はないので、1,2,3・・・とシー
クエンシャルに計算を進めることはもちろん、ランダム
に格子番号を入力することも可能である。
Focusing on the necessary calculation in each calculation cell, almost the same calculation is performed due to the characteristics of the governing equations of the fluid, although the boundary conditions are different. According to the above boundary condition setting, if the boundary conditions are initially mapped on the data memory 8 by setting various bits,
The same program can be used regardless of whether the calculation cell is located at the boundary of calculation space, inside point, or outside point. Therefore, 1 is stored in the program memory 11 of the element processor 3.
All you have to do is load a program that describes the sequence of operations required to calculate the physical quantity of the grid points. In order to perform the calculation by sequentially sweeping the calculation grid using the one type of calculation program, first, the grid type number of the calculation grid (or the base address in the data memory 8) is used as an input token to make the cyclic type in the element processor 3. Pipeline (8 in FIG. 21)
4) If the lattice point number which is the input token, for example, is 2, the arithmetic unit accesses the memory area allocated to the second lattice point and starts calculation. Since there is no order restriction on the input of tokens, it is possible to input the lattice numbers randomly as well as to sequentially proceed with the calculation such as 1, 2, 3 ...

【0158】図9は、要素プロセッサに設けられたデー
タメモリ内部のデータ構造を示す図である。図に示すよ
うに、要素プロセッサ3に設けられたデータメモリ8の
内部は、1プロセッサが受け持つ格子点数と同数のパー
ティション32に分割され、それぞれのパーティション
32には1格子点を計算するのに必要となるデータがマ
ッピングされている。
FIG. 9 is a diagram showing the data structure inside the data memory provided in the element processor. As shown in the figure, the inside of the data memory 8 provided in the element processor 3 is divided into the same number of partitions 32 as the number of grid points handled by one processor, and each partition 32 is required to calculate one grid point. The following data is mapped.

【0159】図10及び図11は、以上述べてきたアル
ゴリズムの流れを示すフローチャートである。図におい
て、33ないし63は各々以下に示すAからIの各計算
機能である。
FIGS. 10 and 11 are flowcharts showing the flow of the algorithm described above. In the figure, reference numerals 33 to 63 denote respective calculation functions of A to I shown below.

【0160】(a)要素プロセッサ3は、x方向運動方
程式を解いて予測値u*を求める機能を有する。図にお
いて、33はuのw面に対する計算で、x方向運動方程
式の係数Fwを求める機能A(u)、34はuのe面に
対する計算で、x方向運動方程式の係数Feを求める機
能B(u)、35はuのs面に対する計算で、x方向運
動方程式の係数Fsを求める機能C(u)、36は、u
のn面に対する計算で、x方向運動方程式の係数Fn
求める機能D(u)、37はx方向運動方程式の生成項
Gを求める機能E(u)、43はx方向運動方程式の係
数Fpを求め、各種係数と生成項より予測値u*を求める
機能G(u)である。
(A) The element processor 3 has a function of solving the x-direction equation of motion to obtain the predicted value u * . In the figure, 33 is a calculation for the w plane of u, a function A (u) for obtaining the coefficient F w of the equation of motion in the x direction, and 34 is a calculation for the e plane of u, a function for obtaining the coefficient F e of the equation of motion for the x direction. B (u), 35 is a calculation of u on the s plane, and the function C (u), 36 for obtaining the coefficient F s of the equation of motion in the x direction is u
Is a function D (u) for obtaining the coefficient F n of the x-direction equation of motion, 37 is a function E (u) for obtaining the generating term G of the x-direction equation of motion, and 43 is a coefficient F of the x-direction equation of motion. This is a function G (u) that obtains p and obtains a predicted value u * from various coefficients and the generated term.

【0161】(b)要素プロセッサ3は、y方向運動方
程式を解いて予測値v*を求める機能を有する。図にお
いて、38はvのw面に対する計算で、y方向運動方程
式の係数Fwを求める機能A(v)、39はvのe面に
対する計算で、y方向運動方程式の係数Feを求める機
能B(v)、40はvのs面に対する計算で、y方向運
動方程式の係数Fsを求める機能C(v)、41はvの
n面に対する計算で、y方向運動方程式の係数Fnを求
める機能D(v)、42はy方向運動方程式の生成項G
を求める機能E(v)、44はy方向運動方程式の係数
pを求め、各種係数と生成項より予測値v*を求める機
能G(v)である。
(B) The element processor 3 has a function of solving the equation of motion in the y direction to obtain the predicted value v * . In the figure, reference numeral 38 denotes a calculation of v on the w plane, which is a function A (v) for obtaining the coefficient F w of the y-direction motion equation, and 39 is calculation for v on the e surface, which is a function of obtaining the coefficient F e of the y-direction motion equation. B (v), 40 is a calculation of v on the s-plane, and a function C (v) for obtaining a coefficient F s of the equation of motion in the y-direction is denoted by C (v), 41 is a calculation of v on the n-plane, and a coefficient F n of the equation of motion of the y-direction is calculated. The function D (v), 42 to be obtained is the generation term G of the equation of motion in the y direction.
The seek function E (v), 44 obtains a coefficient F p in the y direction the equation of motion is a function determining the more product terms with various coefficient prediction value v * G (v).

【0162】(c)要素プロセッサ3は、圧力補正値p
´を求める機能を有する。図において、51はp´方程
式の生成項Gを求める機能F、52は運動方程式の係数
とFで求めた生成項をもとにp´の方程式を解いてp´
を求める機能G(p)である。
(C) The element processor 3 uses the pressure correction value p
It has the function of seeking ´. In the figure, 51 is a function F for finding the generating term G of the p ′ equation, and 52 is a solution of the equation p ′ based on the coefficient of the equation of motion and the generating term found by F to solve p ′.
Is a function G (p) for obtaining

【0163】(d)要素プロセッサ3は、流速と圧力を
補正する機能を有する。図において、55はp´をもと
にu,v,pを求める機能Hである。
(D) The element processor 3 has a function of correcting the flow velocity and the pressure. In the figure, 55 is a function H for obtaining u, v, p based on p '.

【0164】(e)要素プロセッサ3は、境界条件を設
定する機能を有する。図において、45,46,57〜
59は初期値で与えられたビットデータをもとに境界条
件を設定する機能Iである。
(E) The element processor 3 has a function of setting boundary conditions. In the figure, 45, 46, 57-
Reference numeral 59 is a function I for setting the boundary condition based on the bit data given by the initial value.

【0165】(f)要素プロセッサ3は、設定された境
界条件を転送する機能を有する。図において、47,4
8,53,56,60〜62はそれぞれ前の工程で設定
された境界条件を隣接する要素プロセッサ3に転送する
機能である。
(F) The element processor 3 has a function of transferring the set boundary condition. In the figure, 47, 4
Reference numerals 8, 53, 56, and 60 to 62 each have a function of transferring the boundary condition set in the previous step to the adjacent element processor 3.

【0166】(g)要素プロセッサ3は、計算された境
界条件が収束したか否かを判定する機能を有する。4
9,50,54,63はそれぞれその前の機能I45,
46,57〜59で設定された境界条件が収束したか否
かを判定する機能である。
(G) The element processor 3 has a function of determining whether or not the calculated boundary condition has converged. Four
9, 50, 54, 63 are the previous functions I45,
This is a function of determining whether or not the boundary conditions set by 46 and 57 to 59 have converged.

【0167】これらの諸機能を図10及び図11に示す
フローチャートに従って接続することによって1格子点
分の計算コードが完成する。
By connecting these functions according to the flow charts shown in FIGS. 10 and 11, the calculation code for one grid point is completed.

【0168】次に、1つの格子点を計算するためのアル
ゴリズムを要素プロセッサ3のプログラムメモリ11上
にマッピングする。マッピングされたプログラムは、ホ
ストコンピュータ1からネットワーク4及び要素プロセ
ッサ間コネクション7を介して送られてくる格子点番号
情報タグを入力トークンとして起動する。1要素プロセ
ッサ3上に複数の格子点がマッピングされた場合、要素
プロセッサ3間を要素プロセッサ間コネクション7を介
して転送されるデータは、複数の格子点で構成される各
分割領域の最外郭部に位置する格子点が保有する情報で
ある。そこで、要素プロセッサ3間に配置された要素プ
ロセッサ間コネクション7を介して、隣接要素プロセッ
サ上のデータメモリに直接アクセスすることによってプ
ロセッサ間のデータ転送を行い、格子点間のデータ転送
オーバーヘッドを排除でき非同期制御による高速な解析
が可能となる。
Next, the algorithm for calculating one grid point is mapped on the program memory 11 of the element processor 3. The mapped program is activated by using the lattice point number information tag sent from the host computer 1 via the network 4 and the inter-element processor connection 7 as an input token. When a plurality of lattice points are mapped on one element processor 3, the data transferred between the element processors 3 via the inter-element processor connection 7 is the outermost portion of each divided area formed by the plurality of lattice points. This is the information held by the grid point located at. Therefore, data is transferred between processors by directly accessing the data memory on the adjacent element processors via the inter-element processor connection 7 arranged between the element processors 3, and the data transfer overhead between lattice points can be eliminated and asynchronous. High-speed analysis by control becomes possible.

【0169】さらに、1要素プロセッサ上に1つの格子
点をマッピングし、計算格子点数と少なくとも同数の要
素プロセッサ3を使用し、後述するマルチポートメモリ
を要素プロセッサ3の間に配し、それらを要素プロセッ
サ間コネクション7で接続した超並列システムを構築
し、隣接要素プロセッサ3間で非同期に密なデータ通信
を取りながら互いの要素プロセッサ3の処理を阻害する
ことなくデータ授受を行って収束解を得ることも可能で
ある。
Further, one grid point is mapped on one element processor, at least as many element processors 3 as the number of calculation grid points are used, and a multiport memory described later is arranged between the element processors 3 and these elements are arranged as elements. A massively parallel system connected by the inter-processor connection 7 is constructed, and data is exchanged without obstructing the processing of the mutual element processors 3 while asynchronously performing dense data communication between the adjacent element processors 3 to obtain a converged solution. It is also possible.

【0170】また、1要素プロセッサ3上に複数の格子
点をマッピングし、要素プロセッサ間の通信方式を同期
方式とすることによって、要素プロセッサ3間の同期を
とった解析も可能である。この場合も、要素プロセッサ
3内部のプロセッシングユニット5が偏微分方程式の解
法に適した専用の高速演算機能を有するため、従来の汎
用プロセッサを使用した同期解法に比べ、大幅な処理速
度向上が可能となる。
Further, by mapping a plurality of grid points on one element processor 3 and setting the communication method between the element processors to be a synchronous method, it is possible to perform an analysis with the element processors 3 synchronized. Also in this case, since the processing unit 5 inside the element processor 3 has a dedicated high-speed arithmetic function suitable for solving partial differential equations, it is possible to significantly improve the processing speed as compared with the conventional synchronous solving method using a general-purpose processor. Become.

【0171】なお、上記実施の形態においては1つの格
子点を計算するためのアルゴリズムを要素プロセッサ3
のプログラムメモリ11にマッピングする場合について
説明したが、演算器14をデータ線15で接続してデー
タフローグラフ13状のハード回路を形成しても同様の
効果が得られることは言うまでもない。
In the above-described embodiment, the element processor 3 uses an algorithm for calculating one grid point.
However, it is needless to say that the same effect can be obtained even if the arithmetic unit 14 is connected by the data line 15 to form a hardware circuit in the form of the data flow graph 13.

【0172】また、隣接する要素プロセッサ間の通信
は、あるプロセスから他のプロセスへメッセージ(デー
タ)を送るときにメッセージのアドレス符号によって適
切なプロセスへメッセージを送るメッセージ通信で、か
つ複数のデータに対して複数の異なる(同一でもよい
が)命令を並列に実行することで、効率の良い並列処理
が可能となる。
Communication between adjacent element processors is a message communication in which a message (data) is sent from one process to another process by the address code of the message and the message is sent to an appropriate process. On the other hand, by executing a plurality of different (may be the same) instructions in parallel, efficient parallel processing becomes possible.

【0173】<実施の形態7>次にこの発明の第7実施
の形態について説明する。時間微分の近似法には参照す
る状態量の時間ステップの違いから、オイラー前進法、
オイラー後退法、2次精度のクランク=ニコルソン法、
3次精度のリチャードソン法等がある。例えば、3次精
度のリチャードソン法を考えると、現在の時刻をnとし
た場合、次時刻n+1の値を求めるのに必要な状態量
は、時刻n−1,nの値により決定される。従来のノイ
マン型コンピュータを使った手法では、時刻n−1,n
の値を余分に共通メモリ上に保存しておく必要があった
ため、メモリの容量不足から計算規模の制限が加えられ
ていた。
<Seventh Embodiment> Next, a seventh embodiment of the present invention will be described. Due to the difference in the time step of the state quantity to be referred to the approximation method of time differentiation, the Euler forward method,
Euler backward method, second-precision crank = Nicholson method,
There is a Richardson method with third-order accuracy. For example, considering the third-order Richardson method, when the current time is n, the state quantity required to obtain the value at the next time n + 1 is determined by the values at the times n-1 and n. In the conventional method using the Neumann type computer, time n−1, n
Since it was necessary to store the extra value in common memory, the calculation scale was limited due to insufficient memory capacity.

【0174】このような、メモリ不足の問題も、第1実
施の形態に記載の2次元平面上に配した要素プロセッサ
3から構成された2次元計算基板を複数枚用いることに
よって容易に解決される。図12は、2次元空間につい
ての時間微分の近似のための情報処理装置の構成を示す
図である。図において、65ないし67は各々要素プロ
セッサ3を2次元状に接続して構成される2次元計算基
板であり、65は時刻n−1に対応する値の計算を担当
する2次元計算基板、66は時刻nに対応する値の計算
を担当する2次元計算基板、67は時刻n+1に対応す
る値の計算を担当する2次元計算基板である。また、4
は各2次元計算基板をパイプライン状に結びかつホスト
コンピュータ1とも接続して情報のやりとりを行うネッ
トワークである。
Such a memory shortage problem can be easily solved by using a plurality of two-dimensional calculation boards composed of the element processors 3 arranged on the two-dimensional plane described in the first embodiment. . FIG. 12 is a diagram showing a configuration of an information processing apparatus for approximating a time derivative in a two-dimensional space. In the figure, reference numerals 65 to 67 each denote a two-dimensional calculation board configured by connecting the element processors 3 in a two-dimensional manner, and 65 denotes a two-dimensional calculation board that is in charge of calculation of a value corresponding to time n-1. Is a two-dimensional calculation board in charge of calculation of a value corresponding to time n, and 67 is a two-dimensional calculation board in charge of calculation of a value corresponding to time n + 1. Also, 4
Is a network for connecting the two-dimensional calculation boards in a pipeline and connecting with the host computer 1 to exchange information.

【0175】例えば、リチャードソン法の場合、時刻n
+1の値を求めるのに必要な時刻n−1とnの値は、時
刻n−1用2次元計算基板65及び時刻n用2次元計算
基板66上の各要素プロセッサ3のデータメモリから、
ネットワーク4を介して、時刻n+1用2次元計算基板
67上の各要素プロセッサ3に転送される。計算が終了
すれば、計算結果は自動的に2次元計算基板67上の各
要素プロセッサ3のデータメモリに保存される。続いて
n+2の値を計算するには、時刻n−1の値が保存され
ている時刻n−1用2次元計算基板65上の各要素プロ
セッサ3のデータメモリをリセットし、新たに時刻n用
2次元計算基板66及び時刻n+1用2次元計算基板6
7から、それぞれ時刻n、n+1の値をネットワーク4
を介して時刻n−1用2次元計算基板65へ転送して計
算を行い、時刻n+2の値として各要素プロセッサ3の
データメモリに保管する。
For example, in the case of Richardson's method, time n
The values of time n-1 and n required to obtain the value of +1 are calculated from the data memory of each element processor 3 on the time n-1 two-dimensional calculation board 65 and the time n two-dimensional calculation board 66.
It is transferred to each element processor 3 on the two-dimensional calculation board 67 for time n + 1 via the network 4. When the calculation is completed, the calculation result is automatically saved in the data memory of each element processor 3 on the two-dimensional calculation board 67. Then, in order to calculate the value of n + 2, the data memory of each element processor 3 on the two-dimensional calculation board 65 for time n-1 in which the value of time n-1 is stored is reset, and the value for time n is newly added. Two-dimensional calculation board 66 and two-dimensional calculation board 6 for time n + 1
7 from the values at time n and n + 1, respectively.
The data is transferred to the two-dimensional calculation board 65 for time n−1 via the to perform calculation, and is stored in the data memory of each element processor 3 as the value at time n + 2.

【0176】以上に述べたように、第3実施の形態の情
報処理装置によれば、メモリ不足が解消され、かつ高速
に演算することができるようになる。
As described above, according to the information processing apparatus of the third embodiment, it is possible to solve the memory shortage and to perform the calculation at high speed.

【0177】この時間軸方向へのパイプライン化は、2
次元解析解の収束判定の高速化にも寄与する、微分方程
式の求解において、現時刻nにおける計算値と前時刻n
−1の計算値との差がある基準範囲以下に達した場合に
収束したと判断するわけであるが、時間方向をパイプラ
イン化すれば、隣接する2次元計算基板間の値を比較す
るという単純な動作で収束性を判断することが可能とな
る。
This pipeline along the time axis is 2
In the solution of a differential equation, which contributes to speeding up the convergence determination of the dimensional analysis solution, the calculated value at the current time n and the previous time n
When the difference from the calculated value of -1 reaches a certain reference range or less, it is determined that the convergence has occurred. However, if the time direction is pipelined, the values between adjacent two-dimensional calculation boards are compared. It is possible to judge the convergence by a simple operation.

【0178】<実施の形態8>次に、この発明の第8実
施の形態について説明する。この発明の主たる適用対象
は微分方程式の求解であるが、この種の問題は隣接する
格子点の相互作用を繰り返し計算し、全格子点が安定状
態に収束することにより計算終了する。すなわち、隣接
していない格子点の間でのデータの授受はほとんど発生
せず、隣接する格子点間でのデータの授受が専ら必要と
なる。また、一般的には、対象とする系を格子点に分割
した後、1つまたは隣接する複数の格子点に関する演算
を1つの要素プロセッサ3に分担させ、さらにこれらの
格子点と隣接する格子点に関する演算はやはり隣接する
要素プロセッサ3に分担させている。
<Eighth Embodiment> Next, an eighth embodiment of the invention will be described. The main application of the present invention is the solution of differential equations, but this kind of problem ends by iteratively calculating the interaction between adjacent grid points and converging all grid points to a stable state. That is, the data exchange between the non-adjacent grid points hardly occurs, and the data exchange between the adjacent grid points is exclusively required. In addition, generally, after dividing the target system into grid points, one element processor 3 is caused to share the operation related to one or a plurality of adjacent grid points, and further the grid points adjacent to these grid points. The calculation related to is also shared by the adjacent element processors 3.

【0179】対象とする問題のこのような特徴に着目す
れば、隣接する要素プロセッサ3間で同一のメモリを共
有し、相互に相手のメモリを直接的にアクセス可能とす
ることによって、計算の効率が格段に向上し、短時間で
所望の演算が終了するようになることが理解できる。
Focusing on such a feature of the problem to be addressed, the efficiency of calculation can be improved by sharing the same memory between the adjacent element processors 3 and directly accessing each other's memories. Can be significantly improved, and the desired calculation can be completed in a short time.

【0180】図13は、要素プロセッサ3が要素プロセ
ッサ間コネクション7によって結合され正方格子状に配
置されたマルチプロセッサの一部分を示している。ま
た、図14は、図13に示された要素プロセッサの1個
の内部構成を示す図である。図において、プロセッシン
グユニット5は同一プロセッサ内に内蔵されているデー
タメモリ8と接続されており、このデータメモリ8をア
クセスすることが可能である。さらに、このプロセッシ
ングユニット5は入出力制御回路(以下I/Oともい
う。)71を介して隣接する要素プロセッサと接続され
ている。
FIG. 13 shows a part of a multiprocessor in which the element processors 3 are connected by an inter-element processor connection 7 and arranged in a square lattice. 14 is a diagram showing the internal configuration of one of the element processors shown in FIG. In the figure, the processing unit 5 is connected to a data memory 8 incorporated in the same processor, and the data memory 8 can be accessed. Further, the processing unit 5 is connected to an adjacent element processor via an input / output control circuit (hereinafter also referred to as I / O) 71.

【0181】I/O71経由で隣接要素プロセッサ3d
と接続することにより、隣接する要素プロセッサ3d内
のデータメモリ8をあたかも同一要素プロセッサ内のメ
モリであるのと同様に直接アクセスすることができる。
逆に、隣接する要素プロセッサからも、同様に図示した
データメモリ8をアクセスすることができる。
Adjacent element processor 3d via I / O 71
By connecting with, the data memory 8 in the adjacent element processor 3d can be directly accessed as if it were a memory in the same element processor.
On the contrary, the data memory 8 shown in the figure can be similarly accessed from the adjacent element processors.

【0182】隣接する要素プロセッサ間で相互にメモリ
をアクセスしあうためには、図中のI/O71が、プロ
セッシングユニット5とデータメモリ8の間のデータバ
ス73に対して、隣接要素プロセッサからのメモリアク
セス要求に対する調停の機能を果たす必要がある。しか
しながら、データバスに対する調停は一般的なプロセッ
サで用いられている技術であり、例えば、VMEバスを
用いれば実現でき、公知であるのでここでは説明を省略
する。
In order to mutually access the memories between the adjacent element processors, the I / O 71 in the figure sends data to the data bus 73 between the processing unit 5 and the data memory 8 from the adjacent element processors. It must fulfill the function of arbitration for memory access requests. However, arbitration with respect to the data bus is a technique used in a general processor, and can be realized by using a VME bus, for example, and is well known, so description thereof will be omitted here.

【0183】以上説明したように、図14に示した要素
プロセッサではプロセッシングユニット5を同一プロセ
ッサ内に内蔵されているデータメモリ8と接続し、プロ
セッシングユニット5がデータメモリ8をアクセスする
ことが可能とし、さらに、プロセッシングユニット5は
I/O71を介して隣接する要素プロセッサ3dと接続
されるようにしたので、要素プロセッサ3d間でのデー
タ通信のためのオーバヘッドを低減でき、計算の効率が
向上する。
As described above, in the element processor shown in FIG. 14, the processing unit 5 is connected to the data memory 8 incorporated in the same processor so that the processing unit 5 can access the data memory 8. Furthermore, since the processing unit 5 is connected to the adjacent element processors 3d via the I / O 71, the overhead for data communication between the element processors 3d can be reduced and the efficiency of calculation can be improved.

【0184】なお、上記の要素プロセッサの構成の説明
では一般的な場合について説明したが、微分方程式の求
解に限っていえば、隣接する格子点のデータは参照(す
なわち、読み出し)ができればよく、更新(すなわち、
書き込み)までは要しない。参照のみに限定すれば同一
メモリアドレスに対する更新要求が衝突することがな
く、メモリアクセスのためのデータバスの調停が簡略化
されることは明らかである。
Although the general case has been described in the above description of the configuration of the element processor, if it is limited to the solution of the differential equation, the data at the adjacent grid points may be referred (that is, read out) and updated. (Ie,
Writing) is not required. It is apparent that if only reference is made, update requests for the same memory address do not collide, and arbitration of the data bus for memory access is simplified.

【0185】<実施の形態9>しかしながら、同一のメ
モリに対する複数のメモリ参照要求が同時に発生するこ
とがかなりの頻度で発生することが予想される。この場
合、単一ポートのメモリでは処理の停滞が発生し、結果
として計算時間が長くかかるという懸念がある。このよ
うな問題を事前に回避するためには、マルチポートメモ
リを採用し、複数のメモリ参照を同時に処理できるよう
にすればよい。
<Embodiment 9> However, it is expected that a plurality of memory reference requests for the same memory will occur at a high frequency. In this case, there is a concern that processing will be stagnated in the single-port memory, resulting in a long calculation time. In order to avoid such a problem in advance, a multiport memory may be adopted so that a plurality of memory references can be processed at the same time.

【0186】そのためのこの発明の第9実施の形態につ
いて説明する。図15は、隣接する6つの要素プロセッ
サとメモリを共有する場合を示している。図において、
3は要素プロセッサ、7はネットワークである。
A ninth embodiment of the present invention for that purpose will be described. FIG. 15 shows a case where a memory is shared with six adjacent element processors. In the figure,
Reference numeral 3 is an element processor, and 7 is a network.

【0187】図16は、一つの要素プロセッサの内部構
成を示しており、データメモリ8は7つのポートを有し
ている。データメモリ8は、データバス75を介して6
個の入出力制御部71、およびプロセッシングユニット
5と接続されている。このような構成にすることによ
り、当該要素プロセッサおよび6つの隣接する要素プロ
セッサからのメモリ参照要求を同時に処理可能となる。
FIG. 16 shows the internal structure of one element processor, and the data memory 8 has seven ports. The data memory 8 is connected to the data memory 6 via the data bus 75.
The individual input / output control units 71 and the processing unit 5 are connected. With such a configuration, it is possible to simultaneously process memory reference requests from the element processor and six adjacent element processors.

【0188】参照のみであれば比較的簡単な制御回路で
実現することが可能である。しかし、汎用用途に対して
情報処理装置を用いる場合、隣接する要素プロセッサ3
eのメモリに対して書き込みの機能もあることが要求さ
れる場合がある。このような構成をとることにより、同
一のデータを当該要素プロセッサ3eのデータメモリ8
に書き込むのと同時に、隣接する要素プロセッサ3eの
データメモリ8に対しても並列に書き込めるようにな
り、同一のメモリアドレスに対する参照が衝突するよう
な処理においては計算時間の短縮に大幅に寄与する。
If only reference is made, it can be realized by a relatively simple control circuit. However, when the information processing device is used for general purpose, the adjacent element processors 3
It may be required that the memory of e also has a writing function. By adopting such a configuration, the same data is stored in the data memory 8 of the element processor 3e.
At the same time that the data is written in, the data can be written in parallel to the data memory 8 of the adjacent element processor 3e, which greatly contributes to the reduction of the calculation time in the processing in which the references to the same memory address collide.

【0189】<実施の形態10>さらに、共有するメモ
リ部は必ずしも要素プロセッサ内にもつ必要はない。そ
こで、メモリ部を工夫したこの発明の第10実施の形態
を図について説明する。図17に共有するメモリ部を要
素プロセッサの外部に配置した情報処理装置の構成を示
す。また、図18に図17に示した情報処理装置を形成
する要素プロセッサの構成とメモリ部との接続関係とを
示す。図において、76は要素プロセッサ3fの外部に
設けられたメモリ、5は入力制御部71によって外部の
メモリ76と接続されたプロセッシングユニット、8は
要素プロセッサ3fの内部に設けられプロセッシングユ
ニット5と直接接続したデータメモリであり、入出力制
御部71を介して要素プロセッサ3内のプロセッシング
ユニットと接続されている。すなわち、図17に示すよ
うに、メモリ76が要素プロセッサ間のデータ経路上に
配置される。このように配置することにより、図18に
示す入出力制御部71を介して隣接する要素プロセッサ
3fと共有する4個のメモリ76を直接的に参照更新す
ることができる。
<Embodiment 10> Furthermore, the shared memory unit does not necessarily have to be provided in the element processor. Therefore, a tenth embodiment of the present invention in which the memory section is devised will be described with reference to the drawings. FIG. 17 shows the configuration of an information processing apparatus in which the shared memory unit is arranged outside the element processor. Further, FIG. 18 shows the configuration of the element processors forming the information processing apparatus shown in FIG. 17 and the connection relationship with the memory section. In the figure, reference numeral 76 is a memory provided outside the element processor 3f, 5 is a processing unit connected to the external memory 76 by the input control unit 71, and 8 is provided inside the element processor 3f and directly connected to the processing unit 5. The data memory is connected to the processing unit in the element processor 3 via the input / output control unit 71. That is, as shown in FIG. 17, the memory 76 is arranged on the data path between the element processors. By arranging in this way, the four memories 76 shared with the adjacent element processors 3f can be directly referenced and updated via the input / output control unit 71 shown in FIG.

【0190】上記のメモリ76を介して隣接する要素プ
ロセッサ3f間でデータの授受を行う方法の一例として
以下の方法がある。
The following method is an example of a method of exchanging data between the adjacent element processors 3f via the memory 76.

【0191】すなわち、各要素プロセッサ3fが書き込
みを行う場合のアドレスまたはアドレスの範囲を予め定
めておき、データの出し側の要素プロセッサはメモリ7
6の予め定めたアドレス領域にデータの書き込みを行
い、データの受け側の要素プロセッサ3fでは上記のア
ドレス領域を読み出すことで要素プロセッサ3f間でデ
ータの授受が完了する。
That is, an address or an address range when each element processor 3f performs writing is set in advance, and the element processor on the data output side is the memory 7
Data is written in a predetermined address area 6 and the element processor 3f on the data receiving side reads the above-mentioned address area to complete the data transfer between the element processors 3f.

【0192】図17中では、メモリ76内に記述した記
号「P」は要素プロセッサ3が書き込むべきアドレス範
囲を示しており、記号「S」、「N」、「E」、「W」
は各々隣接する要素プロセッサ3fが書き込みを行うべ
きアドレス範囲を示している。
In FIG. 17, the symbol "P" described in the memory 76 indicates the address range to be written by the element processor 3, and the symbols "S", "N", "E", "W".
Indicates an address range to which each adjacent element processor 3f should write.

【0193】なお、本実施の形態では要素プロセッサ3
f内にデータメモリ8を含む例について示したが、デー
タメモリ8に格納すべきデータを要素プロセッサ間に接
続されたメモリ76に格納するようにすれば、データメ
モリ8が無い要素プロセッサであっても同一の効果が得
られることは明らかである。
In the present embodiment, the element processor 3
Although the example in which the data memory 8 is included in f has been described, if the data to be stored in the data memory 8 is stored in the memory 76 connected between the element processors, the element processor does not have the data memory 8. It is obvious that the same effect can be obtained.

【0194】上記の説明では、メモリ76としてシング
ルポートのメモリを用いた場合を説明したが、図16で
説明したデータメモリ8を要素プロセッサ3f内に内蔵
する場合と同様、データ経路上に配置するメモリ76の
場合にもマルチポートメモリを用いることにより、計算
時間の短縮をはかることができる。
In the above description, the case where a single port memory is used as the memory 76 has been described. However, like the case where the data memory 8 described in FIG. 16 is built in the element processor 3f, it is arranged on the data path. Even in the case of the memory 76, the calculation time can be shortened by using the multiport memory.

【0195】ただし、マルチポートメモリを採用した場
合であっても、同一メモリアドレスに対する更新要求が
衝突した場合には処理が中断し、計算時間の増大を招
く。これを避けるためには、メモリに対する参照/更新
要求を一時的に記憶しておくバッファ機構を導入するの
が効果的である。図19はこのためのバッファ機構を導
入したマルチポートメモリを示しており、図17の情報
処理装置におけるメモリ76に対応する部分のみを示し
ている。
However, even when the multi-port memory is adopted, if update requests for the same memory address collide, the processing is interrupted and the calculation time is increased. In order to avoid this, it is effective to introduce a buffer mechanism for temporarily storing the reference / update request to the memory. FIG. 19 shows a multi-port memory in which a buffer mechanism for this purpose is introduced, and only the portion corresponding to the memory 76 in the information processing apparatus of FIG. 17 is shown.

【0196】図において、76aはバッファ機構付きの
マルチポートメモリ、79は2ポートメモリ、80はバ
ッファ機構である。バッファ機構80は、要素プロセッ
サ間コネクション7を介して2ポートメモリ79から入
力したデータ、または2ポートメモリ79へ書き込まれ
るべきデータを一時的に格納することができる。
In the figure, 76a is a multi-port memory with a buffer mechanism, 79 is a 2-port memory, and 80 is a buffer mechanism. The buffer mechanism 80 can temporarily store the data input from the two-port memory 79 via the inter-element processor connection 7 or the data to be written to the two-port memory 79.

【0197】上記のように、隣接する要素プロセッサ3
f間に配置された2ポートメモリ79の各ポートにバッ
ファ機構80を配置したので、同一メモリアドレスに対
する更新要求が衝突した場合でも処理が中断することが
ない。また、その結果として起こる計算時間の増大を避
けることが出来る。
As described above, the adjacent element processors 3
Since the buffer mechanism 80 is arranged at each port of the 2-port memory 79 arranged between f, the processing will not be interrupted even when the update requests for the same memory address collide. In addition, it is possible to avoid an increase in calculation time that occurs as a result.

【0198】図19に示したマルチポートメモリでは、
バッファ機構80を2ポートメモリ79の各ポートに配
置する例を説明したが、バッファ機構はマルチポートの
各々のポート毎に設けてもよいし、複数のポートまたは
全ポートに対して1個のバッファを設けても効果がある
ことは明らかである。
In the multiport memory shown in FIG. 19,
Although the example in which the buffer mechanism 80 is arranged at each port of the 2-port memory 79 has been described, the buffer mechanism may be provided for each port of the multiport, or one buffer may be provided for a plurality of ports or all ports. It is clear that the provision of the effect is effective.

【0199】<実施の形態11>次に、この発明の第1
1実施の形態について説明する。各要素プロセッサ毎に
通信データ保持用のバッファメモリを設けることによ
り、要素プロセッサ間のデータ通信による各要素プロセ
ッサの演算を妨げることを防止できる。
<Embodiment 11> Next, the first embodiment of the present invention
One embodiment will be described. By providing a buffer memory for holding communication data for each element processor, it is possible to prevent the operation of each element processor from being interrupted by data communication between the element processors.

【0200】図20は、通信データ保持用のバッファメ
モリを有する要素プロセッサの構成を示すブロック図で
ある。図において、5は要素プロセッサ3g内に設けら
れたプロセッシングユニット、7は要素プロセッサ3g
の間を結ぶ要素プロセッサ間データバス、82は要素プ
ロセッサ3g内に設けられ要素プロセッサ間データバス
7及びプロセッシングユニット5に接続されたバッファ
メモリ、8は要素プロセッサ3内に設けられプロセッシ
ングユニット5に接続されたデータメモリである。
FIG. 20 is a block diagram showing the structure of an element processor having a buffer memory for holding communication data. In the figure, 5 is a processing unit provided in the element processor 3g, and 7 is an element processor 3g.
A data bus between the element processors connecting between the two, a buffer memory 82 provided in the element processor 3g and connected to the data bus 7 between the element processors and the processing unit 5, and a reference numeral 8 connected to the processing unit 5 provided in the element processor 3 It is a data memory that has been stored.

【0201】各要素プロセッサ3gは、要素プロセッサ
間データバス7を介してバッファメモリ82へ隣接する
要素プロセッサ3gから送られたデータをオブジェクト
名付きデータとして書き込み、各要素プロセッサ3gは
このバッファメモリ82から任意のタイミングでオブジ
ェクト名付きデータをサーチして隣接要素プロセッサ3
gからのデータ受け入れを完了する。図20に示した構
成を有する要素プロセッサで形成された情報処理装置に
よれば、隣接する要素プロセッサ3g間のデータ通信に
より各要素プロセッサ3g内のプロセッシングユニット
5、例えば浮動小数点演算器の演算を妨げることなく、
より高速な処理が可能となる。
Each element processor 3g writes the data sent from the adjacent element processor 3g to the buffer memory 82 via the inter-element processor data bus 7 as data with an object name, and each element processor 3g reads from this buffer memory 82. The adjacent element processor 3 is searched for data with an object name at an arbitrary timing.
Complete data acceptance from g. According to the information processing apparatus formed of the element processors having the configuration shown in FIG. 20, the data communication between the adjacent element processors 3g prevents the processing unit 5 in each element processor 3g, for example, the operation of the floating point arithmetic unit. Without
Higher speed processing is possible.

【0202】<実施の形態12>次に、この発明の第1
2実施の形態について説明する。図21は、この発明の
第12実施の形態による情報処理装置の要素プロセッサ
の構成の一例を示すブロック図である。
<Embodiment 12> Next, the first embodiment of the present invention
Two embodiments will be described. FIG. 21 is a block diagram showing an example of the configuration of the element processor of the information processing apparatus according to the twelfth embodiment of the present invention.

【0203】図において、3hは要素プロセッサ、10
は要素プロセッサ3h内に設けられた浮動小数点演算
器、83は要素プロセッサ3h内に設けられたマッチン
グメモリ(データプール)、11は要素プロセッサ3h
内に設けられたプログラムメモリ、8は要素プロセッサ
3h内に設けられたデータメモリ、84は浮動小数点演
算器10とマッチングメモリ83とプログラムメモリ1
1とデータメモリ8とを結び情報のやりとりを行うため
のパイプライン、7は要素プロセッサ3間を結び情報の
やりとりを行うための要素プロセッサ間コネクションで
ある。
In the figure, 3h is an element processor, 10
Is a floating-point arithmetic unit provided in the element processor 3h, 83 is a matching memory (data pool) provided in the element processor 3h, and 11 is the element processor 3h.
8 is a data memory provided in the element processor 3h, and 84 is a floating point arithmetic unit 10, a matching memory 83, and a program memory 1.
1 is a pipeline for connecting the data memory 8 and exchanging information, and 7 is an inter-element processor connection for connecting the element processors 3 and exchanging information.

【0204】隣接する要素プロセッサ3h同士の間で、
通信により交換する必要のあるデータは多岐にわたる。
この実施の形態においては、各々のデータには予め次に
どのような処理を行うかを識別できるオブジェクト名が
付けられる。オブジェクト名が付けられたデータは、マ
ッチングメモリ(データプール)83を設けたパイプラ
イン84上にデータパケットの形態で入力されて巡回
し、さらに要素プロセッサ間コネクション7を介して隣
接する要素プロセッサ3h内のマッチングメモリ83へ
送り出される。浮動小数点演算器10は、任意のタイミ
ングでマッチングメモリ83の内部をサーチし、任意の
処理を行うために必要なオブジェクト名の付けられたデ
ータが揃い次第、演算を開始する。
Between the adjacent element processors 3h,
There is a wide variety of data that needs to be exchanged by communication.
In this embodiment, each data is given an object name which can identify what kind of processing is to be performed next. The data to which the object name is attached is input in the form of a data packet in a pipeline 84 provided with a matching memory (data pool) 83 and circulates, and further, in the adjacent element processors 3h via the inter-element processor connection 7. Are sent to the matching memory 83. The floating-point arithmetic unit 10 searches the inside of the matching memory 83 at an arbitrary timing, and starts the arithmetic operation as soon as the data with the object name necessary for performing an arbitrary process are prepared.

【0205】なおこの際、偏微分方程式のプログラムが
時系列的に見て一時的に並列度が大きくなる傾向にある
ため、マッチングメモリ83の記憶容量を十分に確保し
ておく必要がある。
At this time, since the degree of parallelism of the program of the partial differential equation tends to temporarily increase in time series, it is necessary to secure a sufficient storage capacity of the matching memory 83.

【0206】また、上記の説明では、要素プロセッサ3
hのプロセッシングユニットが浮動小数点演算器10で
構成された場合について述べたが、図2に示した演算器
14をデータ線15により結線しデータフローグラフ1
3状のハード的に回路化した構成であっても、また図4
に示した演算中に頻出する部分を機能モジュール12内
にハード的に回路化し他はプログラムメモリ11の指示
に従って浮動小数点演算器10により演算する構成であ
っても同様の効果を奏する。
In the above description, the element processor 3
The case where the processing unit of h is composed of the floating point arithmetic unit 10 has been described, but the arithmetic unit 14 shown in FIG.
Even in the case where the circuit is structured like three hardware, FIG.
The same effect can be obtained even if the floating point arithmetic unit 10 is operated in accordance with the instructions of the program memory 11 except that the frequently appearing portion during the operation is circuitized in the functional module 12 as shown in FIG.

【0207】以上のように、データ間の同期を自動的に
とることによって、より高速で、通信のオーバーヘッド
の少ない処理が可能となる。
As described above, by automatically synchronizing the data, it is possible to perform processing at higher speed and with less communication overhead.

【0208】<実施の形態13>次に、この発明の第1
3実施の形態について説明する。先にも述べたように、
SIMPLE法によるナビエ・ストークス方程式の求解
においては、8つの入力に対して、第1入力と第2入
力、第3入力と第4入力と、第5入力と第6入力、第7
入力と第8入力のそれぞれの乗算結果を累積加算する演
算が頻繁に現れ、この処理を高速化することが計算時間
短縮の一つの決め手となる。図5は数35の演算を図的
に表現したフローグラフである。
<Embodiment 13> Next, the first embodiment of the present invention
The third embodiment will be described. As I mentioned earlier,
In the solution of the Navier-Stokes equation by the SIMPLE method, the first input and the second input, the third input and the fourth input, the fifth input and the sixth input, and the seventh input are applied to eight inputs.
An operation for cumulatively adding the multiplication results of the input and the eighth input frequently appears, and speeding up this processing is one of the decisive factors for reducing the calculation time. FIG. 5 is a flow graph that graphically represents the operation of Expression 35.

【0209】[0209]

【数35】 [Equation 35]

【0210】この処理を一括してハードウェア化したの
が図22である。図において、85は乗算器であり入力
端から入力される2つのデータの乗算を実行し、出力端
へ出力する。86,87は加算器であり、入力端から入
力される2つのデータの加算を実行し、出力端へ出力す
る。また、乗算器85の出力端と加算器86の入力端は
データ線88で接続されている。また、加算器86の出
力端と加算器87の入力端はデータ線89で接続されて
いる。上記のような構成で加算器、乗算器を接続するこ
とで、乗算器の各々の入力端に入力されたデータに対
し、図5に示した演算が実行され、加算器87の出力端
に結果が出力される。
FIG. 22 shows a hardware implementation of this processing. In the figure, reference numeral 85 denotes a multiplier, which executes multiplication of two data input from the input end and outputs the result to the output end. Reference numerals 86 and 87 denote adders, which execute addition of two data input from the input end and output the data to the output end. The output end of the multiplier 85 and the input end of the adder 86 are connected by a data line 88. The output end of the adder 86 and the input end of the adder 87 are connected by a data line 89. By connecting the adder and the multiplier with the above configuration, the operation shown in FIG. 5 is executed on the data input to each input terminal of the multiplier, and the result is output to the output terminal of the adder 87. Is output.

【0211】このように、演算器をデータ線で接続し
た、いわゆる、マクロ機能ブロックを有する要素プロセ
ッサはナビエ・ストークス方程式の求解をはじめとする
微分方程式等の求解の高速化に大きく寄与する。
As described above, the element processor having the so-called macro function block, in which the arithmetic units are connected by the data lines, greatly contributes to the speeding up of the solution of differential equations such as the solution of the Navier-Stokes equation.

【0212】<実施の形態14>次に、この発明の第1
4実施の形態について説明する。図23は隣接要素プロ
セッサ間のデータ通信を各要素プロセッサ毎に非同期で
かつ繰り返し行うことを実現するための通信回路の構成
を示すブロック図である。
<Fourteenth Embodiment> Next, the first embodiment of the present invention will be described.
Four embodiments will be described. FIG. 23 is a block diagram showing a configuration of a communication circuit for realizing data communication between adjacent element processors asynchronously and repeatedly for each element processor.

【0213】図において、3iは要素プロセッサ、70
は要素プロセッサ3i内に設けられ演算を行うプロセッ
シングユニット、8は要素プロセッサ3i内に設けられ
プロセッシングユニット70の処理に必要とされるデー
タを記憶するためのデータメモリ、90は要素プロセッ
サ3のデータメモリ8に記述された情報を隣接する要素
プロセッサ3i間でやり取りするためのデータバスであ
る。
In the figure, 3i is an element processor, and 70
Is a processing unit which is provided in the element processor 3i and performs arithmetic operation; 8 is a data memory which is provided in the element processor 3i and which stores data required for the processing of the processing unit 70; and 90 is a data memory of the element processor 3. 8 is a data bus for exchanging the information described in 8 between adjacent element processors 3i.

【0214】次に動作について説明する。プロセッシン
グユニット5における処理において、隣接要素プロセッ
サ3iの情報が必要な場合、その要素プロセッサ3i
は、隣接の要素プロセッサ3iとは全く非同期に繰り返
し相手方データメモリ8に記述された必要情報を参照す
るメモリアクセス動作を行う。偏微分方程式の解法にお
いて、各要素プロセッサ3iが行う演算は、遠く離れた
要素プロセッサ3iの持つ情報ではなく隣接する要素プ
ロセッサ3の持つ情報のみに依存するため、極めて局所
性が高い。従って、隣接する要素プロセッサ3i間の通
信は、データバス90を介して、プロセッシングユニッ
ト70の処理を妨げず、全く非同期でかつ繰り返し行わ
れることが望ましい。
Next, the operation will be described. In the processing in the processing unit 5, when the information of the adjacent element processor 3i is necessary, the element processor 3i
Performs a memory access operation of repeatedly referencing the necessary information described in the partner data memory 8 completely asynchronously with the adjacent element processor 3i. In the solution of the partial differential equation, the calculation performed by each element processor 3i depends only on the information held by the adjacent element processors 3 rather than the information held by the element processors 3i far away from each other, and therefore has extremely high locality. Therefore, it is desirable that the communication between the adjacent element processors 3i be performed completely asynchronously and repeatedly via the data bus 90 without hindering the processing of the processing unit 70.

【0215】相互に隣接する要素プロセッサ3i間での
メモリアクセスが隣接要素プロセッサ3iの処理を阻害
することなく全く非同期に繰り返し行われるように構成
することにより、隣接する要素プロセッサ3i間の通信
は、データバス90を介して、プロセッシングユニット
70の処理を妨げずに全く非同期でかつ繰り返し行われ
るため、各要素プロセッサ3i上で行われる演算処理を
隣接する要素プロセッサ間3iで全く非同期に継続する
ことが可能になる。
By configuring the memory access between the element processors 3i adjacent to each other to be performed completely asynchronously without hindering the processing of the adjacent element processors 3i, the communication between the element processors 3i adjacent to each other can be performed. Since the processing is performed completely asynchronously and repeatedly without interfering with the processing of the processing unit 70 via the data bus 90, the arithmetic processing performed on each element processor 3i can be continued completely asynchronously between the adjacent element processors 3i. It will be possible.

【0216】なお、この実施の形態ではプロセッシング
ユニット70とデータメモリ8は相手の動作を阻害せず
にメモリ参照可能なデータバス90を使用して各要素プ
ロセッサ3i間のデータ通信を行っているが、データメ
モリ8へのアクセスをするのに隣接要素プロセッサ3i
内のプロセッシングユニット70の動作に割り込みをか
ける同期動作を必要とする場合、要素プロセッサ間のデ
ータ通信方式は同期型となり、通信のオーバーヘッドが
大きくなるものの、解析解を得るのに何ら支障をきたさ
ない。
In this embodiment, the processing unit 70 and the data memory 8 use the memory-referable data bus 90 without hindering the operation of the other party to perform data communication between the respective element processors 3i. , The adjacent element processor 3i for accessing the data memory 8
When a synchronous operation for interrupting the operation of the processing unit 70 in the internal processor is required, the data communication method between the element processors is a synchronous type, and communication overhead increases, but there is no hindrance in obtaining an analytical solution. .

【0217】<実施の形態15>次に、この発明の第1
5実施の形態による非同期にデータを吸い上げてもデー
タの整理分類が容易な出力を得るための要素プロセッサ
について説明する。図24は、メモリ内の状態量ごとに
識別子を添付し、非同期にデータを吸い上げてもデータ
の整理分類が容易な出力を得るための要素プロセッサの
構成を示すブロック図である。
<Fifteenth Embodiment> Next, the first embodiment of the present invention will be described.
A description will be given of an element processor according to the fifth embodiment for obtaining an output in which data can be easily sorted and classified even if data is asynchronously downloaded. FIG. 24 is a block diagram showing the configuration of an element processor for attaching an identifier to each state quantity in the memory and obtaining an output in which data can be easily sorted and classified even if data is asynchronously sucked.

【0218】図において、3iは要素プロセッサ、70
は要素プロセッサ3i内に設けられ演算を行うプロセッ
シングユニット、8は要素プロセッサ3i内に設けられ
出力データを含む計算データを保存するためのデータメ
モリ、90は要素プロセッサ間データバス、91は要素
プロセッサ3i内に設けられ出力する状態量の種類に応
じて識別子をつけ、要素プロセッサ3i外にデータを送
り出すためのI/Oユニット、92はI/Oユニット9
1を介して出力されるデータをホストコンピュータに転
送するための出力データバスである。
In the figure, 3i is an element processor, and 70
Is a processing unit which is provided in the element processor 3i and performs an operation, 8 is a data memory which is provided in the element processor 3i for storing calculation data including output data, 90 is an inter-element processor data bus, and 91 is an element processor 3i An I / O unit for assigning an identifier in accordance with the type of state quantity provided inside and outputting the data to the outside of the element processor 3i, and 92 for the I / O unit 9
1 is an output data bus for transferring the data output via 1 to the host computer.

【0219】次に動作について説明する。プロセッシン
グユニット70の一連の処理によって得られる計算結果
は、複数種の状態量によって構成されており、しかも高
速演算を目的としたため、出力データのサンプリング時
間間隔が非常に短くなる。そこで出力データは、I/O
ユニット91において、その先頭あるいは末尾にその状
態量が何であるかを識別できる識別子を付加される。出
力データは、複数の状態量のものが混載されたパケット
通信形態で、非同期かつ大量で連続的に自己の要素プロ
セッサ3i外部に出力され、I/Oユニット91を介し
てホストコンピュータへ送出され、ポスト処理される。
この際、出力データバス92が各要素プロセッサ3iご
とに設置されているため、I/Oユニット91を介して
出力されるデータは、隣接要素プロセッサ3iの出力を
阻害することなく非同期に出力され、ホストコンピュー
タに転送される。また、出力データにはその状態量を判
断できる識別子が付加されているので、ホストコンピュ
ータではパケット型で複数の状態量の出力データが混載
して送られてきても、各々区別して整理分類し、ポスト
処理を施すことができる。
Next, the operation will be described. The calculation result obtained by the series of processes of the processing unit 70 is composed of a plurality of kinds of state quantities, and since the purpose is high-speed calculation, the sampling time interval of the output data becomes very short. Therefore, the output data is I / O
In the unit 91, an identifier that can identify what the state quantity is is added to the beginning or the end of the unit 91. The output data is asynchronously and in large quantities and continuously output to the outside of its own element processor 3i in a packet communication mode in which a plurality of state quantities are mixed, and is sent to the host computer via the I / O unit 91. Post processed.
At this time, since the output data bus 92 is installed for each element processor 3i, the data output via the I / O unit 91 is output asynchronously without disturbing the output of the adjacent element processor 3i. It is transferred to the host computer. Further, since the output data is provided with an identifier capable of determining the state quantity, even if the host computer sends a plurality of output data of a plurality of state quantities in a packet format, they are sorted and classified separately. Post processing can be applied.

【0220】従って、この実施の形態によれば要素プロ
セッサ3iの演算を妨げることなく非定常計算の途中結
果を出力することができ、高速の演算が達成できる。
Therefore, according to this embodiment, the intermediate result of the non-steady state calculation can be output without disturbing the calculation of the element processor 3i, and the high speed calculation can be achieved.

【0221】勿論、次のような同期型の出力方法も可能
である。ホストコンピュータから出力データバス92を
介して各要素プロセッサ3iに出力命令を送り、要素プ
ロセッサ3iでは受信した命令に従ってI/Oユニット
91内に設けたデータメモリ8の参照機能が実行され、
必要な状態量の出力データを命令に記述された順序に吸
引し、出力データ列を作成する。I/Oユニットで作成
された出力データ列は、データバス92を介してホスト
コンピュータに送出される。従って、ホストコンピュー
タが各要素プロセッサ3iに対して出力命令を送出する
タイミングを調節することで、任意の時刻における出力
が可能となる。
Of course, the following synchronous output method is also possible. An output command is sent from the host computer to each element processor 3i via the output data bus 92, and the element processor 3i executes the reference function of the data memory 8 provided in the I / O unit 91 according to the received instruction.
The output data of the required state quantity is sucked in the order described in the command, and the output data string is created. The output data string created by the I / O unit is sent to the host computer via the data bus 92. Therefore, by adjusting the timing at which the host computer sends an output command to each element processor 3i, it is possible to output at any time.

【0222】<実施の形態16>次に、この発明の第1
6実施の形態について説明する。図25は、この発明の
第16実施の形態による、非同期に出力されるデータを
各要素プロセッサから収集し、リアルタイムに可視化を
行うための計算機システム全体の構成図である。
Sixteenth Embodiment Next, the first embodiment of the present invention
Six embodiments will be described. FIG. 25 is a configuration diagram of the entire computer system for collecting data output asynchronously from each element processor and performing visualization in real time according to the sixteenth embodiment of the present invention.

【0223】図において、3jは演算を行う要素プロセ
ッサ、93は各要素プロセッサ3j内に設けられ演算結
果を外部に出力する際のデータ変換を行う出力用I/O
ユニット、94は各要素プロセッサ3j上の出力用I/
Oユニット93を介して出力されるデータを転送するた
めの出力データバス、95は各要素プロセッサ3jから
出力データバス94を介して転送されてきた要素プロセ
ッサ3jと少なくとも同数のパラレルデータをシリアル
データに変換するためのデータ出力制御部、96はデー
タ出力制御部を通してシリアル型に変換されたデータを
転送するためのシリアルデータバス、97はシリアルデ
ータバス96を介して送られてきたデータを種類ごとに
分類し、階調反転、2階調化、平均化、色調補正、輪郭
表示、等高線処理、フリンジ処理、あるいはベクトル表
示等のポスト処理を行うためのポスト処理ユニット、9
8はポスト処理ユニット97によって作成された画像デ
ータを転送するための画像出力データバス、99は画像
出力データバス98を介して転送されてくる画像データ
を表示するためのディスプレイである。
In the figure, 3j is an element processor for performing arithmetic operation, and 93 is an output I / O provided in each element processor 3j for performing data conversion when outputting the operation result to the outside.
Unit, 94 is an output I / O on each element processor 3j
An output data bus for transferring the data output via the O unit 93, 95 is at least the same number of parallel data as the element processors 3j transferred from each element processor 3j via the output data bus 94 into serial data. A data output control unit for conversion, 96 is a serial data bus for transferring the data converted into the serial type through the data output control unit, and 97 is data transmitted via the serial data bus 96 for each type. Post processing unit for performing post processing such as classification, gradation inversion, gradation conversion, averaging, color tone correction, contour display, contour line processing, fringe processing, or vector display, 9
Reference numeral 8 is an image output data bus for transferring the image data created by the post-processing unit 97, and 99 is a display for displaying the image data transferred via the image output data bus 98.

【0224】次に動作について説明する。出力データバ
ス94は要素プロセッサ3jと直結しており、各要素プ
ロセッサ3jの外部出力データは非同期に出力用I/O
ユニット93から出力される。出力されたデータは、要
素プロセッサ3jから出力された時点で、複数の種類の
状態量を含むデータ列である。また、出力時には、どの
要素プロセッサ3jからの出力であるかを明確にするた
め、要素プロセッサ番号を表す識別子をデータ列の先頭
あるいは後尾に添付しパケット状のデータ構成とする。
このデータ列は出力データバス94を介してデータ出力
制御部95に集められ、要素プロセッサ数と同数あるい
はそれ以上のパラレルデータから、1つのシリアルデー
タに変換される。さらに、シリアルデータバス96を介
してポスト処理ユニット97に送られたデータは、要素
プロセッサ番号識別子に従って振り分けられ、さらに状
態量識別子に従って分割整理される。整理されたデータ
は等高線処理、フリンジ処理、ベクトル表示等の可視化
のためのポスト処理を施され、画像出力データバス98
を介してディスプレイ99上で可視化映像となる。従っ
て、この実施の形態によれば要素プロセッサ3jの演算
を妨げることなく非定常計算の途中結果を出力すること
ができ、高速の演算が達成できる。
Next, the operation will be described. The output data bus 94 is directly connected to the element processors 3j, and external output data of each element processor 3j is asynchronously output I / O.
It is output from the unit 93. The output data is a data string including a plurality of types of state quantities when output from the element processor 3j. In addition, at the time of output, in order to clarify which element processor 3j is the output, an identifier representing the element processor number is attached to the head or tail of the data string to form a packet-like data structure.
This data string is collected in the data output control unit 95 via the output data bus 94, and is converted into one serial data from the parallel data of the number equal to or more than the number of element processors. Further, the data sent to the post processing unit 97 via the serial data bus 96 is sorted according to the element processor number identifier, and further divided according to the state quantity identifier. The arranged data is subjected to post-processing for visualization such as contour line processing, fringe processing, and vector display, and the image output data bus 98
The image is visualized on the display 99 via the. Therefore, according to this embodiment, the intermediate result of the unsteady calculation can be output without hindering the calculation of the element processor 3j, and the high-speed calculation can be achieved.

【0225】勿論、出力用I/Oユニットから非同期に
出力されるデータをポスト処理ユニット97を介して出
力し、ポスト処理ユニット97内でサンプリング時間を
設定して可視化時間間隔を自由に制御することも可能で
ある。
Of course, the data output asynchronously from the output I / O unit may be output via the post processing unit 97, and the sampling time may be set in the post processing unit 97 to freely control the visualization time interval. Is also possible.

【0226】図25のように出力データバス94を各要
素プロセッサ3からデータ出力制御部95へ接続すると
配線が複雑になり機器の小型化が困難になったり製造上
のトラブルが発生し易くなる危険性がある。
When the output data bus 94 is connected from each element processor 3 to the data output control section 95 as shown in FIG. 25, the wiring becomes complicated, and it becomes difficult to downsize the device or the manufacturing trouble easily occurs. There is a nature.

【0227】<実施の形態17>その問題を解決するた
めの第17実施の形態を図について説明する。図26
は、出力データバス94を最小限にして前述の問題点を
解決するための計算機システム全体の構成図である。出
力データバス94は全要素プロセッサ3jとデータ出力
制御部95を結ぶ1本のデータバスである。また、10
0はホストコンピュータ、101はホストコンピュータ
100と出力データバス94を接続するネットワークで
ある。他は図25と同様である。
<Seventeenth Embodiment> A seventeenth embodiment for solving the problem will be described with reference to the drawings. FIG. 26
FIG. 3 is a configuration diagram of the entire computer system for solving the above-mentioned problems by minimizing the output data bus 94. The output data bus 94 is one data bus that connects the all-element processor 3j and the data output control unit 95. Also, 10
Reference numeral 0 is a host computer, 101 is a network connecting the host computer 100 and the output data bus 94. Others are the same as in FIG.

【0228】次に動作について説明する。出力データ
は、複数の種類の状態量を含むデータ列である。ホスト
コンピュータ100は、各要素プロセッサ3jから出力
データを出力データバス94へ出すタイミングをコント
ロールする。各要素プロセッサ3jは、ホストコンピュ
ータ100からのタイミングに合わせ、出力データを出
力用I/Oユニット93を介して出力データバスへ送出
する。この際、どの要素プロセッサ3jからの出力であ
るかを明確にするため、要素プロセッサ番号を表す識別
子をデータ列の先頭あるいは後尾に添付しパケット状の
データ構成とする。データ出力制御部95では、出力デ
ータバス94を介して入ってくる出力データを要素プロ
セッサ番号識別子に従って並べかえ、1つのシリアルデ
ータに変換する。さらに、シリアルデータバス96を介
してポスト処理ユニット97に送られたデータは、状態
量識別子に従って分類整理される。整理されたデータは
等高線処理、フリンジ処理、ベクトル表示等の可視化の
ためのポスト処理を施され、画像出力データバス98を
介してディスプレイ99上で可視化画像となる。従っ
て、最小限の出力データバスの構成で、要素プロセッサ
3jの演算を妨げることなく非定常計算の途中結果を出
力することができ、高速の演算が達成できる。
Next, the operation will be described. The output data is a data string including a plurality of types of state quantities. The host computer 100 controls the timing of outputting the output data from each element processor 3j to the output data bus 94. Each element processor 3j sends the output data to the output data bus via the output I / O unit 93 at the timing from the host computer 100. At this time, in order to clarify from which element processor 3j the output is made, an identifier representing the element processor number is attached to the head or tail of the data string to form a packet-like data structure. The data output control unit 95 rearranges the output data input via the output data bus 94 according to the element processor number identifier and converts the output data into one serial data. Further, the data sent to the post processing unit 97 via the serial data bus 96 is classified and arranged according to the state quantity identifier. The organized data is subjected to post-processing for visualization such as contour line processing, fringe processing, and vector display, and becomes a visualized image on the display 99 via the image output data bus 98. Therefore, with the minimum output data bus configuration, it is possible to output the intermediate results of the non-steady state calculation without hindering the operation of the element processor 3j, and it is possible to achieve high-speed operation.

【0229】<実施の形態18>次に、この発明の第1
8実施の形態について説明する。従来の並列計算機で
は、計算を高速化することに主眼がおかれているため、
定常計算の計算結果を表示したり、非定常計算の時々刻
々の計算結果の変化を追いかけて表示する場合に、全要
素プロセッサの演算を中断したり、全要素プロセッサの
結果が揃うまで他の要素プロセッサの演算を中止して待
機させるため、計算を高速化しても全体の高速化にはつ
ながらないという問題点があった。図27は計算結果表
示の並列化による計算全体の高速化のための一実施の形
態を示す要素プロセッサの構成図、図28は図27の要
素プロセッサを構成要素とするマルチプロセッサの全体
構成図である。
<Embodiment 18> Next, the first embodiment of the present invention
The eight embodiments will be described. In conventional parallel computers, the focus is on speeding up calculations,
When displaying the calculation results of steady-state calculations or chasing changes in the calculation results of non-steady-state calculations, display the results of all element processors until the results of all element processors are complete or other elements are interrupted. Since the calculation of the processor is stopped and made to wait, there is a problem that speeding up the calculation does not lead to the speeding up of the whole. FIG. 27 is a block diagram of an element processor showing an embodiment for speeding up the entire calculation by parallelizing the calculation result display, and FIG. 28 is an overall block diagram of a multiprocessor having the element processor of FIG. 27 as a component. is there.

【0230】図において、3sは要素プロセッサ、70
は要素プロセッサ3s内に形成され計算を実施するため
のプロセッシングユニット、8は要素プロセッサ3s内
に形成されプロセッシングユニット70の計算に必要な
計算情報を格納するメモリ部、107は要素プロセッサ
3s内に形成され自己の属する要素プロセッサ3s内の
メモリ部8に格納された計算情報をプロセッシングユニ
ット70の演算を中断しないで受取り、一要素プロセッ
サに対して一計算格子点が割り当てられている場合には
そのまま、一要素プロセッサに複数の計算格子が畳み込
まれている場合にはその格子点の情報に加工処理を施す
ための出力情報加工部、104は行方向の要素プロセッ
サ3s内のメモリ部6間の演算に必要なデータをやり取
りするための行方向計算情報バス、105は列方向の要
素プロセッサ3s内のプロセッシングユニット70間の
演算に必要なデータをやり取りするための列方向計算情
報バス、106はプロセッシングユニット70とメモリ
部8の間で演算に必要なデータや演算結果データをやり
取りする内部計算情報バス、108はメモリ部8に格納
された計算情報を出力情報加工部107へ伝達するため
の出力加工情報バス、110は計算情報を例えば液晶表
示素子のように光の透過率に変換したり、磁気歪を光反
射に変更するカー効果を用いた素子、色変化に変換する
ためのカラー液晶表示素子などの表示素子、111は光
透過型であれば表示素子110の裏側から、光反射型で
あれば表示素子の表側から光を発光するためのランプ、
112はランプ111の光を平行光線にするための反射
鏡、109は各要素プロセッサ3sの出力情報加工部1
07から表示素子110へ出力加工情報を伝送するため
の出力加工情報バスである。
In the figure, 3s is an element processor, and 70
Is a processing unit formed in the element processor 3s for performing calculation, 8 is a memory unit formed in the element processor 3s and storing calculation information necessary for the calculation of the processing unit 70, 107 is formed in the element processor 3s Then, the calculation information stored in the memory unit 8 in the element processor 3s to which it belongs is received without interrupting the operation of the processing unit 70, and when one calculation lattice point is assigned to one element processor, When a plurality of calculation grids are convoluted in one element processor, an output information processing unit for processing the information of the grid points, 104 is an operation between the memory units 6 in the element processors 3s in the row direction. A row-direction calculation information bus for exchanging data required for data, 105 is a column-direction element processor 3s , A column-direction calculation information bus for exchanging data necessary for calculation between the processing units 70, and 106, an internal calculation information bus for exchanging data necessary for calculation and calculation result data between the processing unit 70 and the memory unit 8. Reference numeral 108 denotes an output processing information bus for transmitting the calculation information stored in the memory unit 8 to the output information processing unit 107. Reference numeral 110 denotes conversion of the calculation information into light transmittance as in a liquid crystal display device, or magnetic field. An element using the Kerr effect that changes the distortion into light reflection, a display element such as a color liquid crystal display element for converting into color change, and if 111 is a light transmissive type, it may be a light reflective type from the back side of the display element 110. For example, a lamp for emitting light from the front side of the display element,
Reference numeral 112 is a reflecting mirror for converting the light of the lamp 111 into parallel rays, and 109 is the output information processing unit 1 of each element processor 3s.
An output processing information bus for transmitting output processing information from 07 to the display element 110.

【0231】各要素プロセッサ3sのメモリ部8は、プ
ロセッシングユニット70の計算に必要な計算情報を格
納しており、内部計算情報バス106を介してプロセッ
シングユニット70とメモリ部8の間で演算に必要なデ
ータ(入力データ)や演算結果データ(出力データ)を
やり取りしている。したがって、計算が収束するまでの
時点や非定常計算の時々刻々の計算結果の変化を表示す
るにはプロセッシングユニット70の計算を停止してメ
モリ部8とアクセスしたり、収束後の計算結果を表示す
るために全要素プロセッサ3sの計算が収束するまで待
機したりして、全体の計算を妨害せざるを得ない。この
実施の形態においては、メモリ部8と非同期的に接続
(メモリ部8とプロセッシングユニット70のコミニュ
ケーションを妨害せず、メモリ部8が送出する計算情報
をメモリ部とのマッチング無しに受け取ることができ
る)された出力情報加工部107を要素プロセッサ3s
の内部に設け、メモリ部8が送出する計算情報を、一要
素プロセッサに対して一計算格子点が割り当てられてい
る場合にはそのまま、一要素プロセッサに複数の計算格
子が畳み込まれている場合にはその格子点の情報に加工
処理を施し、さらに内部構成として所持するデジタル/
アナログ変換回路を介してデジタルデータをアナログデ
ータに変換し、出力加工情報バス109を介して表示素
子110へ送出する。表示素子110は計算情報を、例
えば液晶表示素子のように光の透過率に変換したり、磁
気歪を光透過に変更したり(カー効果を用いた素子)、
透過光の色変化に変換したり(カラー液晶表示素子)す
る。この際、表示素子110は、それが光透過型であれ
ば表示素子110の裏側から、光反射型であれば表示素
子の表側から、反射鏡112によって平行光線に変換さ
れたランプ111からの光が照射されるため、出力情報
加工部107の動作を妨げることなく出力加工情報を視
覚的に表示することができる。
The memory unit 8 of each element processor 3s stores the calculation information necessary for the calculation of the processing unit 70, and is required for the calculation between the processing unit 70 and the memory unit 8 via the internal calculation information bus 106. Data (input data) and operation result data (output data) are exchanged. Therefore, in order to display the time until the calculation converges or the change in the calculation result of the non-stationary calculation every moment, the calculation of the processing unit 70 is stopped and the memory unit 8 is accessed, or the calculation result after the convergence is displayed. In order to do so, there is no choice but to interfere with the whole calculation by waiting until the calculation of all the element processors 3s converges. In this embodiment, the memory unit 8 is asynchronously connected (the communication information of the memory unit 8 and the processing unit 70 is not disturbed, and the calculation information sent from the memory unit 8 can be received without matching with the memory unit 8). ) Output information processing unit 107
In the case where a plurality of calculation grids are convoluted in the one-element processor, the calculation information provided in the inside of the Is processed by processing the information of its grid points, and it is digital /
Digital data is converted into analog data via the analog conversion circuit and sent to the display element 110 via the output processing information bus 109. The display element 110 converts calculation information into light transmittance, such as a liquid crystal display element, or changes magnetostriction into light transmission (element using Kerr effect),
It is converted into a color change of transmitted light (color liquid crystal display element). At this time, if the display element 110 is a light transmissive type, light from the back side of the display element 110, and if it is a light reflective type, from the front side of the display element, the light from the lamp 111 converted into parallel rays by the reflecting mirror 112. Since the light is emitted, the output processing information can be visually displayed without disturbing the operation of the output information processing unit 107.

【0232】このように、本構成により計算の高速処理
を妨げることなく計算の途中経過や最終計算結果を視覚
的に観察したり制御に利用したりすることができるよう
になる。
As described above, according to this configuration, it is possible to visually observe the progress of the calculation and the final calculation result and use the result for control without disturbing the high-speed processing of the calculation.

【0233】<実施の形態19>次に、この発明の第1
9実施の形態について説明する。図28のように出力加
工情報バス109を各要素プロセッサ3sから表示素子
110へ個別に配線すると、配線が膨大になり計算機シ
ステムと表示装置の距離を大きくすることができない。
図29は、計算機システムと表示装置の間を単一のシリ
アルデータバスとし前述の問題点を解決するための計算
機システム全体の構成図である。
<Embodiment 19> Next, the first embodiment of the present invention
9th Embodiment is described. If the output processing information bus 109 is individually wired from each element processor 3s to the display element 110 as shown in FIG. 28, the wiring becomes huge and the distance between the computer system and the display device cannot be increased.
FIG. 29 is a configuration diagram of the entire computer system for solving the above-mentioned problems by using a single serial data bus between the computer system and the display device.

【0234】図において、1はホストコンピュータ、1
14はランダムに送られてくる出力データの順序を入れ
換えてシリアルデータに変換するためのデータ出力制御
部、113は全要素プロセッサ3sとデータ出力制御部
114を結ぶ1本の出力加工情報バス、117はホスト
コンピュータ1と出力加工情報バス113を接続するネ
ットワーク、116はシリアルデータを分解して各表示
素子110への表示データに振り分ける表示データ制御
部、115はデータ出力制御部114と表示データ制御
部116を接続するシリアルデータバス、118は表示
データ制御部116と各表示素子110を接続する表示
データバスである。他は図28と同様である。
In the figure, 1 is a host computer and 1
Reference numeral 14 is a data output control unit for changing the order of output data sent at random and converting it into serial data. Reference numeral 113 is one output processing information bus connecting all the element processors 3s and the data output control unit 114. Is a network that connects the host computer 1 and the output processing information bus 113; 116 is a display data control unit that decomposes serial data and distributes the display data to each display element 110; 115 is a data output control unit 114 and display data control unit Reference numeral 116 denotes a serial data bus connecting the display data control unit 116 to each display element 110. Others are the same as in FIG.

【0235】次に動作について説明する。要素プロセッ
サ3s内の出力情報加工部107は、メモリ部が送出す
る計算情報を、一要素プロセッサに対して一計算格子点
が割り当てられている場合にはそのままとし、一要素プ
ロセッサに複数の計算格子が畳み込まれている場合には
その格子点の情報に加工処理を施す。ホストコンピュー
タ1は、各要素プロセッサ3sから出力加工情報を出力
加工情報バス113へ出すタイミングをコントロールす
る。各要素プロセッサ3sは、ホストコンピュータ1か
らのタイミングに合わせ、出力加工情報を出力情報加工
部107から出力加工情報バス113へ送出する。この
際、どの要素プロセッサ3sからの出力であるかを明確
にするため、要素プロセッサ番号を表す識別子をデータ
列の先頭あるいは後尾に添付しパケット状のデータ構成
とする。データ出力制御部114は、出力加工情報バス
113を介して入ってくる出力加工情報を要素プロセッ
サ番号識別子に従って並べかえ、1つのシリアルデータ
に変換する。さらに、シリアルデータバス115を介し
て表示データ制御部116に送られたデータは、再び要
素プロセッサ番号識別子に従って対応する表示素子11
0毎に振り分けられた後デジタル/アナログ変換回路を
介してデジタルデータをアナログデータに変換され、表
示データバス118を介して各表示素子110へ送出さ
れる。表示素子110は計算情報を、例えば液晶表示素
子のように光の透過率に変換したり、磁気歪を光透過に
変更したり、透過光の色変化に変換したりする。この
際、表示素子110は、それが光透過型であれば表示素
子110の裏側から、光反射型であれば表示素子の表面
から、反射鏡112によって平行光線に変換されたラン
プ111からの光が照射されるため、出力情報加工部1
07の動作を妨げることなく出力加工情報を視覚的に表
示することができる。
Next, the operation will be described. The output information processing unit 107 in the element processor 3s keeps the calculation information transmitted from the memory unit as it is when one calculation grid point is assigned to one element processor, and the one element processor has a plurality of calculation grids. If is convoluted, processing is performed on the information of the grid point. The host computer 1 controls the timing of outputting the output processing information from each element processor 3s to the output processing information bus 113. Each element processor 3s sends the output processing information from the output information processing unit 107 to the output processing information bus 113 in synchronization with the timing from the host computer 1. At this time, in order to clarify from which element processor 3s the output is made, an identifier representing the element processor number is attached to the head or tail of the data string to form a packet-like data structure. The data output control unit 114 rearranges the output processing information input via the output processing information bus 113 according to the element processor number identifier and converts it into one serial data. Further, the data sent to the display data control unit 116 via the serial data bus 115 is again displayed according to the element processor number identifier.
After being sorted by 0, digital data is converted into analog data through a digital / analog conversion circuit and sent to each display element 110 through a display data bus 118. The display element 110 converts calculated information into light transmittance, such as a liquid crystal display element, changes magnetostriction into light transmission, and converts color change of transmitted light. At this time, if the display element 110 is a light transmissive type, light from the back side of the display element 110, and if it is a light reflective type, from the surface of the display element, the light from the lamp 111 converted into parallel rays by the reflecting mirror 112. Is output, the output information processing unit 1
The output processing information can be visually displayed without disturbing the operation of 07.

【0236】このように、本構成により、最小限のデー
タバスの構成で、計算機システムと表示装置の距離を大
きくとることができ、計算の高速処理を妨げることなく
計算の途中経過や最終計算結果を視覚的に観察したり制
御に利用したりすることができるようになる。
As described above, according to this configuration, the distance between the computer system and the display device can be increased with the minimum data bus configuration, and the progress of the calculation and the final calculation result can be achieved without hindering the high-speed processing of the calculation. Can be visually observed and used for control.

【0237】<実施の形態20>次にこの発明の第20
実施の形態について説明する。この実施の形態は、例え
ば流体解析等において説明する。計算対象が、外部流れ
であれば複雑な曲面形状を持つ物体外部表面、内部流れ
であれば複雑な曲面形状を持つ内壁面に沿う流れを解析
する場合には、物体表面に沿った格子を使用する物体適
合座標系(Body Fitted Curvature)を、さらに局所的に
複雑な構造を持っている場合には、粗い格子と細かい格
子とを組み合わせて使用する複合座標系を、或いは現象
が局所的に激しく変化する場合には、変化の激しい部分
の格子を自動的に細かくする解適合座標系等を用いる
と、解析の精度が向上する。しかし、これらの座標系を
用いるには物理座標系と計算座標系の間の煩雑な座標変
換を常に実施しなければならない。この実施の形態は、
物理座標空間と計算座標空間の間に座標変換機能を受け
持つ座標変換専用ユニットを設けて、格子生成を容易に
するとともに、流体解析の計算速度を高め、更に計算結
果の表示時間を短縮するためのもので、図30にマルチ
プロセッサの全体構成図を示す。
<Embodiment 20> Next, the twentieth embodiment of the present invention will be described.
An embodiment will be described. This embodiment will be described, for example, in fluid analysis. If the calculation target is an external flow, the external surface of the object with a complicated curved surface shape is used. If the internal flow is a flow along an inner wall surface with a complicated curved surface shape, a grid along the surface of the object is used. If the body-fitted coordinate system that is used is a locally complex structure, a complex coordinate system that uses a combination of a coarse grid and a fine grid, or the phenomenon is locally severe. In the case of a change, the accuracy of analysis is improved by using a solution adaptive coordinate system or the like that automatically makes the grid of the part that changes a lot. However, in order to use these coordinate systems, complicated coordinate conversion between the physical coordinate system and the calculation coordinate system must always be performed. In this embodiment,
A coordinate conversion dedicated unit that handles the coordinate conversion function is provided between the physical coordinate space and the calculation coordinate space to facilitate grid generation, increase the calculation speed of fluid analysis, and further shorten the display time of calculation results. FIG. 30 shows an overall configuration diagram of the multiprocessor.

【0238】図において、1はホストコンピュータ、3
は要素プロセッサ、7は要素プロセッサ3間を結び情報
のやりとりを行う要素プロセッサ間コネクション、18
は要素プロセッサ3を要素プロセッサ間コネクション7
により2次元平面状に接続した2次元計算基板、4はホ
ストコンピュータ1と2次元計算基板18内の要素プロ
セッサを接続し情報のやりとりを行うネットワーク、1
20はネットワーク4の途中に設けられ座標変換を行う
座標変換専用ユニットである。
In the figure, 1 is a host computer and 3
Is an element processor, 7 is an inter-element processor connection for connecting the element processors 3 and exchanging information, 18
Is the element processor 3 and the inter-element processor connection 7
A two-dimensional calculation board connected in a two-dimensional plane by means of a network 4 for connecting the host computer 1 and element processors in the two-dimensional calculation board 18 for exchanging information,
Reference numeral 20 denotes a coordinate conversion dedicated unit that is provided in the middle of the network 4 and performs coordinate conversion.

【0239】ホストコンピュータから初期条件や境界条
件がマルチプロセッサにロードされる際、まず座標変換
ユニット120において物理座標系から計算座標系に座
標変換され、マルチプロセッサへは計算座標系に関する
情報のみインプットされる。従って、要素プロセッサ3
では煩雑な座標変換計算が分離され、本来の流体計算の
高速化が図られる。また、計算結果の出力に際しては、
変換計算結果を視覚的に理解容易な物理座標系へ変換す
る必要があるが、要素プロセッサ3内の演算を妨げる物
理座標系への変換は要素プロセッサ3からホストコンピ
ュータ1へ送られる途中で座標変換専用ユニット120
により行われる。従って、計算結果の出力時間が短縮さ
れると共に、要素プロセッサは計算結果出力のために演
算を妨害されず高速演算を維持できる。
When initial conditions and boundary conditions are loaded from the host computer to the multiprocessor, the coordinates are first converted from the physical coordinate system to the calculation coordinate system in the coordinate conversion unit 120, and only information regarding the calculation coordinate system is input to the multiprocessor. It Therefore, the element processor 3
With this, complicated coordinate transformation calculation is separated, and the original fluid calculation can be speeded up. Also, when outputting the calculation result,
It is necessary to convert the conversion calculation result to a physical coordinate system that is easy to understand visually, but conversion to the physical coordinate system that hinders the calculation in the element processor 3 is performed while being transmitted from the element processor 3 to the host computer 1. Dedicated unit 120
Done by. Therefore, the output time of the calculation result is shortened, and the element processor can maintain high-speed calculation without being disturbed by the calculation result output.

【0240】このように、この実施の形態によれば、計
算に要する座標変換が容易になる上、座標系前処理、後
処理等の座標変換専用ユニットをハードウェアあるいは
ソフトウェアでサポートすることにより、格子形成が容
易になり、解の精度も向上する。また計算結果の可視化
においても、座標変換専用ユニットを使用して計算座標
から物理座標への変換を高速に処理することにより、表
示時間の短縮が実現される。
As described above, according to this embodiment, the coordinate conversion required for calculation is facilitated, and the coordinate conversion dedicated unit for preprocessing and postprocessing of the coordinate system is supported by hardware or software. Lattice formation is facilitated and the solution accuracy is improved. Also in the visualization of the calculation result, the display time can be shortened by processing the conversion from the calculation coordinate to the physical coordinate at high speed using the coordinate conversion dedicated unit.

【0241】<実施の形態21>次に、この発明の第2
1実施の形態について説明する。図31は各要素プロセ
ッサの負荷を平準化して、並列計算した際の効率化を図
るための一実施の形態を示す計算領域境界近傍の計算格
子点を示す。図において、125は計算領域の境界上の
格子点、126は計算領域内部の格子点、127は計算
領域外部で境界上の格子点125に隣接する仮想格子点
であり、これらの格子点と各要素プロセッサは一対一に
対応している。
<Twenty-first Embodiment> Next, the second embodiment of the present invention will be described.
One embodiment will be described. FIG. 31 shows calculation grid points in the vicinity of the calculation area boundary showing an embodiment for leveling the load of each element processor and improving efficiency in parallel calculation. In the figure, 125 is a grid point on the boundary of the calculation area, 126 is a grid point inside the calculation area, and 127 is a virtual grid point adjacent to the grid point 125 on the boundary outside the calculation area. The element processors have a one-to-one correspondence.

【0242】境界上の格子点125は、その隣接する格
子点の数が内部の格子点126よりも少ないため、通信
量、演算量ともに内部の格子点126よりも少ない。こ
のために、境界上の格子点125に対する処理時間が短
くなる他の内部の格子点126との時間的な同期処理が
必要となる場合には、同期によるオーバーヘッドを避
け、非同期の計算を行う場合には、演算負荷の偏りを避
け、全格子点の処理を平準化するために、境界外部に仮
想格子点127を設けて、境界上の格子点125とダミ
ーの通信を行うことで処理量を内部の格子点125と同
一とする。
The grid point 125 on the boundary has a smaller number of adjacent grid points than the internal grid point 126, and therefore has a smaller amount of communication and calculation than the internal grid point 126. For this reason, when it is necessary to perform a time synchronization process with another internal lattice point 126 that shortens the processing time for the lattice point 125 on the boundary, the overhead due to the synchronization is avoided and the asynchronous calculation is performed. In order to avoid the bias of the calculation load and to level the processing of all the grid points, a virtual grid point 127 is provided outside the boundary, and dummy grid communication with the grid point 125 on the boundary is performed to reduce the processing amount. It is the same as the internal grid point 125.

【0243】なお、上記実施の形態では、計算格子点と
要素プロセッサは一対一に対応している場合について述
べたが、一要素プロセッサに対して複数の計算格子点が
対応している場合でも、境界上の格子点125を含む要
素プロセッサは処理時間が短くなるため、境界上の格子
点125に仮想格子点127を接続して、内部の格子点
126のみを含む要素プロセッサと同様の計算負荷を与
えることにより上記実施の形態と同様の効果を得ること
ができる。
In the above embodiment, the calculation grid points and the element processors correspond one-to-one. However, even when a plurality of calculation grid points correspond to one element processor, Since the processing time of the element processor including the grid point 125 on the boundary is shortened, the virtual grid point 127 is connected to the grid point 125 on the boundary to provide the same calculation load as that of the element processor including only the internal grid point 126. By giving it, the same effect as that of the above-described embodiment can be obtained.

【0244】従って、この実施の形態によれば、各要素
プロセッサの負荷を平準化し、並列化した際の効率化を
図ることができる。
Therefore, according to this embodiment, it is possible to equalize the load of each element processor and improve the efficiency when parallelized.

【0245】<実施の形態22>次に、この発明の第2
2実施の形態について説明する。要素プロセッサがいわ
ゆるノイマン型のプロセッサの場合には、複数の格子点
の計算が割り当てられたとき、時分割処理をすることに
なる。これは、ノイマン型の場合、単一のプロセッサで
は並列処理ができないからである。
<Embodiment 22> Next, the second embodiment of the present invention will be described.
Two embodiments will be described. When the element processor is a so-called Neumann type processor, when the calculation of a plurality of grid points is assigned, the time division processing is performed. This is because in the Neumann type, a single processor cannot perform parallel processing.

【0246】これに対して、命令レベルの並列処理が可
能な、例えばデータフロープロセッサを用いれば複数の
格子点に対する計算を同時並行的に実行することができ
る。データフロープロセッサに関しては、例えば、三菱
電機技報,Vol.66,No.2,1992,pp24〜
pp25に示されている。このような記述から分かるよう
に、データフロープロセッサにおいて、命令レベルの並
列処理が可能である。
On the other hand, if instruction-level parallel processing is possible, for example, if a data flow processor is used, it is possible to execute calculations for a plurality of grid points simultaneously in parallel. For the data flow processor, see, for example, Mitsubishi Electric Technical Report, Vol. 66, No. 2,1992, pp24〜
It is shown in pp25. As can be seen from the above description, instruction level parallel processing is possible in the data flow processor.

【0247】上記のように、データフロー(データ駆
動)方式では同時実行可能な命令を独立して実行するこ
とができる。
As described above, in the data flow (data driven) system, simultaneously executable instructions can be independently executed.

【0248】このような特徴を有するデータフロープロ
セッサ上で差分法に基づく微分方程式の求解プログラム
を実現する方法について説明する。例えば、図21に示
した要素プロセッサに適用する場合、プログラムメモリ
11に計算プログラムを割り当て、浮動小数点演算部1
0でデータフローグラフに沿った演算がなされる。
A method of realizing a differential equation solving program based on the difference method on the data flow processor having such characteristics will be described. For example, when applied to the element processor shown in FIG. 21, a calculation program is assigned to the program memory 11 and the floating point arithmetic unit 1
At 0, the operation according to the data flow graph is performed.

【0249】図32は、偏微分方程式の求解のためのプ
ログラムの一部が書き込まれたプログラムメモリを示す
図である。
FIG. 32 is a diagram showing a program memory in which a part of the program for solving the partial differential equation is written.

【0250】図32に示すように、プログラムメモリ1
1の異なる領域131,132に格子点No.1と格子点N
o.2に対する計算プログラムが割り当てられている。外
部から入力される初期パケットには、プログラムメモリ
11を通過することなく命令を実行させるために、命令
コード及び行き先ノードアドレス等が予め与えられてい
る。マッチングメモリ83で待ち合わせが完了すると、
実行パケットが生成される。データメモリ8では、命令
コードに従ったメモリアクセスが行われる。データメモ
リから出力されたパケットを構成するフィールドのう
ち、行き先ノードアドレスはプログラムメモリ11で、
また命令コードとオペランドデータは演算処理部10で
各々処理される。すなわちプログラムメモリ11では入
力されたパケットの行き先ノードアドレスを読み出され
た次の行き先ノードアドレスに更新し、演算処理部10
では演算が行われた結果がパケットの第1オペランドデ
ータフィールドにセットされる。結果パケットは、再び
処理されるか、もしくは最終結果として外部に出力され
る。プログラムメモリ11の異なる領域131,132
に格納された2つのプログラムは、それぞれ結果パケッ
トに命令コード及び行き先ノードアドレスを与え、同時
に演算処理が進む。データフロー方式のプロセッサ上で
は、これら2つのプログラムが命令レベルで混在しつつ
同時並行処理される。
As shown in FIG. 32, the program memory 1
Grid points No. 1 and grid points N in different areas 131 and 132
The calculation program for o.2 is assigned. An instruction code, a destination node address, and the like are given in advance to the initial packet input from the outside in order to execute the instruction without passing through the program memory 11. When the waiting is completed in the matching memory 83,
An execute packet is generated. In the data memory 8, memory access is performed according to the instruction code. Of the fields that make up the packet output from the data memory, the destination node address is the program memory 11,
The instruction code and operand data are processed by the arithmetic processing unit 10. That is, the program memory 11 updates the destination node address of the input packet to the next destination node address read, and the arithmetic processing unit 10
Then, the result of the operation is set in the first operand data field of the packet. The result packet is processed again or output as the final result to the outside. Different areas 131, 132 of the program memory 11
Each of the two programs stored in 1 gives an instruction code and a destination node address to the result packet, and at the same time, the arithmetic processing proceeds. On a data flow type processor, these two programs are simultaneously processed in parallel while coexisting at the instruction level.

【0251】<実施の形態23>次に、この発明の第2
3実施の形態について説明する。ダイナミックデータフ
ロー方式のプロセッサ上で、識別子を用いた処理を行な
うことにより、同一プログラムを複数セットの入力デー
タに対して同時に実行することができる。このようなダ
イナミックデータフローに関しては、例えば、J.A.
シャープ著、「データ・フロー・コンピューティン
グ」、サイエンス社(1986)に示されている。
<Embodiment 23> Next, the second embodiment of the present invention will be described.
The third embodiment will be described. By performing processing using the identifier on the dynamic data flow type processor, the same program can be simultaneously executed for a plurality of sets of input data. Regarding such a dynamic data flow, for example, J. A.
It is shown in "Data Flow Computing" by Sharp, Science, Inc. (1986).

【0252】図33に示すように、当該要素プロセッサ
には2つの格子点(No.1とNo.2)が割り当てられてお
り、プログラムメモリ11には格子点No.1とNo.2に対
する小さなメインプログラム131,132が各々格納
されている。メインプログラム131,132の機能
は、それぞれの格子点に固有の識別子番号(カラー識別
子)をデータに付けた後に、計算カーネル部133にこ
れらのデータを与えることである。計算カーネル部13
3では、格子点No.1とNo.2に対する処理131、およ
び132が同時に行なわれるが、データに識別子が付与
されているので、完全に独立に2つの処理が実行され
る。
As shown in FIG. 33, two lattice points (No. 1 and No. 2) are assigned to the element processor, and the program memory 11 has a small number for the lattice points No. 1 and No. 2. Main programs 131 and 132 are stored respectively. The function of the main programs 131 and 132 is to add an identifier number (color identifier) unique to each grid point to the data, and then give these data to the calculation kernel unit 133. Calculation kernel unit 13
In the process No. 3, the processes 131 and 132 for the grid points No. 1 and No. 2 are performed at the same time. However, since the data are provided with the identifiers, the two processes are performed completely independently.

【0253】上記説明のとおり、メモリアクセスを要し
ないデータフロー処理であれば、カラー識別子を導入す
ることによって、同一プログラムを複数セットのデータ
に対して同時に実行することができる。しかし、データ
メモリアクセスについてはカラー識別子による排他制御
はできない。プログラマーの責任でこの問題は回避する
必要がある。一つの回避策として、カラー識別子とデー
タメモリアドレスの変換をプログラムで行ない、カラー
識別子毎に異なるデータメモリアドレスを得ることがで
きる。
As described above, in the case of data flow processing which does not require memory access, the same program can be executed simultaneously for a plurality of sets of data by introducing a color identifier. However, data memory access cannot be controlled exclusively by the color identifier. It is the programmer's responsibility to avoid this problem. As one workaround, the color identifier and the data memory address can be converted by a program to obtain a different data memory address for each color identifier.

【0254】図34に、カラー識別子の内容をオペラン
ドデータフィールドに格納するための関数の例を示す
(以降、カラー獲得関数と称す)。図34はカラー獲得
関数を示すデータフローグラフである。また、図の右側
にデータパケットの変遷を併せて記述した。図では簡単
のため、パケットのフォーマットとしてカラー識別子、
左データ(第1オペランド)、右データ(第2オペラン
ド)のみを記述した。図において、135から138は
順にデータの処理を行うノードである。ノード135で
はPC命令、ノード136ではOR命令、ノード137
ではPC命令そして最後のノード138ではSWAP命
令が実行される。図34においてフローグラフに用いら
れている命令の機能について以下に説明する。
FIG. 34 shows an example of a function for storing the contents of the color identifier in the operand data field (hereinafter referred to as a color acquisition function). FIG. 34 is a data flow graph showing the color acquisition function. Also, the transition of the data packet is described on the right side of the figure. For the sake of simplicity in the figure, the color identifier is used as the packet format,
Only left data (first operand) and right data (second operand) are described. In the figure, reference numerals 135 to 138 are nodes for sequentially processing data. The node 135 has a PC instruction, the node 136 has an OR instruction, and the node 137.
Then, the PC instruction is executed, and at the last node 138, the SWAP instruction is executed. The functions of the instructions used in the flow graph in FIG. 34 will be described below.

【0255】(1)PCは、カラー識別子と左データを
交換する命令である。
(1) PC is an instruction for exchanging a color identifier and left data.

【0256】(2)ORは、左データと右データとのビ
ット毎の論理和演算を行い、その結果を左データに格納
する命令である。
(2) OR is an instruction to perform bitwise OR operation of left data and right data and store the result in the left data.

【0257】(3)SWAPは、左データと右データを
交換して出力する命令である。
(3) SWAP is an instruction for exchanging and outputting left data and right data.

【0258】次に、カラー獲得関数の動作について説明
する。入力されるデータパケットは、カラー識別子とし
てC1、左データに5、右データにDR1が格納されて
いるものとする。
Next, the operation of the color acquisition function will be described. In the input data packet, C1 is stored as the color identifier, 5 is stored in the left data, and DR1 is stored in the right data.

【0259】入力されたデータは、ノード135におい
て、PC命令によりカラー識別子と左データが交換され
る。次に、そのデータはノード136において、定数値
「0」とのOR演算が施されその結果、カラー識別子が
5、左データ、および右データがC1のデータパケット
が出力される。さらに、ノード137において、このデ
ータパケットにPC命令が実行され、カラー識別子がC
1、左データが5、右データがC1のパケットとなる。
最後に、ノード138において、SWAP命令により左
データと右データが交換され、入力されたデータパケッ
トと同一のカラー識別子をもち、かつ、左データに自ら
が有するカラー識別子が格納され出力される。カラー獲
得関数からの出力パケットは自らの有するカラー識別子
を左データとして獲得できた。
In the input data, the color identifier and the left data are exchanged by the PC command at the node 135. Next, the data is subjected to an OR operation with a constant value "0" at the node 136, and as a result, a data packet having a color identifier of 5, left data, and right data of C1 is output. Further, at node 137, a PC instruction is executed on this data packet and the color identifier is changed to C.
The packet is 1, the left data is 5, and the right data is C1.
Finally, in the node 138, the left data and the right data are exchanged by the SWAP instruction, and the same color identifier as the input data packet is stored, and the left data stores and outputs its own color identifier. The output packet from the color acquisition function could acquire its own color identifier as left data.

【0260】次に、上記のカラー獲得関数で計算した結
果を用いてデータメモリのアドレスを計算する方法につ
いて説明する。各格子点にカラー識別子を割り当てる方
法の一例についての概念図を図35に示す。図におい
て、139は格子点である。格子点139がメッシュ状
に配置されている2次元の解析について説明する。ここ
では、N行N列のメッシュ状に配置された格子点139
に、左上端にカラー識別子0を割り付け、右方向及び下
方向へ進むに従ってカラー番号が増加するように各格子
点へのカラーの割付を行っている。
Next, a method of calculating the address of the data memory using the result calculated by the above color acquisition function will be described. FIG. 35 is a conceptual diagram showing an example of a method of assigning a color identifier to each grid point. In the figure, 139 is a grid point. A two-dimensional analysis in which the lattice points 139 are arranged in a mesh will be described. Here, grid points 139 arranged in a mesh of N rows and N columns are arranged.
In addition, the color identifier 0 is assigned to the upper left corner, and the color is assigned to each grid point so that the color number increases in the rightward and downward directions.

【0261】図35に示す概念図において、各格子点1
39の左上の符号が各格子点に割り当てられたカラー識
別子である。上記のような割り付けを行ったため、カラ
ー獲得関数で獲得した自格子点に割り当てられているカ
ラー識別子を用いて近傍の格子点に割り当てられている
カラー識別子(CN)を下記の数36のようにして計算
することができる。
In the conceptual diagram shown in FIG. 35, each grid point 1
The code at the upper left of 39 is the color identifier assigned to each grid point. Since the above-described allocation is performed, the color identifier (CN) assigned to the neighboring grid points is set as shown in the following formula 36 using the color identifier assigned to the own lattice point acquired by the color acquisition function. Can be calculated.

【0262】なお、方向を示す用語として、上方を北、
下方を南、右方を東、左方を西と呼ぶことにする。数3
6の(1)式に当該格子点の北方向の近傍格子点に割り
当てられたカラー識別子を示す。同様に、数36の
(2)〜(4)式に、それぞれ、当該格子点の南、西及
び東方向の近傍格子点に割り当てられたカラー識別子を
示す。
As a directional term, the upper part is north,
The lower part is called south, the right part is called east, and the left part is called west. Number 3
Equation (6) of 6 shows the color identifiers assigned to the neighboring grid points in the north direction of the grid point. Similarly, Equations (2) to (4) of Equation 36 show color identifiers assigned to neighboring grid points in the south, west, and east directions of the grid point, respectively.

【0263】[0263]

【数36】 [Equation 36]

【0264】図36に示されるように、各格子点毎にデ
ータメモリ8のY語を割り当て、カラー識別子がZであ
る格子点に割り当てられているデータメモリのアドレス
がZ×Y〜Z×Y+Y−1の領域になるようにメモリ割
付を行っている。
As shown in FIG. 36, the Y word of the data memory 8 is assigned to each grid point, and the address of the data memory assigned to the grid point having the color identifier Z is Z × Y to Z × Y + Y. Memory allocation is performed so that the area becomes -1.

【0265】したがって、カラー識別子がCNである格
子点に割り当てられているメモリのアドレスは数37で
与えられる。
Therefore, the address of the memory assigned to the lattice point whose color identifier is CN is given by equation 37.

【0266】[0266]

【数37】 [Equation 37]

【0267】ただし、kは予め定めた数であり、カラー
識別子がCNである格子点に割り当てられているY語の
データメモリ要素のうちのk番目の語をアクセスするこ
とを意味する。
However, k is a predetermined number and means that the kth word of the Y word data memory element assigned to the grid point whose color identifier is CN is accessed.

【0268】以上説明したように、カラー識別子とデー
タメモリアドレスの変換をプログラムで行ない、カラー
識別子毎に異なるデータメモリの領域をアクセスするよ
うにしたので、特別なハードウェアを使用することな
く、データフロー方式においても、要素プロセッサ3の
メモリを相互に参照することによって、等価的に格子点
間の非同期の通信を実現することができる。
As described above, since the color identifier and the data memory address are converted by the program to access different data memory areas for each color identifier, the data can be stored without using special hardware. Even in the flow method, by asynchronously referring to the memories of the element processors 3, it is possible to equivalently realize asynchronous communication between lattice points.

【0269】<実施の形態24>次に、この発明の第2
4実施の形態について説明する。この種の、微分方程式
を求解する情報処理装置においては、対象とする方程式
を差分化、すなわち空間(場合によっては時間も含む)
を格子状に分割し、各格子点(分割された空間の代表
点)での諸量を求めるために、近傍の格子点での計算結
果を使用しながら収束計算を実行する。この実施の形態
では、各格子点での計算結果を格納するメモリを各格子
点毎に割り当て、格子点間でのデータの授受を上記のメ
モリを参照することで実現する。以下に格子点間でのデ
ータ授受の方法を示した一実施の形態について説明す
る。
<Twenty-fourth Embodiment> Next, the second embodiment of the present invention will be described.
Four embodiments will be described. In this type of information processing apparatus for solving a differential equation, the target equation is differentiated, that is, space (including time in some cases)
Is divided into grids, and in order to obtain various quantities at each grid point (representative point of the divided space), convergence calculation is executed using the calculation results at neighboring grid points. In this embodiment, a memory for storing the calculation result at each grid point is assigned to each grid point, and data is transferred between the grid points by referring to the above memory. An embodiment showing a method of exchanging data between grid points will be described below.

【0270】図37に1つの格子点での計算結果を格納
するために割り当てられたデータメモリの領域を示す。
図において、140は格子点での計算結果を格納するた
めデータメモリ8内の一つの格子点に割り当てられた領
域、141乃至144は領域140内に割り付けられ、
それぞれ東、西、南及び北方向の格子点の通信要否フラ
グのデータを格納している領域である。
FIG. 37 shows the area of the data memory allocated to store the calculation result at one grid point.
In the figure, 140 is an area allocated to one grid point in the data memory 8 for storing the calculation result at the grid point, and 141 to 144 are allocated to the area 140,
This is an area in which data of communication necessity flags at grid points in the east, west, south, and north directions are stored.

【0271】図37に示されているように、各格子点に
割り当てられたデータメモリの領域には、(1)格子点
での計算結果のうち隣接する格子点が参照するデータ、
及び(2)通信の方向(ここでは、2次元を仮定して、
東、西、南、北方向と称する)毎に通信の要否、通信が
同一プロセッサ内に割り付けられた格子点処理か、ネッ
トワークを介した通信であるか否か等を示したフラグの
2種類のデータが格納されている。
As shown in FIG. 37, in the area of the data memory assigned to each grid point, (1) the data referred to by the adjacent grid point among the calculation results at the grid point,
And (2) direction of communication (here, assuming two dimensions,
(East, west, south, north direction) each of two types of flag indicating whether communication is required, whether the communication is grid point processing allocated in the same processor, or whether communication is via a network. The data of is stored.

【0272】図38は、格子点間で通信を行う場合の処
理の流れを示すフローチャートである。以下、図38の
フローチャートに沿って説明する。まず、格子点間で通
信を行う場合には、通信方向毎に割り当てられたデータ
メモリ領域の予め定められたアドレスに格納されたデー
タを読み出す(ステップST1)。次に、ステップST
2において、通信の要否の判断を行う。つまり、読み出
されたデータが「1」である場合は通信しようとする方
向に隣接する格子点が存在することを意味しており通信
のための処理を行う。他方、読み出されたデータが
「0」の場合は、この格子点は系の境界上に位置し、こ
の方向には通信が不要であることを意味し、通信のため
の処理は行われない。
FIG. 38 is a flow chart showing the flow of processing when communication is performed between grid points. Hereinafter, description will be given along the flowchart of FIG. 38. First, when communication is performed between grid points, the data stored at a predetermined address in the data memory area assigned for each communication direction is read (step ST1). Next, step ST
At 2, the necessity of communication is determined. That is, when the read data is "1", it means that there are adjacent grid points in the direction in which communication is to be performed, and processing for communication is performed. On the other hand, when the read data is “0”, this grid point is located on the boundary of the system, and communication is not required in this direction, and processing for communication is not performed. .

【0273】次に、ステップST3において、通信の方
向に従って、通信の種類を示すフラグが格納されたデー
タメモリの予め定められた別のアドレスに格納されたデ
ータを読み出し、上記と同様に、読みだしたデータ値を
テストする。
Next, in step ST3, the data stored in another predetermined address of the data memory in which the flag indicating the type of communication is stored is read according to the direction of communication and read in the same manner as above. Test the data value you made.

【0274】読み出されたデータの値が「0」である場
合は、同一プロセッサ内に割り付けられた格子点との通
信を行うことを意味し、この発明の第23実施の形態で
示した方法でアドレス計算を行い、隣接格子点に割り当
てられたデータメモリ領域を参照・更新する事で格子点
間での通信を行う。
When the value of the read data is "0", it means that communication is performed with the lattice point allocated in the same processor, and the method shown in the 23rd embodiment of the present invention. The address calculation is performed by, and the communication between the grid points is performed by referring to and updating the data memory area allocated to the adjacent grid points.

【0275】他方、読みだしたデータが「0」以外であ
る場合は、通信を行う格子点が別のプロセッサに割り付
けられていることを意味していると同時に、読みだした
32ビットのデータの上位8ビットには通信の相手の格
子点が割り付けられたプロセッサの番号、および下位2
4ビットには通信相手の格子点に割り付けられたデータ
メモリのベースアドレスが格納されている。実施の形態
22で示したように、上記の32ビットのデータに、オ
フセットアドレスを加算して所望のデータが格納されて
いるデータメモリのアドレスを計算する。上記のデータ
をアドレスとして分散共有メモリアクセスを実行する
と、通信を行う必要がある格子点が割り付けられている
プロセッサへデータパケットがネットワークを介して転
送され、所望のデータを読み出し、そのデータとともに
再び通信元のプロセッサへ戻り、格子点の計算を続行す
る。
On the other hand, when the read data is other than "0", it means that the lattice point for communication is assigned to another processor, and at the same time, the read 32-bit data is stored. The upper 8 bits are the number of the processor to which the lattice point of the communication partner is assigned, and the lower 2
The base address of the data memory assigned to the lattice point of the communication partner is stored in 4 bits. As shown in the twenty-second embodiment, the offset address is added to the above 32-bit data to calculate the address of the data memory in which the desired data is stored. When distributed shared memory access is executed using the above data as an address, the data packet is transferred via the network to the processor to which the grid point that needs to be communicated is assigned, the desired data is read, and communication is performed again with that data. Return to the original processor and continue calculation of grid points.

【0276】以上説明したように、格子点間で通信を行
うマルチプロセッサにおいて、各格子点ごとに各方向ご
との通信可能方向かどうか、ネットワークを介する通信
かどうか等の通信可否、方法を示す情報を格納するフィ
ールドをデータメモリ内に割り当て、ネットワークを介
する通信の場合は分散共有メモリアクセスを使用した。
なお、分散共有メモリアクセスの機構については、特開
平3−122338号公報に詳細に開示されている。
As described above, in a multiprocessor that communicates between grid points, information indicating whether or not communication is possible for each direction at each grid point, communication availability such as communication through a network, and a method. The field to store is allocated in the data memory, and the distributed shared memory access is used for the communication through the network.
The distributed shared memory access mechanism is disclosed in detail in Japanese Patent Application Laid-Open No. 3-122338.

【0277】このため、境界上の格子点の処理も、境界
内の格子点処理も同一のプログラムで実現でき、プログ
ラムサイズの削減ができる。
Therefore, the processing of the grid points on the boundary and the processing of the grid points on the boundary can be realized by the same program, and the program size can be reduced.

【0278】また、各格子点を複数のプロセッサにわた
って割り付けた場合、格子点の割付方法によらずプロセ
ッサをわたる格子点間の通信が容易に実現できる。
Further, when each grid point is allocated over a plurality of processors, communication between grid points across the processors can be easily realized regardless of the grid point allocation method.

【0279】以降に述べる、この発明の第25実施の形
態、第26実施の形態、第27実施の形態、第28実施
の形態においては、複数の格子点の処理プログラムを同
一の要素プロセッサに割り付け、格子点間のデータ授受
を同一要素プロセッサ内のデータメモリを介して行うこ
とを前提としている。以下に、各実施の形態についての
詳細な説明をする。
In the twenty-fifth, twenty-sixth, twenty-seventh and twenty-eighth embodiments of the present invention described below, processing programs for a plurality of grid points are assigned to the same element processor. It is premised that data is exchanged between grid points via a data memory in the same element processor. Below, each embodiment will be described in detail.

【0280】<実施の形態25>次に、この発明の第2
5実施の形態について説明する。各格子点ごとにメモリ
を割り当て、このメモリを介して近接する格子点間の通
信を行うマルチプロセッサにおいて、格子点ごとに通信
すべき各方向のメモリ領域を示すテーブルをもつ計算方
式について説明する。
<Twenty-fifth Embodiment> Next, the second embodiment of the present invention will be described.
Five embodiments will be described. In a multiprocessor which allocates a memory for each grid point and communicates between adjacent grid points via this memory, a calculation method having a table showing a memory area in each direction to be communicated for each grid point will be described.

【0281】図39はデータメモリの領域の分割を示す
図である。図において、145は隣接格子点での計算結
果を得るためデータメモリ8内の一つの格子点に割り当
てられた領域、146〜149は領域145内に割り付
けられ、それぞれ東、西、南及び北方向の格子点のメモ
リ領域の先頭アドレスを格納している領域である。
FIG. 39 is a diagram showing division of the data memory area. In the figure, 145 is an area assigned to one grid point in the data memory 8 in order to obtain the calculation result at an adjacent grid point, and 146 to 149 are assigned to the area 145, respectively in the east, west, south and north directions. This area stores the start address of the memory area of the grid point.

【0282】図39に示すように、各格子点ごとのメモ
リ割り当ての中に、通信を必要とする各方向の格子点の
メモリ領域の先頭アドレスを格納する。この実施の形態
の場合には、格子点ごとに、東方向、西方向、南方向、
北方向の4つのデータ領域146〜149を使用して通
信方向の格子点のメモリ領域の先頭アドレスを格納して
いる。
As shown in FIG. 39, the start address of the memory area of the grid point in each direction requiring communication is stored in the memory allocation for each grid point. In the case of this embodiment, for each grid point, east direction, west direction, south direction,
The four data areas 146 to 149 in the north direction are used to store the start addresses of the memory areas of the grid points in the communication direction.

【0283】図40は、通信を行う場合の処理の流れを
示すフローチャートである。通信を行う場合には、通信
方向に従って、通信先のメモリ領域の先頭アドレスを読
み出す(ステップST6)。通信しようとする方向が、
通信不可能方向の場合には、通信方向の格子点のメモリ
領域の先頭アドレスを格納する領域には、予め−1が格
納されている。読み込んだデータが−1であった場合に
は、通信処理は行わない(ステップST7)。通信不可
能方向でないと確認された場合には、通信先の先頭アド
レスに通信すべきデータのアドレスオフセットを加算
し、実際に通信するアドレスを得、実際の通信を行う
(ステップST8)。
FIG. 40 is a flow chart showing the flow of processing for communication. When performing communication, the top address of the memory area of the communication destination is read according to the communication direction (step ST6). The direction you are trying to communicate
In the case of the communication impossible direction, -1 is stored in advance in the area for storing the start address of the memory area of the grid point in the communication direction. If the read data is -1, communication processing is not performed (step ST7). If it is confirmed that the communication is not possible, the address offset of the data to be communicated is added to the head address of the communication destination, the address for actual communication is obtained, and actual communication is performed (step ST8).

【0284】なお、上記実施の形態では、通信すべき各
方向のメモリ領域の先頭アドレスを格納する場合の例を
示したが、例えば格子点番号順にメモリ領域が取られて
いる場合は、格子点番号を格納するような実施の形態に
対してもこの発明は適用できる。
In the above embodiment, an example of storing the start address of the memory area in each direction to be communicated is shown. However, for example, when the memory areas are arranged in the order of the grid point numbers, the grid points are The present invention can be applied to an embodiment in which a number is stored.

【0285】また、上記実施の形態では、通信すべき各
方向のメモリ領域の先頭アドレスを格納する場合の例を
示したが、通信すべきメモリ領域を特定できる識別子、
例えば、通信元の格子点のメモリ領域の先頭アドレスと
通信先のメモリ領域の先頭アドレスとの差やその値を一
つ格子点が使用するメモリのサイズで割った値である格
子点間距離や、ポインタを格納するような実施の形態に
対してもすべて、この発明は適用できる。
Further, in the above-mentioned embodiment, an example of storing the head address of the memory area in each direction to be communicated is shown. However, an identifier capable of specifying the memory area to be communicated,
For example, the difference between the start address of the memory area of the grid point of the communication source and the start address of the memory area of the communication destination, or the distance between grid points, which is the value obtained by dividing the value by the size of the memory used by one grid point, The present invention can be applied to all embodiments in which a pointer is stored.

【0286】また、上記実施の形態では、通信すべき方
向として、4方向の場合について、説明したが、6方向
や8方向(北東、北西、南西、南東方向、または、その
一部を含む場合)の場合、についても、この発明は適用
できる。
Further, in the above-mentioned embodiment, the case where four directions are set as the communication directions has been described. However, six directions and eight directions (northeast, northwest, southwest, southeast, or a part thereof is included). In the case of), the present invention can be applied.

【0287】また、上記実施の形態では、通信不可能方
向の場合には、−1が格納されている場合について説明
したが、識別子として使用しない任意の値を通信不可能
方向を示す識別子として使用する実施の形態に対して
も、この発明は適用できる。
Further, in the above embodiment, in the case of the incommunicable direction, the case where -1 is stored has been described, but any value not used as the identifier is used as the identifier indicating the incommunicable direction. The present invention can also be applied to the embodiments described above.

【0288】粗ノード処理時には、通信すべき近接格子
点が少し離れた点であり、細ノード処理時には近くの格
子点になるといったように、通信すべき格子点が変化す
るような処理の場合でも、通信方向の格子点のメモリ領
域を示す識別子の領域を書き換えるだけで、全く同一の
プログラムで処理を行うことができる。
Even in the case of the processing in which the lattice points to be communicated are changed, such as the neighboring lattice points to be communicated are a little apart in the coarse node processing, and the neighboring lattice points are in the fine node processing. , It is possible to perform processing with exactly the same program simply by rewriting the area of the identifier indicating the memory area of the grid point in the communication direction.

【0289】また、従来は図41に示したような、凸凹
のある領域を処理の対象とする場合には、凸凹領域を包
含するような正方形や長方形を処理対象としていた。こ
のため、本来処理しなくてもよい格子点に対しても処理
が必要であったのに対して、この発明を適用すると任意
の格子点の任意の方向に対して、通信不可能格子点とす
ることが可能であるので、凸凹領域のままで処理可能と
なる。これにより、従来、無駄に処理を行っていた、凸
凹領域の外側の格子点のメモリ領域が不要となり、メモ
リサイズの圧縮ができる。また、凸凹領域の外の格子点
の処理が不要となり、処理の高速化が可能となる。メモ
リサイズの圧縮と処理の高速化の両方が実現できる。
Further, conventionally, when a region having unevenness as shown in FIG. 41 is to be processed, a square or a rectangle including the uneven region is to be processed. Therefore, it is necessary to process grid points that do not need to be processed originally. However, when the present invention is applied, a grid point that cannot communicate with any grid point in any direction is recognized. Since it is possible to perform the processing, it is possible to perform processing with the uneven area as it is. As a result, the memory area of the grid points outside the uneven area, which has been wastefully processed in the past, becomes unnecessary, and the memory size can be compressed. Further, it is not necessary to process the grid points outside the uneven area, and the processing speed can be increased. Both memory size compression and processing speed can be realized.

【0290】この実施の形態の通信方向の識別子として
使用する識別子としては、格子点番号や通信元の格子点
のメモリ領域の先頭アドレスと通信先のメモリ領域の先
頭アドレスとの差を一つ格子点が使用するメモリのサイ
ズで割った値を用いた場合の方が、アドレスやアドレス
の差そのものを使用する場合に比べて、メモリとして必
要なビット数が少なくなり使用メモリサイズの圧縮にな
る。
As an identifier used as an identifier in the communication direction of this embodiment, a grid point number or the difference between the start address of the memory area of the grid point of the communication source and the start address of the memory area of the communication destination is one grid. When the value divided by the size of the memory used by the point is used, the number of bits required as the memory is smaller and the used memory size is compressed, as compared with the case of using the address or the address difference itself.

【0291】上記実施の形態は、一つの要素プロセッサ
に多数の格子点を畳み込んだ場合のメモリ領域アクセス
方法を提供するものであるが、要素プロセッサ間の通信
に関しては、以下に示す実施の形態によって通信を簡略
化することが可能となる。
The above embodiment provides a memory area access method when a large number of lattice points are convoluted in one element processor. Regarding the communication between the element processors, the following embodiment is provided. This makes it possible to simplify communication.

【0292】格子型トポロジーに要素プロセッサを接続
した場合、斜め方向の要素プロセッサとの通信が問題と
なる。図42は斜め方向の要素プロセッサとの通信方式
を示す図で、図において、151はNW方向の要素プロ
セッサを、152はN方向の要素プロセッサを、153
はNE方向の要素プロセッサ、154はW方向の要素プ
ロセッサを、155は計算中の要素プロセッサを、15
6はE方向の要素プロセッサを、157はSW方向の要
素プロセッサを、158はS方向の要素プロセッサを、
159はSE方向の要素プロセッサを、それぞれ表して
いる。
When the element processors are connected to the lattice type topology, communication with the element processors in the diagonal direction becomes a problem. FIG. 42 is a diagram showing a communication system with diagonal element processors. In the figure, 151 is an NW direction element processor, 152 is an N direction element processor, and 153.
Is an element processor in the NE direction, 154 is an element processor in the W direction, 155 is an element processor being calculated,
6 is an element processor in the E direction, 157 is an element processor in the SW direction, 158 is an element processor in the S direction,
Reference numerals 159 denote SE-direction element processors, respectively.

【0293】また、図において、160はNW方向の仮
想通信路を、161はSE方向の仮想通信路を、162
は要素プロセッサ間ネットワークを、163はSW方向
の仮想通信路を、164はNE方向の仮想通信路を示
す。要素プロセッサ155が、NW方向及びSE方向の
要素プロセッサ151,159と通信する場合、従来の
方法では、仮想通信路160及び161を直接要素プロ
セッサ151,155間及び要素プロセッサ155,1
59間に敷設することで通信を行うか、要素プロセッサ
152或いは158を経由してデータ通信を行ってき
た。ところが、これらの通信方法では、前者の場合、通
信網が複雑になりすぎる点、後者の場合、通信の同期待
ちが大きくなりシステム全体の速度パフォーマンスが劣
化する点など問題点が多かった。そこで、それぞれの要
素プロセッサが上下の要素プロセッサの持つデータをメ
モリ上に2重持ちすることによって、例えば要素プロセ
ッサ151との通信は、要素プロセッサ154のメモリ
上に保存されている要素プロセッサ151のデータを参
照することで、通信方式が簡略化される。但し、2重持
ちデータは、元データ更新の度に書き換えられなければ
ならない。
In the figure, 160 is a virtual communication path in the NW direction, 161 is a virtual communication path in the SE direction, and 162 is a virtual communication path.
Is a network between element processors, 163 is a virtual communication path in the SW direction, and 164 is a virtual communication path in the NE direction. When the element processors 155 communicate with the element processors 151 and 159 in the NW direction and the SE direction, in the conventional method, the virtual communication paths 160 and 161 are directly connected between the element processors 151 and 155 and between the element processors 155 and 1.
Communication is performed by laying between 59 or data communication is performed via the element processor 152 or 158. However, in these communication methods, there are many problems such as the communication network being too complicated in the former case and the communication synchronization waiting time being large and the speed performance of the entire system being deteriorated in the latter case. Therefore, each element processor duplicately holds the data of the upper and lower element processors in the memory, so that, for example, communication with the element processor 151 is performed by the data of the element processor 151 stored in the memory of the element processor 154. The communication method is simplified by referring to. However, the duplicated data must be rewritten every time the original data is updated.

【0294】また、上下の要素プロセッサのデータの代
わりに、左右の要素プロセッサのデータを2重持ちし、
例えば、要素プロセッサ151と通信を行う場合は、要
素プロセッサ152のメモリ上に記憶されている要素プ
ロセッサ151のデータとアクセスすることでも同様の
効果を奏する。
Further, instead of the data of the upper and lower element processors, the data of the left and right element processors are double held,
For example, when communicating with the element processor 151, the same effect can be obtained by accessing the data of the element processor 151 stored in the memory of the element processor 152.

【0295】<実施の形態26>次に、この発明の第2
6実施の形態について説明する。各格子点ごとにメモリ
を割り当て、このメモリを介して近接する格子点間の通
信を行うマルチプロセッサにおいて、格子点ごとに通信
すべき各方向のメモリ領域を示す情報を保持させ、特に
通信不可能方向には共通のダミー領域を示す情報を保持
するようにした。
<Twenty-sixth Embodiment> Next, the second embodiment of the present invention will be described.
Six embodiments will be described. In a multiprocessor that allocates a memory for each grid point and communicates between adjacent grid points via this memory, holds information indicating the memory area in each direction to be communicated for each grid point, and communication is not possible Information indicating a common dummy area is held in the direction.

【0296】図43に、第26実施の形態で使用される
メモリの割り付け図を示す。図43において、170は
データメモリ8内の処理対象の格子点に割り当てられた
メモリ領域、171はメモリ領域170内の一つの格子
点に割り当てられたメモリ領域、172は処理対象の格
子点に割り当てられたメモリ領域170とは別にデータ
メモリ8内に割り当てられた通信不可能方向用のダミー
領域として割り当てられた1格子分のメモリ領域であ
る。実際に処理する格子点用のメモリ領域以外に通信不
可能方向用のダミー領域として1格子分のメモリ領域を
確保する。実際に処理する格子点に割り当てられたメモ
リ領域の各通信方向の格子点のメモリ領域を示す識別子
を格納する領域に通信不可能領域を示す識別子として、
ダミーの領域を示す識別子を格納しておく。
FIG. 43 shows a memory allocation diagram used in the twenty-sixth embodiment. In FIG. 43, 170 is a memory area allocated to a grid point to be processed in the data memory 8, 171 is a memory area allocated to one grid point in the memory area 170, and 172 is a grid point to be processed. This is a memory area for one grid, which is allocated as a dummy area for the incommunicable direction, which is allocated in the data memory 8 separately from the allocated memory area 170. In addition to the memory area for the grid points to be actually processed, a memory area for one grid is secured as a dummy area for the incommunicable direction. As an identifier indicating an incommunicable area in an area storing an identifier indicating a memory area of a grid point in each communication direction of a memory area assigned to a grid point to be actually processed,
The identifier indicating the dummy area is stored.

【0297】この実施の形態の処理の流れを図44に示
す。通信処理を行うにあたっては、通信方向の格子点の
メモリ領域を示す識別子を読み込む(ステップST1
0)。その後、その識別子がダミー領域であってもなく
ても、その領域に対して、通信処理を行う(ステップS
T11)。
The processing flow of this embodiment is shown in FIG. When performing communication processing, an identifier indicating a memory area of a grid point in the communication direction is read (step ST1).
0). Then, whether or not the identifier is a dummy area, communication processing is performed for that area (step S
T11).

【0298】通信処理に通信先の領域からの読み出しが
含まれる場合には、ダミー領域にも、処理に悪影響がな
いような値を予め格納しておく。但し、各格子点の処理
で必要なデータを、近接格子点から必ず予め渡すように
処理させることによって通信では、通信元から通信先へ
の処理を書き込みのみに限定することは、可能である。
When the communication processing includes reading from the communication destination area, a value that does not adversely affect the processing is also stored in advance in the dummy area. However, in the communication, it is possible to limit the processing from the communication source to the communication destination to only writing, by processing so that the data necessary for the processing of each grid point is always passed from the adjacent grid point in advance.

【0299】通信可能か不可能かに関わらず同一の処理
であるので、判定部分のプログラムが不要となり、プロ
グラムサイズの圧縮が可能となる。
Since the same processing is performed regardless of whether communication is possible or not, the program of the determination part is unnecessary and the program size can be compressed.

【0300】通信可能か不可能かに関わらず同一の処理
であるので、格子点ごとの計算負荷のばらつきを抑える
ことができ、通信不可能方向の多い格子点だけが処理が
進みすぎることを避けることができ、各格子点間での同
期処理等が必要な場合であっても、プログラムサイズの
圧縮および処理の高速化が実現できる。
Since the same processing is performed regardless of whether communication is possible or not, it is possible to suppress variations in calculation load for each grid point, and to avoid excessive progress of processing only for grid points with many directions where communication is impossible. Even if synchronization processing between grid points is required, the program size can be reduced and the processing speed can be increased.

【0301】<実施の形態27>次に、この発明の第2
7実施の形態について説明する。隣接する格子点が要素
プロセッサをまたがって割り当てられている場合、デー
タの授受の遅れ時間を短縮するために、双方の要素プロ
セッサで相手方のデータを2重持ちすることが効果的で
ある。この場合、これらの格子点に対するデータが更新
されたときには必ず隣接プログラムに新しいデータを送
って、双方の要素プログラムのデータの一貫性を保証す
る必要がある。
<Twenty-seventh Embodiment> Next, the second embodiment of the present invention will be described.
Seven embodiments will be described. When adjacent grid points are allocated across element processors, it is effective to double hold the other party's data in both element processors in order to reduce the delay time of data transfer. In this case, it is necessary to send the new data to the adjacent program whenever the data for these grid points is updated to ensure the consistency of the data of both element programs.

【0302】しかし、データが更新される度に隣接要素
プロセッサにデータを送信するのは、更新されたデータ
の差異がわずかであるときには、いたずらにプロセッサ
間通信を増加させる結果になり、本来の処理に悪影響を
及ぼす。図45は隣接プロセッサ間での通信の状況を示
す概念図である。図において、左側の要素プロセッサ3
は、格子点No.0〜No.nの計算を行い、右側の要素プロセ
ッサ3は格子点No.n+1〜No.mの計算を行う。図45に示
すように、例えば左側の要素プロセッサ3が格子点No.n
の計算結果データを隣接要素プロセッサ3へ送る場合、
隣接要素プロセッサ3への送信すべきデータAを前の世
代のデータBと比較して、同じまたは一定値以下の変位
ならば送らないようにすることにより、このような悪影
響を回避することができる。
However, transmitting the data to the adjacent element processor each time the data is updated results in unnecessarily increasing the inter-processor communication when the difference between the updated data is small, and the original processing is performed. Adversely affect. FIG. 45 is a conceptual diagram showing the state of communication between adjacent processors. In the figure, the left element processor 3
Calculates the grid points No. 0 to No. n, and the element processor 3 on the right side calculates the grid points No. n + 1 to No. m. As shown in FIG. 45, for example, the element processor 3 on the left side is the grid point No. n.
When the calculation result data of is sent to the adjacent element processor 3,
Such adverse effect can be avoided by comparing the data A to be transmitted to the adjacent element processor 3 with the data B of the previous generation and not transmitting the same if the displacement is equal to or less than a certain value. .

【0303】データBはここでは前の世代(すなわち、
前回の計算結果データ)としたが、「一定値以下の変位
ならば送らないようにする」場合には、毎回の変化はわ
ずかであっても差が蓄積することが懸念されるので、デ
ータBは前回隣接要素プロセッサ3に送信したデータと
してもよい。
Data B is now the previous generation (ie,
Although the previous calculation result data) has been used, if "Don't send if the displacement is less than a certain value", there is concern that a difference may be accumulated even if the change is small each time. May be the data transmitted to the adjacent element processor 3 last time.

【0304】<実施の形態28>次に、この発明の第2
8実施の形態による方程式を解くためのプログラムの簡
略化について説明する。図46は方程式の解析のための
計算領域と計算領域に割り付けられた格子点との関係を
示す平面図である。実線で囲まれた処理を要する格子点
の外側に1周分の格子点を考える。外側1周分の各格子
点用のメモリ領域を割り当てておき、各々の格子点の下
の数字を格子点番号とする。
<Twenty-eighth Embodiment> Next, the second embodiment of the present invention will be described.
Simplification of the program for solving the equations according to the eight embodiments will be described. FIG. 46 is a plan view showing the relationship between the calculation area for analysis of equations and the grid points assigned to the calculation area. Consider a grid point for one round outside a grid point surrounded by a solid line and requiring processing. A memory area for each grid point for one outer circle is allocated, and the numbers below each grid point are set as grid point numbers.

【0305】通信元の格子点番号がnのとき、各方向の
格子点番号は、数38の計算で得ることができ、端の格
子点に対しても特別な処理は必要ない。
When the grid point number of the communication source is n, the grid point number in each direction can be obtained by the calculation of Expression 38, and no special processing is required for the end grid points.

【0306】[0306]

【数38】 [Equation 38]

【0307】格子点に対するデータがアドレスSから格
子点順に1つの格子点ごとに、Rエントリづつ確保され
ているとすると、上記の計算により得られた通信先の格
子点番号をDとすると、数39で通信先の格子点のデー
タ領域の先頭アドレスを得ることができる。通信処理
は、第25及び第26実施の形態と同じである。
Assuming that the data for the grid point is secured from the address S for each grid point in order of R entries for each grid point, and if the grid point number of the communication destination obtained by the above calculation is D, then At 39, the start address of the data area of the lattice point of the communication destination can be obtained. The communication process is the same as in the 25th and 26th embodiments.

【0308】[0308]

【数39】 [Formula 39]

【0309】通信処理に通信先の領域からの読み出しが
含まれる場合には、各ダミー領域には、処理に悪影響が
ないような値を予め格納しておく。これは、ダミー領域
はかべと同一のデータにする近接格子点と同一のデータ
を持たせることで大きな影響を省く等により実現でき
る。また、各演算の単位元となる値がある場合には、そ
の値を設定することでも実現できる。
When the communication processing includes reading from the communication destination area, a value that does not adversely affect the processing is stored in advance in each dummy area. This can be realized by, for example, omitting a large influence by providing the dummy area with the same data as the neighboring grid points that have the same data as the wall. If there is a value that is the unit element of each calculation, it can be realized by setting that value.

【0310】この実施の形態では、計算により各方向の
格子点番号を得たが第25実施の形態と同様に通信方向
の格子点の識別子をメモリに格納する実施の形態に対し
ても、上記方法が適用できる。
In this embodiment, the grid point number in each direction is obtained by calculation. However, as in the twenty-fifth embodiment, the grid point identifiers in the communication direction are stored in the memory as described above. The method can be applied.

【0311】第25ないし第27実施の形態では、各格
子点ごとに一つにかたまった領域のメモリを割り当てた
場合について説明したが、たとえば圧力値、速度といっ
た要素ごとにかためて領域を確保し、各領域は格子点番
号順に各要素が格納されているといったように、要素ご
とにかためて領域を確保した場合の実施の形態について
も適用できる。
In the twenty-fifth to twenty-seventh embodiments, description has been given of the case where the memory of the area gathered into one is assigned to each grid point, but the area is secured by each element such as pressure value and speed. However, it is also applicable to the embodiment in which each element is stored in the order of the grid point number, and the area is secured for each element.

【0312】各格子点ごとにデータメモリ領域を割り当
て、前記メモリを参照することにより隣接する格子点の
データを得ることができる計算方式において、境界に位
置する格子点について、外側の格子点を模擬する仮想的
なデータ領域を割り当てることにより、処理プログラム
の単純化、プログラムサイズの圧縮、処理の高速化が実
現できる。
In the calculation method in which the data memory area is allocated to each grid point and the data of the adjacent grid points can be obtained by referring to the memory, the grid points outside the boundary grid points are simulated. By allocating the virtual data area to be used, the processing program can be simplified, the program size can be reduced, and the processing speed can be increased.

【0313】要素ごとをかためて領域を確保する場合に
は、頻繁にアクセスする要素をかためることで、キャッ
シュのヒット率を向上させることができ、処理の高速化
が可能となる。
When the area is secured by storing each element, the cache hit rate can be improved and the processing can be speeded up by storing the elements that are frequently accessed.

【0314】<実施の形態29>次にこの発明の第29
実施の形態について説明する。微分方程式の求解におい
ては対象とする系を細かい格子点に分割するが、この場
合、境界条件によって定まる格子点の状態が全格子点に
伝搬し、安定状態に到るまでには境界から各々の格子点
ノードまでの点数に比例した時間がかかり、収束に到る
時間が長くなっていることが懸念される。
<Twenty-ninth Embodiment> Next, the twenty-ninth embodiment of the present invention will be described.
An embodiment will be described. In the solution of the differential equation, the target system is divided into fine grid points.In this case, the state of the grid points determined by the boundary conditions propagates to all grid points, and until the stable state is reached, There is a concern that it takes time proportional to the number of points to the grid point node and the time to reach convergence is long.

【0315】このような非効率を回避するためには、粗
ノードと細ノードを交互に使用して収束性をあげること
が考えられる。図47は粗ノードと細ノードを交互に使
用して収束性をあげるための一実施の形態を示す計算領
域境界近傍の計算格子点を示す。図において、125は
計算領域の境界上の格子点、126aは細ノード結合時
の計算領域内部の格子点、126bは粗ノード結合時の
計算領域内部の格子点、7aは細ノード結合用の要素プ
ロセッサ間コネクション、7bは粗ノード結合用の要素
プロセッサ間コネクションであり、これらの格子点と各
要素プロセッサは一対一に対応している。
In order to avoid such inefficiency, it is conceivable to use coarse nodes and fine nodes alternately to improve convergence. FIG. 47 shows calculation grid points near the boundary of a calculation region showing an embodiment for improving convergence by alternately using coarse nodes and fine nodes. In the figure, 125 is a grid point on the boundary of the calculation area, 126a is a grid point inside the calculation area at the time of fine node connection, 126b is a grid point inside the calculation area at the time of coarse node connection, and 7a is an element for the fine node connection. An inter-processor connection, 7b is an inter-element processor connection for coarse node connection, and these lattice points and each element processor have a one-to-one correspondence.

【0316】この実施の形態では、細ノード結合時はす
べての計算領域内部の格子点126a及び126bを細
ノード結合時の要素プロセッサ間コネクション7aによ
り結合し、粗ノード結合時は複数の内部の格子点をジャ
ンプして粗ノード結合時の内部の格子点126bを粗ノ
ード結合時の要素間コネクション7bにより結合してい
る。ここで、粗ノード結合時の内部の格子点126bは
細ノード時と粗ノード時の両方において計算格子点の役
を果たしているため、粗ノード時の内部の格子点126
bの内部のデータメモリは、粗ノード時と細ノード時の
情報の受け渡しの役割を果たす。そして、計算に際して
は、細ノード結合と粗ノード結合を交互に使用する。こ
のような構成においては、粗ノード結合時の要素間コネ
クション7bにより境界上の格子点125の持つ境界条
件は、細ノード結合時より3倍速く計算領域内部に伝え
られ、その後細ノード結合により近傍の細ノード結合時
の内部の格子点126aへ伝えられて詳細な計算が実施
される。
In this embodiment, the grid points 126a and 126b inside all calculation areas are connected by the inter-element processor connection 7a at the time of the fine node connection at the time of the fine node connection, and a plurality of internal grids at the time of the coarse node connection. The points are jumped and the internal lattice points 126b at the time of the coarse node connection are connected by the inter-element connection 7b at the time of the coarse node connection. Here, since the internal grid point 126b at the time of coarse node connection plays the role of a calculation grid point both at the time of the fine node and at the time of the coarse node, the internal grid point 126 at the time of the coarse node.
The internal data memory of b plays a role of passing information at the time of the coarse node and the time of the fine node. Then, in the calculation, the fine node coupling and the coarse node coupling are alternately used. In such a configuration, the boundary condition that the grid point 125 on the boundary has by the inter-element connection 7b at the time of coarse node connection is transmitted to the inside of the calculation area three times faster than at the time of fine node connection, and then becomes closer by the fine node connection. The detailed calculation is carried out by being transmitted to the internal lattice point 126a at the time of the fine node combination of.

【0317】従って、この実施の形態によれば、粗ノー
ドの使用により境界条件を計算領域内に即座に浸透させ
て収束性を高め、その後に細ノードの使用により計算精
度の高い演算結果が得られ、結果として高精度の高速演
算を達成できる。
Therefore, according to this embodiment, by using the coarse node, the boundary condition is immediately permeated into the calculation region to improve the convergence, and thereafter, by using the fine node, a calculation result with high calculation accuracy can be obtained. As a result, highly accurate and high-speed operation can be achieved.

【0318】なお、この実施の形態では粗ノード結合時
は細ノード結合時の格子点を2点おきに結合した例を示
したが、何点おきでも同様の効果を期待できることは言
うまでもない。また、この実施の形態では、格子の粗さ
を細ノード結合時と粗ノード結合時の2段階としたが、
さらに複数の段階の粗さの格子を用いても同様の効果を
奏する。さらに、この実施の形態では、粗ノード結合時
の計算と細ノード結合時の計算を1回ずつ交互に行う場
合について説明したが、粗ノード結合時と細ノード結合
時の計算を複数回に交互に行ってもよい。
In this embodiment, an example is shown in which the grid points in the fine node connection are connected every two points at the time of coarse node connection, but it is needless to say that the same effect can be expected at any number of points. Further, in this embodiment, the roughness of the lattice is set to two levels, that is, fine node coupling and coarse node coupling.
Further, the same effect can be obtained by using a grid having a plurality of stages of roughness. Furthermore, in this embodiment, the case where the calculation at the time of coarse node connection and the calculation at the time of fine node connection are alternately performed once has been described, but the calculation at the time of coarse node connection and the calculation at the time of fine node connection are alternately performed a plurality of times. You may go to

【0319】上記の実施の形態では、粗ノードと細ノー
ドを交互に使用する場合について説明したが、粗ノード
で収束に到った後に、より細かいノードを用いて徐々に
解の精度を向上させていく方法もとることができる。
In the above embodiment, the case where the coarse node and the fine node are alternately used has been described. However, after the convergence at the coarse node, the precision of the solution is gradually improved by using the finer node. You can take the way you want to.

【0320】即ち、図47において、粗ノード結合時の
要素プロセッサ間コネクション7bにより結合された粗
ノード結合時の内部の格子点126bと境界上の格子点
125を用いて、収束解が得られるまで繰り返し演算を
行う、その後、粗ノード結合時の内部の格子点126b
の解を初期条件として与えるか、あるいは、粗ノード結
合時の内部の格子点126bの解を細ノードの空間分布
に合わせて比例配分して初期条件として与え、細ノード
結合時の要素プロセッサ間コネクション7aにより結合
された内部の格子点126a、粗ノード結合時の内部の
格子点126b、及び境界上の格子点125を用いて、
解の精度が高まるまで繰り返し計算を行い、収束解を最
終解とする。
That is, in FIG. 47, until a convergent solution is obtained using the internal grid points 126b and the grid points 125 on the boundary at the time of coarse node connection, which are connected by the inter-element processor connection 7b at the time of coarse node connection. Iterative calculation is performed, and thereafter, internal grid point 126b at the time of coarse node connection
Is given as the initial condition, or the solution of the internal grid point 126b at the time of coarse node connection is proportionally distributed according to the spatial distribution of the fine nodes and given as the initial condition, and the connection between the element processors at the time of fine node connection is performed. Using the internal grid point 126a connected by 7a, the internal grid point 126b at the time of coarse node connection, and the grid point 125 on the boundary,
Repeated calculations are performed until the accuracy of the solution increases, and the convergent solution is used as the final solution.

【0321】この手法を採用することにより、大局的な
収束に到るまでの計算時間を大幅に加速することができ
る。すなわち、無駄に局所的な計算を行なうことを回避
することができ、安定的に収束に到ることができると同
時に、より早く最終的な収束に到達させることができ
る。
By adopting this method, it is possible to greatly accelerate the calculation time until global convergence. That is, wasteful local calculation can be avoided, stable convergence can be achieved, and at the same time final convergence can be reached earlier.

【0322】また、この実施の形態では、格子点と各要
素プロセッサは1対1に対応している場合について述べ
たが複数の格子点群が存在する空間領域を各要素プロセ
ッサに対応させる場合(割り当てる場合)でも同様の効
果を奏する。
Further, in this embodiment, the case where the lattice points and the respective element processors have a one-to-one correspondence has been described, but the case where the spatial region in which a plurality of lattice point groups exist corresponds to the respective element processors ( The same effect can be obtained even in the case of allocation).

【0323】<実施の形態30>次に、この発明の第3
0実施の形態について説明する。上記の第29実施の形
態では、隣接する要素プロセッサ間の結合コネクション
をジャンパ配線によりスキップすることにより粗ノード
結合を実現する場合を説明した。この実施の形態では、
この粗ノードをS/Wのみで実現する場合について説明
する。
<Embodiment 30> Next, the third embodiment of the present invention will be described.
An embodiment will be described. In the twenty-ninth embodiment, the case where the coarse node coupling is realized by skipping the coupling connection between the adjacent element processors by the jumper wiring has been described. In this embodiment,
A case where this coarse node is realized only by S / W will be described.

【0324】この発明の第25実施の形態で説明した、
格子点毎にデータメモリの領域を確保し、格子点間のデ
ータ通信を、この格子点毎に確保されたデータメモリの
領域を通信が必要な格子点同士で互いにアクセスしあう
ことで実現する方法において、格子点毎に通信すべき各
方向のデータメモリ領域を指し示すテーブルを持ち、こ
のテーブルの各エントリに所望の格子点数分スキップし
た格子点のために確保されたデータメモリ領域のアドレ
スを格納することにより隣接する格子点以外の格子点と
データ通信を行う、すなわち粗ノード結合をS/Wのみ
で実現することができる。
As described in the twenty-fifth embodiment of the present invention,
A method for realizing an area of data memory for each grid point and performing data communication between grid points by mutually accessing the area of the data memory reserved for each grid point between grid points that require communication. In, there is a table indicating the data memory area in each direction to be communicated for each grid point, and the address of the data memory area reserved for the grid points skipped by the desired number of grid points is stored in each entry of this table. As a result, data communication can be performed with grid points other than adjacent grid points, that is, coarse node coupling can be realized only by S / W.

【0325】従って、場の方程式の求解を始めた段階で
は通信すべき各方向のデータメモリ領域を指し示すテー
ブルを粗ノード処理を実現するように設定しておき、処
理が収束した後に前記のテーブルを細ノード処理を実現
するように隣接格子点に確保されたデータメモリ領域を
指し示すように変更し、細ノード処理を行うことができ
る。
Therefore, at the stage where the solution of the field equation is started, the table indicating the data memory area in each direction to be communicated is set so as to realize the coarse node processing, and after the processing converges, the above table is set. The fine node processing can be performed by changing to point to the data memory area secured at the adjacent grid point so as to realize the fine node processing.

【0326】また、上記と同様な方法でテーブルを適宜
書き換えることにより、粗ノード処理と、細ノード処理
を交互に実行することもできる。
The coarse node processing and the fine node processing can be executed alternately by rewriting the table appropriately in the same manner as described above.

【0327】さらに、前記の通信すべき各方向のデータ
メモリ領域を指し示すテーブルを、粗ノード結合処理用
と細ノード結合用と2個もち、かつ粗ノード処理用のプ
ログラムと細ノード処理用のプログラムを並行して実行
することにより、粗ノードの処理と細ノードの処理を並
行して実行することも可能である。
Further, there are two tables for the data memory areas in each direction to be communicated, one for coarse node connection processing and one for fine node connection, and a program for coarse node processing and a program for fine node processing. It is also possible to execute the processing of the coarse node and the processing of the fine node in parallel by executing in parallel.

【0328】粗ノード処理時には、通信すべき近接格子
点が少し離れた点であり、細ノード処理時には近くの格
子点になるといったように、通信すべき格子点が変化す
るような処理の場合でも、通信方向の格子点のメモリ領
域を示す識別子の領域を書き換えるだけで、全く同一の
プログラムで処理を行うことができる。
Even in the case of processing in which the grid points to be communicated are changed, such as the neighboring grid points to be communicated are a little apart in the coarse node processing, and the neighboring grid points are in the fine node processing. , It is possible to perform processing with exactly the same program simply by rewriting the area of the identifier indicating the memory area of the grid point in the communication direction.

【0329】上記実施の形態では粗ノードと細ノードを
同時に実行することにより収束性を向上させる場合につ
いて説明したが、粗ノード処理のアルゴリズムと細ノー
ド処理のアルゴリズムが同一である必要はない。粗ノー
ドと細ノードのプログラムを個別に有することにより粗
ノード処理のアルゴリズムと細ノード処理のアルゴリズ
ムとして異なるアルゴリズムを用いることができる。
In the above embodiment, the case where the convergence is improved by simultaneously executing the coarse node and the fine node has been described, but the algorithm of the coarse node processing and the algorithm of the fine node processing do not have to be the same. By having the programs for the coarse node and the fine node separately, different algorithms can be used as the algorithm for the coarse node processing and the algorithm for the fine node processing.

【0330】たとえば、粗ノードでは収束性はよいが精
度に欠けるアルゴリズムを用いることにより系全体とし
てさらに収束性を向上させることができる。
For example, it is possible to further improve the convergence of the entire system by using an algorithm that has good convergence but lacks accuracy in the coarse node.

【0331】SIMPLE法に関する上記実施の形態で
は、隣接する格子点の現在のデータを参照して該当格子
点に関する計算を行なっている。しかし、隣接する格子
点に関するデータを2世代以上持ち、世代間変動が一定
量以下の場合には該当ノードの演算を省略することによ
り、総計算量を低減し、計算時間を大幅に短縮すること
ができる。また、世代間変動が一定値以下の格子点の計
算を省略することにより得られた計算資源を他の格子点
処理のために使用できるという効果もある。ここでい
う、「2世代のデータ」とは、隣接格子点に関する「繰
り返し計算の1ステップ前の計算結果に基づくデータ」
と「繰り返し計算の2ステップ前の計算結果に基づくデ
ータ」を指している。
In the above-mentioned embodiment relating to the SIMPLE method, the calculation for the corresponding grid point is performed with reference to the current data of the adjacent grid points. However, if there are two or more generations of data related to adjacent grid points and the variation between generations is less than a certain amount, the calculation of the corresponding node is omitted to reduce the total calculation amount and significantly reduce the calculation time. You can Further, there is also an effect that the calculation resource obtained by omitting the calculation of the grid points whose intergenerational variation is less than a certain value can be used for processing other grid points. The "2nd generation data" referred to here is "data based on the calculation result of one step before the iterative calculation" regarding the adjacent grid points.
And "data based on the calculation result two steps before the repeated calculation".

【0332】上記のSIMPLE法においては、各格子
点における計算を省略するための条件を与える。隣接格
子点の世代間のデータの差異は一定値であった。しかし
ながら、収束計算の過程において、計算を省略するため
の条件である世代間のデータの差異の許容値を、最初は
大きくしておき徐々に縮めていくことにより、大局的な
収束に到るまでの計算時間を大幅に加速することができ
る。この手法を適用することによって、無駄に局所的な
計算を行なうことを回避することができ、最終的な収束
により早く到達することができる。
In the SIMPLE method described above, a condition for omitting the calculation at each grid point is given. The data difference between the generations of adjacent grid points was a constant value. However, in the process of convergence calculation, the tolerance for the difference in data between generations, which is a condition for omitting the calculation, is first increased and then gradually reduced until global convergence is reached. The calculation time of can be greatly accelerated. By applying this method, it is possible to avoid wasteful local calculation and reach the final convergence earlier.

【0333】<実施の形態31>次に、この発明の第3
1実施の形態について説明する。従来の並列計算機で
は、計算回数を最小化することに主眼がおかれていたた
めに、ある時刻における全格子点の計算が終了した時点
で収束の有無を判定し、未収束であれば、時刻を進め
て、再び各格子点の計算を開始するという逐次的手段を
とっていたために、収束処理が全体を律速するという欠
点があった。
<Thirty-first Embodiment> Next, the third embodiment of the present invention will be described.
One embodiment will be described. In a conventional parallel computer, the focus was on minimizing the number of calculations.Therefore, the presence or absence of convergence is determined when the calculation of all grid points at a certain time is completed. Since there is a sequential means of advancing and restarting the calculation of each grid point, there is a drawback in that the convergence process limits the whole rate.

【0334】一般に流体シミュレーションでは、(各格
子点での計算コストCA)>(収束判定処理のコストC
C)の関係が成立するため、若干のバッファ装置を用意
すれば、この構成を採用することが可能である。また、
部分的に収束判定をすれば、このバッファが少なくても
すむ。収束するまでの繰り返し計算の回数をNとする
と、N・(CA+CC+α)がN・CA+αに実行時間
で短縮される。ただし、αは通信コストである。
Generally, in fluid simulation, (computation cost CA at each grid point)> (convergence determination processing cost C
Since the relationship of C) is established, this configuration can be adopted by preparing some buffer devices. Also,
This buffer can be small if partial convergence is determined. Letting N be the number of repeated calculations until convergence, N · (CA + CC + α) is reduced to N · CA + α in execution time. However, α is a communication cost.

【0335】図48は、シミュレーションと収束判定処
理の相互依存関係を断ち切り、シミュレーションの速度
を向上させるためのこの発明の一実施の形態を示す、マ
ルチプロセッサの構成図である。
FIG. 48 is a block diagram of a multiprocessor showing an embodiment of the present invention for cutting off the interdependence between the simulation and the convergence judgment processing and improving the speed of the simulation.

【0336】図において、3kは演算を行う要素プロセ
ッサ、180は列毎に配置された各要素プロセッサ3k
が出力する収束フラグの情報により列毎の収束状況を判
定する収束判定ユニット、1は要素プロセッサ3k及び
収束判定ユニット180を統括管理するためのホストコ
ンピュータ、104は行方向の要素プロセッサ3k間の
演算のためのデータをやり取りするための行方向計算情
報バス、105は列方向の要素プロセッサ3k間の演算
のためのデータをやり取りするための列方向計算情報バ
ス、181は各要素プロセッサ3kの出力する収束フラ
グを収束判定ユニット180へ伝達するための収束フラ
グ情報バス、182は各収束判定ユニット180の収束
情報をホストコンピュータへ伝達するための収束情報バ
スである。
In the figure, 3k is an element processor for performing calculation, and 180 is each element processor 3k arranged in each column.
A convergence determination unit for determining the convergence status for each column based on the information of the convergence flag output by 1; 1 is a host computer for centrally managing the element processors 3k and the convergence determination unit 180; and 104 is an operation between the element processors 3k in the row direction. , A row-direction calculation information bus for exchanging data for, a column-direction calculation information bus 105 for exchanging data for calculation between the column-direction element processors 3k, and 181 output by each element processor 3k. A convergence flag information bus for transmitting the convergence flag to the convergence determination unit 180, and a convergence information bus 182 for transmitting the convergence information of each convergence determination unit 180 to the host computer.

【0337】次に動作について説明する。各要素プロセ
ッサ3kは自己の内部演算結果に対し各計算繰り返しス
テップ毎またはある一定の計算繰り返しステップ数毎に
計算の収束を判定して、例えば収束したならば収束判定
フラグを1として収束フラグ情報バス181へ出力して
いる。収束判定ユニット180は各要素プロセッサ3k
から出力された収束判定フラグの情報を集め、各々の収
束判定ユニット180の管轄する要素プロセッサ3kの
全てが収束したと判断すれば収束情報を個別に収束情報
バス182へ出力する。そして、最終的にホストコンピ
ュータ1が全収束情報バス182から吸上げた全要素プ
ロセッサ3kの収束情報から全体の収束を判定して演算
を終了させる。
Next, the operation will be described. Each element processor 3k judges the convergence of the calculation for each internal calculation result or for each certain number of calculation repetition steps with respect to its own internal calculation result. For example, if it converges, the convergence judgment flag is set to 1 and the convergence flag information bus It is outputting to 181. The convergence determination unit 180 is each element processor 3k
The convergence determination flag information output from the above is collected, and if it is determined that all the element processors 3k under the control of each convergence determination unit 180 have converged, the convergence information is individually output to the convergence information bus 182. Then, finally, the host computer 1 judges the overall convergence from the convergence information of all the element processors 3k sucked from the all-convergence information bus 182, and ends the calculation.

【0338】この様に構成することにより、各要素プロ
セッサ3kは各々の演算を妨げられることなく並列に演
算を実行することができ、演算の高速化を図ることがで
きる。
With this configuration, each element processor 3k can execute operations in parallel without hindering each operation, and the operation speed can be increased.

【0339】なお、この実施の形態では収束判定ユニッ
ト180は格子状に配置された要素プロセッサの行毎に
グループ分けを行いこのグループの収束情報を管理して
いるが、列毎にグループ分けしても、ランダムにグルー
プ分けしても同様の効果を奏することは言うまでもな
い。
In this embodiment, the convergence judgment unit 180 groups the rows of the element processors arranged in a grid and manages the convergence information of this group, but the groups are grouped by the columns. Needless to say, the same effect can be obtained by randomly grouping.

【0340】<実施の形態32>次にこの発明の第32
実施の形態について説明する。図49はさらにシミュレ
ーションと収束判定処理の相互依存関係を断ち切り、シ
ミュレーションの速度を向上させるための実施の形態を
示すマルチプロセッサの構成図である。
<Thirty-second Embodiment> The thirty-second embodiment of the present invention will now be described.
An embodiment will be described. FIG. 49 is a block diagram of a multiprocessor showing an embodiment for further cutting off the interdependence between the simulation and the convergence determination processing and improving the speed of the simulation.

【0341】図において、3kは演算を行う要素プロセ
ッサ、180および180aは列毎に配置された各要素
プロセッサ3kが出力する収束フラグの情報により列毎
の収束状況を判定する収束判定ユニット、1は要素プロ
セッサ3k及び収束判定ユニット180を統括管理する
ためのホストコンピュータ、104は行方向の要素プロ
セッサ3k間の演算のためのデータをやり取りするため
の行方向計算情報バス、105は列方向の要素プロセッ
サ3間の演算のためのデータをやり取りするための列方
向計算情報バス、181は各要素プロセッサ3kの収束
状況を示す収束フラグを収束判定ユニット180へ伝達
するための収束フラグ情報バス、182は隣接する収束
判定ユニット180間及びホストコンピュータ1を結び
収束判定ユニット180の収束情報を伝達するための収
束情報バスである。
In the figure, 3k is an element processor for performing calculations, 180 and 180a are convergence determining units for determining the convergence status for each column based on the convergence flag information output from each element processor 3k arranged for each column. A host computer for centrally managing the element processor 3k and the convergence determination unit 180, 104 a row direction calculation information bus for exchanging data for calculation between the row direction element processors 3k, and 105 a column direction element processor A column-direction calculation information bus for exchanging data for computation between three, a reference numeral 181 is a convergence flag information bus for transmitting a convergence flag indicating the convergence status of each element processor 3k to the convergence determination unit 180, and 182 is an adjacent The convergence determination unit 180 and the host computer 1 are connected to each other. It is a convergence information bus for transmitting the 80 convergence information.

【0342】この構成においては、収束判定ユニット1
80は互いに隣接した収束判定ユニット同士に対して一
方向にしか情報伝達ができないように収束情報バス18
2を配している。そして、ホストコンピュータ1から最
も遠い収束判定ユニット180aの管轄する全要素プロ
セッサ3kの計算が収束した際に収束情報の送出を開始
する。他の収束判定ユニット180は隣接する収束判定
ユニット180からの収束情報と、収束フラグにより自
己の管轄する全要素プロセッサ3kの計算が収束したと
の判断の双方がそろった場合に、収束情報を隣接する収
束判定ユニット180へ送出する。
In this configuration, the convergence judgment unit 1
80 is a convergence information bus 18 so that information can be transmitted only in one direction to the convergence determination units adjacent to each other.
I have two. Then, when the calculation of all the element processors 3k under the control of the convergence determination unit 180a farthest from the host computer 1 has converged, the transmission of the convergence information is started. When the convergence information from the adjacent convergence judgment unit 180 and the judgment by the convergence flag that the calculation of all the element processors 3k under its control have converged, the other convergence judgment unit 180 makes the convergence information adjacent. To the convergence determination unit 180.

【0343】このようにすれば、最もホストコンピュー
タ1に近い収束判定ユニット180が収束情報をホスト
コンピュータ1へ送出した時点で、ホストコンピュータ
1は計算の終了を即座に判定できるため、要素プロセッ
サ3k及びホストコンピュータ1の処理を妨げることな
く、より計算の高速化を図ることができる。
In this way, when the convergence judgment unit 180 closest to the host computer 1 sends the convergence information to the host computer 1, the host computer 1 can immediately judge the end of the calculation, so that the element processors 3k and The calculation speed can be further increased without disturbing the processing of the host computer 1.

【0344】なお、この実施の形態においては収束判定
ユニット180は格子状に配置された要素プロセッサの
行毎にグループ分けを行いこのグループの収束情報を管
理しているが、列毎にグループ分けしても、ランダムに
グループ分けしても同様の効果を奏することは言うまで
もない。また、収束判定ユニット180同士の接続方法
はホストコンピュータ1からの距離に関係なく接続して
も同様の効果が期待できる。
In this embodiment, the convergence judgment unit 180 groups the rows of the element processors arranged in a grid and manages the convergence information of this group, but the groups are grouped by the columns. However, it goes without saying that the same effect can be obtained by randomly grouping. The same effect can be expected even if the convergence determination units 180 are connected regardless of the distance from the host computer 1.

【0345】<実施の形態33>次に、この発明の第3
3実施の形態について説明する。第32実施の形態で示
したように、収束フラグを要素プロセッサの外部に構成
した収束フラグ情報バスを介して伝達するのは、通信時
間のロスを引き起こす。図50は収束フラグの伝送時間
短縮のための第33実施の形態による要素プロセッサの
構成を示すブロック図である。また、図51は図50の
要素プロセッサを構成要素とするマルチプロセッサの構
成を示すブロック図である。
<Thirty-third Embodiment> Next, the third embodiment of the present invention will be described.
The third embodiment will be described. As shown in the thirty-second embodiment, transmitting the convergence flag via the convergence flag information bus configured outside the element processor causes a loss of communication time. FIG. 50 is a block diagram showing the configuration of an element processor according to the 33rd embodiment for shortening the transmission time of the convergence flag. Further, FIG. 51 is a block diagram showing the configuration of a multiprocessor having the element processor of FIG. 50 as a component.

【0346】図50において、3mは要素プロセッサ本
体、5は要素プロセッサ3m内に形成され計算を実施す
るためのプロセッシングユニット、6は要素プロセッサ
3m内に形成されプロセッシングユニット5の計算に必
要な計算情報を格納するメモリ部、183は要素プロセ
ッサ3m内に形成され自己の属する要素プロセッサ3m
内のプロセッシングユニット5の収束状況、隣接する要
素プロセッサ3m内の収束状況及び全要素プロセッサ3
mの収束状況を判定する収束判定部、104は行方向の
要素プロセッサ3m内のメモリ部6間の演算に必要なデ
ータをやり取りするための行方向計算情報バス、105
は列方向の要素プロセッサ内のプロセッシングユニット
5間の演算に必要なデータをやり取りするための列方向
計算情報バス、181は各要素プロセッサ内の収束判定
部183をリング状に接続して収束フラグを隣接する要
素プロセッサ内の収束判定部183へ伝送するための収
束フラグ情報バス、182は全要素プロセッサの収束判
定部183の少なくとも1つ以上の収束判定部183と
ホストコンピュータを接続し全要素プロセッサの収束情
報をホストコンピュータ1へ伝送するための収束情報バ
ス、184はプロセッシングユニット5の出力する収束
フラグを収束判定ユニット180へ伝達するための内部
情報フラグバス、106はプロセッシングユニット5と
メモリ部6の間で演算に必要なデータや演算結果データ
をやり取りする内部計算情報バスである。
In FIG. 50, 3m is a main body of an element processor, 5 is a processing unit formed in the element processor 3m for executing calculation, and 6 is calculation information necessary for calculation of the processing unit 5 formed in the element processor 3m. And a memory unit 183 formed in the element processor 3m to which the element processor 3m belongs.
State of the processing unit 5 in the inside, the state of convergence in the adjacent element processor 3m, and all the element processors 3
A convergence determination unit for determining the convergence state of m, 104 is a row direction calculation information bus for exchanging data necessary for calculation between the memory units 6 in the element processors 3m in the row direction, 105
Is a column-direction calculation information bus for exchanging data necessary for the calculation between the processing units 5 in the element processors in the column direction, and 181 is a convergence determination unit 183 in each element processor connected in a ring shape to set a convergence flag. A convergence flag information bus for transmission to a convergence determination unit 183 in an adjacent element processor, and 182 connects at least one or more convergence determination units 183 of the convergence determination units 183 of all the element processors to the host computer. Convergence information bus for transmitting the convergence information to the host computer 1, 184 is an internal information flag bus for transmitting the convergence flag output from the processing unit 5 to the convergence determination unit 180, and 106 is between the processing unit 5 and the memory unit 6. In exchanging data necessary for calculation and calculation result data Calculation information, which is the bus.

【0347】図51において、1は要素プロセッサ3
m、3kを統括管理するためのホストコンピュータであ
る。各プロセッシングユニット5においては、各計算繰
り返しステップ毎またはある一定の計算繰り返しステッ
プ数毎に計算の収束を判定して、例えば収束したならば
内部情報フラグを1として内部情報フラグパス184を
介して収束判定部183へ送出している。また、各要素
プロセッサ3kの収束判定部183は収束フラグ情報バ
スを介してリング状に接続されている。収束判定の開始
は、予め定められた特定の要素プロセッサ3mから行な
う。要素プロセッサ3mの収束判定部183が、その内
部のプロセッシングユニット5から収束したことを示す
内部情報フラグを受け取ると同時に、例えば収束したな
らば収束フラグを1として隣接する要素プロセッサ3k
の収束判定部183へ収束フラグ情報バスを介して発信
する。ここでは、リング状に接続された収束情報フラグ
バス181は一方向への情報伝達を行う機能を有すると
する。前述の隣接する要素プロセッサ3kの収束判定部
183は、自己の属する要素プロセッサ3kのプロセッ
シングユニットからの内部情報フラグ(=1)と、隣接
する要素プロセッサ3mの収束判定部183からの収束
フラグ(=1)の論理積(AND)をとって真(=1)
となれば、収束フラグを1としてさらに隣接する要素プ
ロセッサ3kの収束判定部183へ収束フラグ情報バス
181を介して送出する。
In FIG. 51, 1 is the element processor 3
This is a host computer for centrally managing m and 3k. In each processing unit 5, the convergence of the calculation is judged for each calculation repeating step or for each certain number of calculation repeating steps. For example, if the calculation converges, the internal information flag is set to 1 and the convergence judgment is made via the internal information flag path 184. It is sent to the unit 183. The convergence determination unit 183 of each element processor 3k is connected in a ring shape via the convergence flag information bus. The convergence determination is started from a predetermined specific element processor 3m. At the same time that the convergence determination unit 183 of the element processor 3m receives the internal information flag indicating that the processing unit 5 therein has converged, for example, if it has converged, the convergence flag is set to 1 and the adjacent element processor 3k.
Is transmitted to the convergence determination unit 183 through the convergence flag information bus. Here, it is assumed that the convergence information flag bus 181 connected in a ring shape has a function of transmitting information in one direction. The convergence determination unit 183 of the adjacent element processor 3k described above receives the internal information flag (= 1) from the processing unit of the element processor 3k to which it belongs and the convergence flag (=) from the convergence determination unit 183 of the adjacent element processor 3m. True (= 1) by taking the logical product (AND) of 1)
If so, the convergence flag is set to 1 and is sent to the convergence determination unit 183 of the adjacent element processor 3k via the convergence flag information bus 181.

【0348】リング状に接続された各収束判定部183
は、自己の属する要素プロセッサ3kのプロセッシング
ユニットからの内部情報フラグ(=1)と、隣接する要
素プロセッサ3kの収束判定部183からの収束フラグ
(=1)の論理積(AND)をとって1となれば、収束
フラグを1としてさらに隣接する要素プロセッサ3kの
収束判定部183へ収束フラグ情報バスを介して送出す
る手順を収束フラグ情報バス181の接続順に次々と実
施する。最終的に、最初に収束フラグを1として発信し
た要素プロセッサ3mの収束判定部183へ収束フラグ
(=1)が戻された時点で、全要素プロセッサ3k,3
mが収束したと判断し、収束情報(=1)を収束情報バ
ス182を介してホストコンピュータ1へ送出し、計算
を終了させる。
[0348] Each convergence determination unit 183 connected in a ring shape
Is the logical product (AND) of the internal information flag (= 1) from the processing unit of the element processor 3k to which it belongs and the convergence flag (= 1) from the convergence determination unit 183 of the adjacent element processor 3k If so, the procedure of setting the convergence flag to 1 and sending it to the convergence determination unit 183 of the adjacent element processor 3k via the convergence flag information bus is sequentially performed in the connection order of the convergence flag information bus 181. Finally, when the convergence flag (= 1) is returned to the convergence determination unit 183 of the element processor 3m that first transmitted the convergence flag as 1, all the element processors 3k, 3
It is determined that m has converged, the convergence information (= 1) is sent to the host computer 1 via the convergence information bus 182, and the calculation is ended.

【0349】このようにすれば、内部情報フラグバス1
81が各要素プロセッサ3k,3mの内部に設けられて
いるので、収束に関する情報の伝達時間を短縮でき、計
算の高速化を達成できる。
In this way, the internal information flag bus 1
Since 81 is provided inside each of the element processors 3k and 3m, it is possible to shorten the transmission time of the information regarding the convergence and to achieve the speeding up of the calculation.

【0350】なお、上記実施の形態では内部情報フラ
グ、収束フラグ情報、収束情報は各々0または1の論理
値として説明したが、収束、未収束が判定できれば何で
あっても良い。また、収束情報バス182は一つの要素
プロセッサ3mに設けられていればよく、全要素プロセ
ッサに設ける必要はない。
Although the internal information flag, the convergence flag information, and the convergence information have been described as logical values of 0 or 1 in the above embodiment, any value may be used as long as it can be determined whether convergence or non-convergence. Further, the convergence information bus 182 need only be provided in one element processor 3m, and need not be provided in all element processors.

【0351】さらに、特定の要素プロセッサ3mは、全
要素プロセッサのどれであっても良い。
Further, the specific element processor 3m may be any of all element processors.

【0352】<実施の形態34>次に、この発明の第3
4実施の形態について説明する。図52は、全要素プロ
セッサを複数のグループに分け、各々のグループ毎に収
束情報フラグパスの情報伝達リンクを形成し、収束判定
の並列化を実現するための実施の形態を示すマルチプロ
セッサの構成を示すブロック図である。
<Embodiment 34> Next, the third embodiment of the present invention will be described.
Four embodiments will be described. FIG. 52 shows a multiprocessor configuration showing an embodiment for dividing all element processors into a plurality of groups, forming an information transmission link of a convergence information flag path for each group, and realizing parallelization of convergence determination. It is a block diagram shown.

【0353】図52において、181は全要素プロセッ
サを複数のグループに分割し、グループ内各要素プロセ
ッサ3k,3m内の収束判定部183をリング状に接続
して収束フラグを隣接する要素プロセッサ3k,3m内
の収束判定部183へ伝送するための収束フラグ情報バ
ス、182は各グループ内の一つの特定要素プロセッサ
3mに設けられ収束判定部183とホストコンピュータ
1間を結び各グループの収束情報を伝達するための収束
情報バスである。
In FIG. 52, 181 divides all the element processors into a plurality of groups, connects the convergence determination units 183 in the respective element processors 3k and 3m in the group in a ring shape, and sets the convergence flag to the adjacent element processors 3k and 3k. A convergence flag information bus for transmission to the convergence determination unit 183 in 3 m, and 182 is provided in one specific element processor 3 m in each group and connects the convergence determination unit 183 and the host computer 1 to transfer the convergence information of each group. This is a convergence information bus for

【0354】各グループの内では、収束情報バス182
が設けられた特定の要素プロセッサ3mの収束判定部1
83において、その内部のプロセッシングユニット5か
ら収束したことを示す内部情報フラグを受け取ると同時
に、例えば収束したならば収束フラグを1として隣接す
る要素プロセッサ3kの収束判定部183へ収束フラグ
情報バスを介して発信する。ここでは、グループ内の要
素プロセッサの収束判定部183間をリング状に接続さ
れた収束フラグ情報バス181は一方向への情報伝達を
行う機能を有するとする。前述の隣接する要素プロセッ
サ3kの収束判定部183は、自己の属する要素プロセ
ッサ3kのプロセッシングユニットからの内部情報フラ
グ(=1)と、隣接する要素プロセッサ3mの収束判定
部183からの収束フラグ(=1)の論理積(AND)
をとって真(=1)となれば、収束フラグを1としてさ
らに隣接する要素プロセッサ3kの収束判定部183へ
収束フラグ情報バス181を介して送出する。
Within each group, the convergence information bus 182
Convergence determination unit 1 of specific element processor 3m provided with
At 83, at the same time as receiving an internal information flag indicating convergence from the processing unit 5 inside thereof, for example, if it converges, the convergence flag is set to 1 and the convergence determination unit 183 of the adjacent element processor 3k receives it via the convergence flag information bus. To send. Here, it is assumed that the convergence flag information bus 181 connected in a ring shape between the convergence determination units 183 of the element processors in the group has a function of transmitting information in one direction. The convergence determination unit 183 of the adjacent element processor 3k described above receives the internal information flag (= 1) from the processing unit of the element processor 3k to which it belongs and the convergence flag (=) from the convergence determination unit 183 of the adjacent element processor 3m. AND of 1)
If the result is true (= 1), the convergence flag is set to 1 and is sent to the convergence determination unit 183 of the adjacent element processor 3k via the convergence flag information bus 181.

【0355】リング状に接続された各収束判定部183
は、自己の属する要素プロセッサ3kのプロセッシング
ユニットからの内部情報フラグ(=1)と、隣接する要
素プロセッサ3kの収束判定部183からの収束フラグ
(=1)の論理積(AND)をとって1となれば、収束
フラグを1としてさらに隣接する要素プロセッサ3kの
収束判定部183へ収束フラグ情報バスを介して送出す
る手順を収束フラグ情報バス181の接続順に次々と実
施する。最終的に、最初に収束フラグを1として発信し
た特定の要素プロセッサ3mの収束判定部183へ1の
収束フラグ(=1)が戻された時点で、グループ内の全
要素プロセッサ3が収束したと判断し、収束情報(=
1)を収束情報バス182を介してホストコンピュータ
1へ送出する。ホストコンピュータ1は全グループから
収束情報(=1)を受け取った時点で全要素プロセッサ
の計算が収束したと判断して、計算を終了させる。
Convergence determining units 183 connected in a ring shape
Is the logical product (AND) of the internal information flag (= 1) from the processing unit of the element processor 3k to which it belongs and the convergence flag (= 1) from the convergence determination unit 183 of the adjacent element processor 3k If so, the procedure of setting the convergence flag to 1 and sending it to the convergence determination unit 183 of the adjacent element processor 3k via the convergence flag information bus is sequentially performed in the connection order of the convergence flag information bus 181. Finally, when the convergence flag (= 1) of 1 is returned to the convergence determination unit 183 of the specific element processor 3m that first transmitted the convergence flag as 1, it is determined that all the element processors 3 in the group have converged. Judgment, convergence information (=
1) is sent to the host computer 1 via the convergence information bus 182. When the host computer 1 receives the convergence information (= 1) from all the groups, it determines that the calculations of all the element processors have converged, and ends the calculations.

【0356】このように構成すれば、グループ毎に収束
判定が並列化され、収束判定時間を短縮できる。
According to this structure, the convergence judgment is made parallel for each group, and the convergence judgment time can be shortened.

【0357】なお、この実施の形態においては収束判定
部183は格子状に配置された要素プロセッサの行毎に
グループ分けを行いこのグループの収束情報を管理して
いるが、列毎にグループ分けしても、ランダムにグルー
プ分けしても同様の効果を奏することは言うまでもな
い。また、上記実施の形態では内部情報フラグ、収束フ
ラグ情報、収束情報は各々0または1の論理値として説
明したが、収束、未収束が判定できれば何であっても良
い。また、収束情報バス182はグループ内の一つの要
素プロセッサ3mに設けられていればよく、全要素プロ
セッサに設ける必要はない。
Note that in this embodiment, the convergence determination unit 183 groups the rows of the element processors arranged in a grid and manages the convergence information of this group. However, it goes without saying that the same effect can be obtained by randomly grouping. Further, in the above embodiment, the internal information flag, the convergence flag information, and the convergence information have been described as logical values of 0 or 1, but any value may be used as long as it can be determined whether convergence or non-convergence. The convergence information bus 182 need only be provided in one element processor 3m in the group, and need not be provided in all element processors.

【0358】さらに、特定の要素プロセッサ3mは、グ
ループ内にある要素プロセッサのどれであってもよい。
Further, the specific element processor 3m may be any of the element processors in the group.

【0359】<実施の形態35>次に、この発明の第3
5実施の形態について説明する。図53は収束判定を並
列化させた際のホストコンピュータの負荷を軽減させる
ことを実現するためのマルチプロセッサを形成する要素
プロセッサの構成を示すブロック図である。また、図5
4は図53の要素プロセッサを構成要素とするマルチプ
ロセッサの全体構成図である。
<Embodiment 35> Next, the third embodiment of the present invention will be described.
Five embodiments will be described. FIG. 53 is a block diagram showing the configuration of an element processor forming a multiprocessor for reducing the load on the host computer when parallelizing the convergence determination. Also, FIG.
4 is an overall configuration diagram of a multiprocessor having the element processor of FIG. 53 as a component.

【0360】図53において、181は全要素プロセッ
サ3k,3p,3qを複数のグループに分割し、グルー
プ内各要素プロセッサ内の収束判定部183をリング状
に接続して収束フラグを隣接する要素プロセッサ内の収
束判定部183へ伝送するための収束フラグ情報バス、
182は各グループの少なくとも一つ以上の要素プロセ
ッサ3p,3qに設けられ隣接するグループのこれを設
けた要素プロセッサ3p,3qの収束判定部183をリ
ング状に接続した収束情報バス、186は全グループの
少なくとも一つ以上の全要素プロセッサ3pに設けられ
この要素プロセッサ3pの収束判定部183とホストコ
ンピュータ間を結び全グループの収束情報を伝達するた
めの終了情報バスである。
In FIG. 53, reference numeral 181 indicates that all the element processors 3k, 3p and 3q are divided into a plurality of groups, the convergence judgment units 183 in the respective element processors in the group are connected in a ring shape, and the convergence flags are adjacent to each other. A convergence flag information bus for transmission to the convergence determination unit 183 in
Reference numeral 182 denotes a convergence information bus in which at least one or more element processors 3p and 3q of each group are connected to each other, and a convergence determination unit 183 of the element processors 3p and 3q of which the adjacent groups are provided are connected in a ring shape, and 186 denotes all groups Is a termination information bus that is provided in at least one of all element processors 3p and connects the convergence determination unit 183 of this element processor 3p to the host computer to transmit convergence information of all groups.

【0361】図54に示すようなグループ分けを行う
と、収束情報バス182が設けられたグループ内の特定
の要素プロセッサ3pの収束判定部183において、収
束判定を開始し、その内部のプロセッシングユニット5
から収束したことを示す内部情報フラグを受け取ると同
時に、例えば収束したならば収束フラグを1として隣接
する要素プロセッサ3kの収束判定部183へ収束フラ
グ情報バスを介して発信する。ここでは、グループ内の
要素プロセッサ3k,3pの収束判定部183間をリン
グ状に接続された収束情報フラグバス181は一方向へ
の情報伝達を行う機能を有するとする。
When the grouping as shown in FIG. 54 is performed, the convergence determination unit 183 of the specific element processor 3p in the group provided with the convergence information bus 182 starts the convergence determination, and the processing unit 5 therein.
At the same time as receiving the internal information flag indicating that it has converged, if it converges, it sets the convergence flag to 1 and sends it to the convergence determination unit 183 of the adjacent element processor 3k via the convergence flag information bus. Here, it is assumed that the convergence information flag bus 181 connected in a ring shape between the convergence determination units 183 of the element processors 3k and 3p in the group has a function of transmitting information in one direction.

【0362】前述の隣接する要素プロセッサ3kの収束
判定部183は、自己の属する要素プロセッサ3kのプ
ロセッシングユニットからの内部情報フラグ(=1)
と、隣接する要素プロセッサ3p,3qの収束判定部1
83からの収束フラグ(=1)の論理積(AND)をと
って真(=1)となれば、収束フラグを1としてさらに
隣接する要素プロセッサ3kの収束判定部183へ収束
フラグ情報バスを介して送出する。リング状に接続され
た各収束判定部183は、自己の属する要素プロセッサ
3kのプロセッシングユニットからの内部情報フラグ
(=1)と、隣接する要素プロセッサ3kの収束判定部
183からの収束フラグ(=1)の論理積(AND)を
とって1となれば、収束フラグを1としてさらに隣接す
る要素プロセッサ3kの収束判定部183へ収束フラグ
情報バス181を介して送出する手順を収束フラグ情報
バス181の接続順に次々と実施する。最終的に、最初
に収束フラグを1として発信した特定の要素プロセッサ
3p,3qの収束判定部183へ1の収束フラグ(=
1)が戻された時点で、グループ内の全要素プロセッサ
3pまたは3qが収束したと判断する。
The convergence determining unit 183 of the adjacent element processor 3k described above receives the internal information flag (= 1) from the processing unit of the element processor 3k to which it belongs.
And the convergence determination unit 1 of the adjacent element processors 3p and 3q
When the logical product (AND) of the convergence flags (= 1) from 83 is obtained and the result is true (= 1), the convergence flag is set to 1 and the convergence determination unit 183 of the adjacent element processor 3k is passed through the convergence flag information bus. To send. Each of the convergence determination units 183 connected in a ring shape has an internal information flag (= 1) from the processing unit of the element processor 3k to which it belongs and a convergence flag (= 1) from the convergence determination unit 183 of the adjacent element processor 3k. If the logical product (AND) of 1) is taken to be 1, the convergence flag is set to 1, and the procedure for transmitting to the convergence determination unit 183 of the adjacent element processor 3k via the convergence flag information bus 181 is performed. Implement one after another in the order of connection. Finally, the convergence flag (=
When 1) is returned, it is determined that all the element processors 3p or 3q in the group have converged.

【0363】さらに、終了情報バス186を設けられた
要素プロセッサ3pの内の特定の要素プロセッサの収束
判定部183が自己の属するグループの全要素プロセッ
サ3p,3kが収束したと判断すれば、収束情報を1と
してリング状に接続された収束情報バスを介して収束情
報(=1)を発信する。ここでは、グループ内の要素プ
ロセッサ3p,3qの収束判定部183間をリング状に
接続された収束情報バス182は一方向への情報伝達を
行う機能を有するとする。
Further, if the convergence determining unit 183 of a specific element processor among the element processors 3p provided with the end information bus 186 determines that all the element processors 3p and 3k of the group to which the self processor belongs have converged, the convergence information The convergence information (= 1) is transmitted through the convergence information bus connected in a ring shape with 1. Here, it is assumed that the convergence information bus 182, which is connected in a ring shape between the convergence determination units 183 of the element processors 3p and 3q in the group, has a function of transmitting information in one direction.

【0364】予め定められたグループの要素プロセッサ
3pが隣接するグループの収束情報バス182を設けた
要素プロセッサ3qへ送出する。前述の隣接するグルー
プの収束情報バス182を設けられた要素プロセッサ3
qの収束判定部183は、自己の属するグループの収束
情報(=1)と、隣接するグループの収束情報(=1)
の論理積(AND)をとって真(=1)となれば、収束
情報を1としてさらに隣接するグループの要素プロセッ
サ3qの収束判定部183へ収束情報バス182を介し
て送出する。
The element processor 3p of a predetermined group sends it to the element processor 3q provided with the convergence information bus 182 of the adjacent group. Element processor 3 provided with the convergence information bus 182 of the aforementioned adjacent group
The convergence determination unit 183 of q determines the convergence information (= 1) of the group to which the self belongs and the convergence information (= 1) of the adjacent group.
If it is true (= 1) by taking the logical product (AND) of the above, the convergence information is set to 1, and the convergence information is sent to the convergence determination unit 183 of the element processor 3q of the adjacent group via the convergence information bus 182.

【0365】このように、リング状に接続された各収束
判定部183は、自己の属するグループの収束情報(=
1)と、隣接するグループからの収束情報(=1)の論
理積(AND)をとって1となれば、収束情報を1とし
てさらに隣接するグループの収束情報バス182を設け
た要素プロセッサ3qの収束判定部183へ収束情報バ
ス182を介して送出する手順を収束情報バス182の
接続順に次々と実施する。
As described above, each of the convergence determining units 183 connected in a ring shape has convergence information (=
When the logical product (AND) of 1) and the convergence information (= 1) from the adjacent group is taken to be 1, the convergence information is set to 1 and the convergence information bus 182 of the adjacent group is provided to the element processor 3q. The procedure of sending to the convergence determination unit 183 via the convergence information bus 182 is sequentially executed in the order of connection of the convergence information bus 182.

【0366】最終的に、最初に収束フラグを1として発
信した特定の要素プロセッサ3pの収束判定部183へ
収束情報(=1)が戻された時点で、全グループの全要
素プロセッサ3k,3p,3qが収束したと判断し、終
了情報(=1)を終了情報バス186を介してホストコ
ンピュータ1へ送出する。ホストコンピュータ1は終了
情報(=1)を受け取った時点で全要素プロセッサ3
k,3p,3qの計算が収束したと判断して計算を終了
させる。
Finally, when the convergence information (= 1) is returned to the convergence determination unit 183 of the specific element processor 3p that first transmitted the convergence flag as 1, all the element processors 3k, 3p, It is determined that 3q has converged, and the end information (= 1) is sent to the host computer 1 via the end information bus 186. When the host computer 1 receives the end information (= 1), all the element processors 3
It is judged that the calculations of k, 3p and 3q have converged, and the calculation is ended.

【0367】このように構成すれば、収束判定を並列化
させた際のホストコンピュータの負荷を軽減させること
ができ、さらに計算の高速化を図ることができる。
With this configuration, it is possible to reduce the load on the host computer when parallelizing the convergence determination, and it is possible to further speed up the calculation.

【0368】なお、この実施の形態においては収束判定
部183は格子状に配置された要素プロセッサの行毎に
グループ分けを行いこのグループの収束情報を管理して
いるが、列毎にグループ分けしても、ランダムにグルー
プ分けしても同様の効果を奏することは言うまでもな
い。また、上記実施の形態では内部情報フラグ、収束フ
ラグ情報、収束情報は各々0または1の論理値として説
明したが、収束、未収束が判定できれば何であっても良
い。また、収束情報バス182はグループ内の一つの要
素プロセッサ3pおよび3qに設けられていればよく、
全要素プロセッサに設ける必要はない。さらに、終了情
報バス186は一つの要素プロセッサ3pに設けられて
いればよく、全要素プロセッサに設ける必要はない。
In this embodiment, the convergence determination unit 183 groups the rows of the element processors arranged in a grid and manages the convergence information of this group, but groups the columns. However, it goes without saying that the same effect can be obtained by randomly grouping. Further, in the above embodiment, the internal information flag, the convergence flag information, and the convergence information have been described as logical values of 0 or 1, respectively, but any value may be used as long as it can be determined whether convergence or non-convergence. Further, the convergence information bus 182 may be provided in one element processor 3p and 3q in the group,
It does not need to be provided in all element processors. Furthermore, the end information bus 186 need only be provided in one element processor 3p, and need not be provided in all element processors.

【0369】さらに、特定の要素プロセッサ3pおよび
3qは、グループ内にある要素プロセッサのどれであっ
てもよく、また特定の要素プロセッサ3pはグループを
代表する要素プロセッサのどれであってもよい。
Further, the specific element processors 3p and 3q may be any of the element processors in the group, and the specific element processor 3p may be any of the element processors representing the group.

【0370】<実施の形態36>次に、この発明の第3
6実施の形態について説明する。マルチプロセッサ上で
収束計算を実行した場合、希ではあるが非安定点(非収
束点)が巡回することがある。このような、いわゆる
「発振現象」を検出する必要がある。
<Embodiment 36> Next, the third embodiment of the present invention will be described.
Six embodiments will be described. When a convergence calculation is executed on a multiprocessor, an instability point (nonconvergence point) may circulate, although it is rare. It is necessary to detect such a so-called "oscillation phenomenon".

【0371】「発振現象」の検出は、一旦全要素プロセ
ッサにおける収束を確認した後、再度収束判定を行うこ
とにより可能であり、複数回収束判定を行うことにより
相当な精度で収束を判定することができる。
The "oscillation phenomenon" can be detected by once confirming the convergence in all the element processors and then making the convergence judgment again. By making the convergence judgment a plurality of times, the convergence can be judged with considerable accuracy. You can

【0372】具体的には、予めきめられた経路に従って
終了フラグを順次転送し、全体としての収束判定を行
う。図55に終了フラグを転送する経路の一例を示した
概念図を示す。図55において、190および191は
2次元空間を離散化した結果得られる格子点を示してい
る。また、各格子点を結ぶ矢印線192は終了フラグが
転送される経路を示している。
Specifically, the end flags are sequentially transferred in accordance with a predetermined route, and the convergence judgment as a whole is performed. FIG. 55 is a conceptual diagram showing an example of a route for transferring the end flag. In FIG. 55, reference numerals 190 and 191 denote grid points obtained as a result of discretizing the two-dimensional space. Further, an arrow line 192 connecting each lattice point indicates a route to which the end flag is transferred.

【0373】以下に、各格子点での収束判定のための処
理について説明する。隣接格子点からの終了フラグが到
着後、はじめて収束が確認された時、次の格子点に終了
フラグを伝搬する。図56に各格子点が終了フラグを隣
接格子点へ伝搬するためのフローチャートを示す。ただ
し、終了フラグの起点となる格子点190の処理を除
く。
The processing for determining the convergence at each grid point will be described below. When convergence is confirmed for the first time after the arrival of the end flag from the adjacent grid point, the end flag is propagated to the next grid point. FIG. 56 shows a flowchart for each grid point to propagate the end flag to the adjacent grid point. However, the processing of the grid point 190 that is the starting point of the end flag is excluded.

【0374】図56に示されているように、まず、隣接
する格子点から終了フラグをもったメッセージが到着し
たかどうか判断する(ステップST20)。そして、隣
接する格子点から終了フラグをもったメッセージが到着
すると自格子点の収束判定処理が駆動され、自格子点の
処理が収束に達するまで待ち(ステップST21)、収
束した時点で図55で示されているような予め決められ
た経路に沿って次の格子点へ終了フラグをもったメッセ
ージを転送する(ステップST22)。
As shown in FIG. 56, first, it is determined whether or not a message having an end flag has arrived from an adjacent grid point (step ST20). Then, when a message having an end flag arrives from an adjacent grid point, the self-grid point convergence determination processing is driven and waits until the self-grid point processing reaches convergence (step ST21). A message having an end flag is transferred to the next grid point along a predetermined route as shown (step ST22).

【0375】図57に終了フラグ転送の起点となってい
る格子点での終了フラグ送出のためのフローチャートを
示す。図に示されているように終了フラグの起点となる
格子点では自格子点での処理の収束のみを判定し(ステ
ップST25)、収束していれば図55に示されたよう
な経路に沿って終了フラグをもったメッセージを次の格
子点へ送出する(ステップST26)。
FIG. 57 shows a flowchart for transmitting the end flag at the grid point which is the starting point of the end flag transfer. As shown in the figure, at the grid point which is the starting point of the end flag, only the convergence of the processing at the self-grid point is judged (step ST25), and if it has converged, it follows the path as shown in FIG. And sends the message with the end flag to the next grid point (step ST26).

【0376】上記のようにして、すべての格子点を通過
後、終了フラグはホストコンピュータに転送され、収束
が確認される。この第35実施の形態のマルチプロセッ
サにおいては、一旦収束が確認された後、再度上記のプ
ロセスを繰り返すことにより収束判定を確実なものにす
る。
As described above, after passing through all the lattice points, the end flag is transferred to the host computer and the convergence is confirmed. In the multiprocessor of the thirty-fifth embodiment, once the convergence is confirmed, the above process is repeated again to ensure the convergence determination.

【0377】以上説明したようにこの実施の形態におい
ては、各格子点での処理に収束判定フラグを持ったメッ
セージが入力されることにより、自格子点での処理の収
束判定処理が起動され、自格子点の処理が収束している
場合には収束判定フラグを持ったメッセージを出力する
ようにしたので、非安定点が存在する場合でも系全体の
収束判定を正しく行うことが出来る。
As described above, in this embodiment, the message having the convergence determination flag is input to the processing at each grid point, so that the convergence determination processing of the processing at the own grid point is started. Since the message with the convergence judgment flag is output when the processing of the own lattice point is converged, the convergence judgment of the entire system can be correctly performed even when the instability point exists.

【0378】また、この実施の形態においては終了フラ
グの起点となる格子点における自格子点の処理の収束判
定処理を常時起動する場合について説明したが、ホスト
コンピュータから収束判定の処理を起動しても同一の効
果が得られることはもちろんである。
In this embodiment, the case has been described in which the convergence determination process of the processing of the own lattice point at the lattice point which is the starting point of the end flag is always activated, but the convergence determination process is activated from the host computer. Of course, the same effect can be obtained.

【0379】この種の情報処理装置においては、微分方
程式の解は各格子点毎に割り付けられたメモリなどの記
憶手段に分散して格納される。そのため、分散して格納
された計算結果を集積し、可視化などの処理を行い、モ
ニタ上に表示する必要がある。
In this type of information processing apparatus, the solution of the differential equation is distributed and stored in the storage means such as the memory allocated to each lattice point. Therefore, it is necessary to accumulate the distributed and stored calculation results, perform visualization processing, and display them on the monitor.

【0380】この実施の形態では、各格子点に分散して
いる微分方程式の解をホストコンピュータに集積する方
法について示す。
In this embodiment, a method of accumulating the solutions of the differential equations distributed at each lattice point in the host computer will be described.

【0381】第36実施の形態では、マルチプロセッサ
上で収束計算を実行した場合、システム全体として計算
が終了したか、否かの収束判定方法について説明した。
すなわち、予めきめられた経路に従って終了フラグを順
次転送し、全格子点を一巡した後、系全体が収束したこ
とを示すメッセージをホストコンピュータに送出する。
ホストコンピュータは前記のメッセージを受信すること
で計算の終了を再度確認するための処理を行う。
In the thirty-sixth embodiment, there has been described the method of determining the convergence of whether or not the calculation is completed for the entire system when the convergence calculation is executed on the multiprocessor.
That is, the end flag is sequentially transferred according to a predetermined route, and after making a round through all the lattice points, a message indicating that the entire system has converged is sent to the host computer.
The host computer performs a process for confirming the end of calculation again by receiving the message.

【0382】図56に各格子点での収束判定処理と微分
方程式の解の送出の関係を示したフローチャートを示
す。図56に沿って収束判定の手順及び微分方程式の解
の送出について説明する。まず、各格子点が隣接する格
子点から終了フラグを受けとる(ステップST20)。
自格子点の処理の収束判定を行い(ステップST2
1)、収束を確認した後、予め定めた経路に沿って終了
フラグを送出する(ステップST22)と同時に、自格
子点での計算結果、すなわち、微分方程式の解をホスト
コンピュータに送出する。
FIG. 56 is a flow chart showing the relationship between the convergence judgment processing at each grid point and the transmission of the solution of the differential equation. The convergence determination procedure and the transmission of the solution of the differential equation will be described with reference to FIG. First, each grid point receives an end flag from an adjacent grid point (step ST20).
Convergence judgment of processing of own lattice point is performed (step ST2
1) After confirming the convergence, an end flag is sent out along a predetermined path (step ST22), and at the same time, the calculation result at the self lattice point, that is, the solution of the differential equation is sent out to the host computer.

【0383】また、図58にホストコンピュータに送出
する微分方程式の解をもったメッセージパケットPAC
のフォーマットを示す。メッセージパケットのフィール
ドは、左データフィールド(第1オペランド)pa3、
右データフィールド(第2オペランド)pa4、メッセ
ージパケットが転送されるべき要素プロセッサ番号が格
納された行き先PE番号pa1、および次ぎに実行する
命令のアドレスが格納された行き先ノード番号pa2の
各フィールドから構成されている。
Further, FIG. 58 shows a message packet PAC having the solution of the differential equation sent to the host computer.
Shows the format of. The fields of the message packet are the left data field (first operand) pa3,
A right data field (second operand) pa4, a destination PE number pa1 in which an element processor number to which a message packet is to be transferred is stored, and a destination node number pa2 in which an address of an instruction to be executed next is stored. Has been done.

【0384】この実施の形態にかかるメッセージパケッ
トにおける左データフィールド、右データフィールド、
行き先要素プロセッサ番号及び行き先ノード番号は以下
のように与えられる。左データフィールドは、微分方程
式の解の当該格子点での値(関数値)である。右データ
フィールドは、当該格子点の識別番号である。行き先要
素プロセッサ(PE)番号は、ホストコンピュータが要
素プロセッサに割り振った番号である。行き先ノード番
号は、RESULTである。RESULTは予め定めた値で、メッセ
ージパケットが各格子点での計算結果を格納しているこ
とを示す。
[0384] The left data field, the right data field in the message packet according to this embodiment,
The destination element processor number and destination node number are given as follows. The left data field is the value (function value) at the grid point of the solution of the differential equation. The right data field is the identification number of the grid point. The destination element processor (PE) number is a number assigned to the element processor by the host computer. The destination node number is RESULT. RESULT is a predetermined value and indicates that the message packet stores the calculation result at each lattice point.

【0385】上記のようなメッセージパケットをホスト
コンピュータが受信すると以下の動作を行う。
When the host computer receives the above message packet, the following operation is performed.

【0386】(1)行き先ノード番号のフィールドをチ
ェックし、値がRESULTであることから、そのメッセージ
パケットが各格子点での演算結果であることを確認す
る。
(1) The destination node number field is checked, and since the value is RESULT, it is confirmed that the message packet is the calculation result at each lattice point.

【0387】(2)右データフィールドに格納された格
子点の番号、左データに格納された微分方程式の解を読
みだす。
(2) Read out the number of the lattice point stored in the right data field and the solution of the differential equation stored in the left data.

【0388】(3)格子点番号から予め定めた方法でア
ドレスを決定し、当該格子点での解の値をホストコンピ
ュータのメモリなどの記憶手段に格納する。
(3) The address is determined from the grid point number by a predetermined method, and the solution value at the grid point is stored in the storage means such as the memory of the host computer.

【0389】以上説明したように、この実施の形態では
各格子点の計算の収束が確認されると同時にホストコン
ピュータに自格子点での計算結果(微分方程式の解)を
転送するようにしたので、全システムの計算が収束し、
すなわち、実行中の微分方程式の求解の完了が確認され
た時点で最終的な結果データがホストコンピュータ上に
揃うという効果がある。
As described above, in this embodiment, the convergence of the calculation of each grid point is confirmed, and at the same time, the calculation result (the solution of the differential equation) at the own grid point is transferred to the host computer. , The calculation of the whole system converges,
That is, there is an effect that the final result data is prepared on the host computer when it is confirmed that the solution of the differential equation under execution is completed.

【0390】なお、第36実施の形態では、1つの格子
点処理(プログラム)を1つの要素プロセッサに割り付
けることを前提にしているが、第37実施の形態乃至第
40実施の形態においては、複数の格子点の処理プログ
ラムを同一の要素プロセッサに割り付け、格子点間のデ
ータ授受を同一要素プロセッサ内のデータメモリを介し
て行うことを前提としている。以下に、各実施の形態に
ついての詳細な説明をする。
In the thirty-sixth embodiment, it is premised that one lattice point process (program) is assigned to one element processor. However, in the thirty-seventh to forty-third embodiments, a plurality of lattice point processes (programs) are allocated. It is premised that the processing program for the grid points is allocated to the same element processor, and the data transfer between the grid points is performed via the data memory in the same element processor. Below, each embodiment will be described in detail.

【0391】<実施の形態37>この発明の第37実施
の形態について説明する。非安定点(非収束点)の巡回
を検出する他の方法として、すべての格子点を通過する
複数の経路で終了フラグの転送を行うことにより、すべ
ての格子点が収束したことを多重に確認する収束判定方
法が考えられる。
<Thirty-seventh Embodiment> A thirty-seventh embodiment of the present invention will be described. As another method to detect the instability point (non-convergence point) cycle, transfer the end flag through multiple paths that pass through all grid points to confirm that all grid points have converged. A convergence determination method that can be considered.

【0392】具体的には、正方格子状に配置された要素
プロセッサに対して、縦方向と横方向の2方向で終了フ
ラグを授受することにより、多重に収束判定することが
できる。
Specifically, the convergence determination can be made in multiples by transmitting / receiving the end flags in the two directions of the vertical direction and the horizontal direction to the element processors arranged in a square lattice.

【0393】図59にこの実施の形態における終了フラ
グの転送経路を示した概念図を示す。
FIG. 59 is a conceptual diagram showing the transfer path of the end flag in this embodiment.

【0394】図において、193,194および195
は2次元空間における正方格子を示し、実線で示した矢
印は第1の終了フラグ転送経路196を、点線で示した
矢印は第2の終了フラグ転送経路197を各々示してい
る。この実施の形態では、第1、および第2の終了フラ
グの転送経路は互いに直交させることによって非収束点
の循環を検出可能である。
In the figure, 193, 194 and 195
Indicates a square lattice in a two-dimensional space, the solid line arrow indicates the first end flag transfer path 196, and the dotted line arrow indicates the second end flag transfer path 197. In this embodiment, by making the transfer paths of the first and second end flags orthogonal to each other, the circulation at the non-converging point can be detected.

【0395】図60に各格子点が終了フラグを隣接格子
点へ伝搬するためのフローチャートを示す。ただし、終
了フラグの起点となる格子点193,195の処理を除
く。
FIG. 60 shows a flowchart for propagating the end flag to each adjacent grid point to the adjacent grid point. However, the processing of the grid points 193 and 195 that are the starting points of the end flags is excluded.

【0396】図60に示されているように、まず、隣接
する格子点から収束判定メッセージが到着したか否かを
判断する(ステップST30)。隣接する格子点から終
了フラグをもったメッセージが到着すると自格子点の収
束判定処理が駆動され、自格子点の処理が収束に達する
まで待ち(ステップST31)、収束した時点で、到着
した終了フラグが第1の転送経路に属するものか、第2
の転送経路に属するものかを判定し、図59で示されて
いるような予め決められた所望の経路に沿って次の格子
点へ終了フラグをもったメッセージを転送する(ステッ
プST32)。
As shown in FIG. 60, first, it is determined whether or not a convergence determination message has arrived from adjacent grid points (step ST30). When a message with an end flag arrives from an adjacent lattice point, the process of determining the convergence of the own lattice point is driven and waits until the process of the own lattice point reaches convergence (step ST31). At the time of convergence, the end flag arrived. Belongs to the first transfer path, or the second
It is determined whether or not it belongs to the transfer route of the above, and the message having the end flag is transferred to the next grid point along the predetermined desired route as shown in FIG. 59 (step ST32).

【0397】図61に終了フラグ転送の起点となってい
る格子点での終了フラグ送出のためのフローチャートを
示す。図に示されているように、まず、終了フラグの起
点となる格子点では自格子点での処理の収束のみを判定
し(ステップST40)、収束していれば収束メッセー
ジに第1あるいは第2の経路に属することを示すフラグ
を格納し(ステップST41)、その後、図59に示さ
れたような経路に沿って終了フラグをもったメッセージ
を次の格子点へ送出する(ステップST42)。
FIG. 61 shows a flowchart for transmitting the end flag at the lattice point which is the starting point of the end flag transfer. As shown in the figure, first, at the grid point that is the starting point of the end flag, only the convergence of the processing at the own grid point is determined (step ST40), and if it has converged, the first or second convergence message is given. The flag indicating that it belongs to the route is stored (step ST41), and then the message having the end flag is sent to the next grid point along the route as shown in FIG. 59 (step ST42).

【0398】この際、終了フラグの値にそのフラグが第
1の経路に属するものか、第2の経路に属するものかの
種別に対応した値を格納する。この値をもとにその他の
格子点では到着した終了フラグの経路を決定することが
できる。
At this time, a value corresponding to the type of whether the flag belongs to the first route or the second route is stored in the value of the end flag. Based on this value, the route of the end flag that has arrived can be determined at other grid points.

【0399】以上説明したように、2個以上の収束判定
フラグを転送する経路を設けたので、非安定点が存在す
る場合でも系全体の収束判定を正しく実行できる。
As described above, since the path for transferring two or more convergence judgment flags is provided, the convergence judgment of the entire system can be correctly executed even when there is an instability point.

【0400】この実施の形態では終了フラグが2つの経
路のうちいずれの経路上を転送されているものであるか
を表示するためにフラグの値を用いたが、終了フラグが
処理されるプログラムを別々に用意し、各々の終了フラ
グが到着した際に終了フラグの転送経路毎に収束判定の
ためのプログラムを起動するようにしても同一の効果が
得られることは明らかである。
In this embodiment, the value of the flag is used to indicate which of the two routes the end flag is transferred to. However, a program that processes the end flag is used. It is obvious that the same effect can be obtained by separately preparing and activating the program for convergence determination for each transfer path of the end flags when each end flag arrives.

【0401】<実施の形態38>次に、この発明の第3
8実施の形態について説明する。非安定点が存在する可
能性がある場合の、マルチプロセッサを用いた収束計算
において非安定点を検出する手順について説明する。
<Embodiment 38> Next, the third embodiment of the present invention will be described.
The eight embodiments will be described. A procedure for detecting an instability point in a convergence calculation using a multiprocessor when there is a possibility that the instability point exists will be described.

【0402】まず、第35実施の形態と同様にして、予
め定めた経路に沿って全格子点を通過して終了フラグを
転送した後、ホストコンピュータに転送する。つぎに、
ホストコンピュータからすべての格子点の処理を停止さ
せるためのメッセージを送信し、結果として、全ての処
理を停止させる。その後、改めて収束の確認をすること
によっても、非安定点の巡回を検知し、確実な収束判定
を実現することができる。
First, similarly to the thirty-fifth embodiment, the end flag is transferred through all the grid points along a predetermined path, and then transferred to the host computer. Next,
The host computer sends a message for stopping the processing of all the lattice points, and as a result, stops all the processing. After that, by confirming the convergence again, it is possible to detect the circulation of the unstable point and realize the reliable convergence determination.

【0403】図62は、この実施の形態における各格子
点の収束判定に関連する処理内容を示したフローチャー
トである。図62に基づいて各格子点の収束判定に関連
する処理について説明する。この実施の形態では収束判
定の結果を格納するためにメモリもしくはレジスタを使
用する。
FIG. 62 is a flow chart showing the processing contents related to the convergence judgment of each lattice point in this embodiment. A process related to the convergence determination of each grid point will be described with reference to FIG. In this embodiment, a memory or a register is used to store the result of the convergence judgment.

【0404】ステップST50で、隣接する格子点から
終了フラグを持ったメッセージが到着したか否かを判断
する。隣接する格子点から終了フラグをもったメッセー
ジが到着すると自格子点の収束判定処理が駆動され、自
格子点の処理が収束に達するまで待ち(ステップST5
1)、収束した時点で、例えば、図55で示されている
ような予め決められた経路に沿って次の格子点へ終了フ
ラグをもったメッセージを転送する(ステップST5
3)。この際、前記のメモリをクリアし(ステップST
52)、かつ、収束判定処理プログラムを起動する(ス
テップST54)。収束判定処理プログラムは自格子点
の処理が非収束状態か否かを判定し、もし非収束状態と
判定した場合には前記メモリに自格子点が非収束状態に
なったことを示すフラグを書き込む。
In step ST50, it is determined whether a message having an end flag has arrived from an adjacent grid point. When a message having an end flag arrives from an adjacent grid point, the convergence determination processing of the own grid point is driven and waits until the processing of the own grid point reaches convergence (step ST5).
1) At the time of convergence, a message having an end flag is transferred to the next grid point along a predetermined route as shown in FIG. 55, for example (step ST5).
3). At this time, the memory is cleared (step ST
52) And the convergence determination processing program is started (step ST54). The convergence judgment processing program judges whether or not the processing of the self lattice point is in the non-convergence state, and if it is determined to be the non-convergence state, writes a flag indicating that the self lattice point has become the non-convergence state. .

【0405】また、終了フラグをもったメッセージの起
点となる格子点での収束判定のための処理は図63で示
したように、基本的には第36実施の形態における終了
フラグをもったメッセージの起点となる格子点の処理と
同様であるが、この処理に加えて前記メモリをクリアし
(ステップST61)、かつ、収束判定処理プログラム
を起動する(ステップST63)。収束判定処理プログ
ラムは自格子点の処理が非収束状態か否かを判定し、も
し非収束状態と判定した場合には前記メモリに自格子点
が非収束状態になったことを示すフラグを書き込む。
As shown in FIG. 63, the process for determining the convergence at the lattice point which is the starting point of the message having the end flag is basically the message having the end flag in the 36th embodiment. The process is the same as the process of the grid point which is the starting point of, but in addition to this process, the memory is cleared (step ST61), and the convergence determination processing program is started (step ST63). The convergence judgment processing program judges whether or not the processing of the self lattice point is in the non-convergence state, and if it is determined to be the non-convergence state, writes a flag indicating that the self lattice point has become the non-convergence state. .

【0406】しかる後に、終了フラグをもったメッセー
ジがホストコンピュータに転送される。ホストコンピュ
ータが終了フラグをもったメッセージ受信すると、予め
定めてあった格子点に対して処理を停止させるためのメ
ッセージを送信する。
Thereafter, the message having the end flag is transferred to the host computer. When the host computer receives the message having the end flag, it sends a message for stopping the processing to a predetermined grid point.

【0407】前記処理を停止させるためのメッセージを
受信した格子点は処理を停止すると同時に予め定めてあ
る経路に沿って処理を停止するためのメッセージを隣接
する次の格子点に転送する。処理を停止するためのメッ
セージを受信した格子点も同様の停止処理を行う。全て
の格子点の処理が停止した後、ホストコンピュータから
前記の各格子点に割り付けられたメモリを読みだし全て
の読みだし結果がゼロであった場合には、対象となる計
算は収束したことになる。もし、前記の読みだし結果の
1つでもゼロと異なるものがあった場合には上述の処理
を再度繰り返す。
The grid point that has received the message for stopping the process stops the process and at the same time transfers the message for stopping the process along a predetermined route to the next adjacent grid point. The grid point that has received the message for stopping the process also performs the same stop process. After the processing of all grid points is stopped, the memory allocated to each grid point is read from the host computer, and if all the read results are zero, the target calculation has converged. Become. If any of the above-mentioned read-out results is different from zero, the above process is repeated.

【0408】図64に格子点が処理の停止を行うための
フローチャートを示す。ホストコンピュータから予め定
めた格子点にのみ処理の停止をするためのメッセージを
送信する。予め定められた格子点は処理停止メッセージ
が到着したか否かを判断する(ステップST70)。処
理停止メッセージが到着したら処理を停止する(ステッ
プST71)。その後予め定めた経路に沿って前記処理
を停止するためのメッセージを転送する(ステップST
72)。この実施の形態では、ホストコンピュータから
予め定めた格子点にのみ処理の停止をするためのメッセ
ージを送信する場合について説明したが、本メッセージ
を全て、もしくは複数の格子点に対して同時もしくは時
系列的に送信しても同様の効果が得られる。
FIG. 64 shows a flowchart for stopping processing at the grid point. A message for stopping the processing is transmitted from the host computer only to a predetermined grid point. A predetermined grid point determines whether or not a processing stop message has arrived (step ST70). When the processing stop message arrives, the processing is stopped (step ST71). After that, a message for stopping the processing is transferred along a predetermined route (step ST
72). In this embodiment, the case where the message for stopping the processing is transmitted from the host computer only to a predetermined grid point has been described, but this message can be sent to all or a plurality of grid points simultaneously or in time series. The same effect can be obtained even if the data is transmitted manually.

【0409】また、この実施の形態ではメッセージによ
り格子点の処理を停止する場合を示したが、この発明に
かかるマルチプロセッサ・システムを構成する要素プロ
セッサが割り込み信号を受信する機構を有している場
合、ホストコンピュータから前記要素プロセッサに割り
込みをかけることにより格子点の処理を停止させても同
一の効果が得られる。
Further, although the case where the processing of the lattice points is stopped by the message is shown in this embodiment, the element processors constituting the multiprocessor system according to the present invention have a mechanism for receiving the interrupt signal. In this case, the same effect can be obtained even if the processing of the lattice points is stopped by interrupting the element processor from the host computer.

【0410】また、この実施の形態では格子点が非収束
状態になったことを示すフラグを格納するメモリを各格
子点毎に割り当てた場合を説明したが、メモリはシステ
ム内に1個以上存在していれば同一の効果を得ることが
できることは明らかである。また、前記マルチプロセッ
サを構成する要素プロセッサがレジスタを有する構造で
あれば、レジスタを用いても同一の効果が得られる。
In this embodiment, a case has been described in which a memory for storing a flag indicating that a grid point has become a non-convergent state is assigned to each grid point, but one or more memories exist in the system. It is clear that the same effect can be obtained if they do. Further, if the element processors constituting the multiprocessor have a structure having a register, the same effect can be obtained even if the register is used.

【0411】<実施の形態39>次に、この発明の第3
9実施の形態について説明する。第36ないし第38実
施の形態では、予め定めた経路に沿って、自格子点の処
理が収束状態に到達したことを示すフラグを持ったメッ
セージが転送され、ホストコンピュータに上記のメッセ
ージが伝達される。その後、ホストコンピュータが第3
6実施の形態で説明した「発振現象」を検出するための
処理を起動する場合について説明した。
<Thirty-ninth Embodiment> Next, the third embodiment of the present invention will be described.
9th Embodiment is described. In the thirty-sixth to thirty-eighth embodiments, a message having a flag indicating that the processing of its own lattice point has reached a converged state is transferred along a predetermined route, and the above message is transmitted to the host computer. It After that, the host computer
The case where the process for detecting the “oscillation phenomenon” described in the sixth embodiment is activated has been described.

【0412】しかし、希にではあるが、境界条件等によ
っては長時間の間収束状態に到達しないことが想定され
る。
However, in rare cases, it is assumed that the convergence state is not reached for a long time depending on the boundary conditions and the like.

【0413】以下に、上記のように系の状態が継続的に
不安定な状態に陥った場合にも対応可能な情報処理装置
の収束判定方法について説明する。
A convergence determination method of the information processing apparatus which can cope with the case where the system state is continuously unstable as described above will be described below.

【0414】ホストコンピュータ上のタイマ、システム
に取り付けられたウォッチ・ドッグ・タイマ等を用いて
処理時間を計測し、一定時間上記の収束メッセージがホ
ストコンピュータに転送されなかった場合、各格子点の
処理プログラムは以下の(1)(2)の処理を行う。
The processing time is measured using a timer on the host computer, a watch dog timer attached to the system, etc., and if the above convergence message is not transferred to the host computer for a certain period of time, processing of each lattice point is performed. The program performs the following processes (1) and (2).

【0415】(1)各格子点での収束判定の基準を通常
より緩める。
(1) The criterion for the convergence judgment at each grid point is relaxed more than usual.

【0416】(2)転送するメッセージに、緩められた
判定基準を用いて判定したことを示すフラグを付ける。
(2) The message to be transferred is flagged to indicate that it has been judged using the relaxed judgment criteria.

【0417】(1)(2)の処理を行うことにより系が
継続的に不安定な状態に陥ることを防止することができ
る。
By performing the processes (1) and (2), it is possible to prevent the system from continuously falling into an unstable state.

【0418】次に、(1)(2)の処理を実現するため
の実施の形態について第36実施の形態を元に説明す
る。
Next, an embodiment for realizing the processes (1) and (2) will be described based on the 36th embodiment.

【0419】図65、図66に上記(1)(2)の処理
を実現するために必要な各格子点での収束判定処理のフ
ローチャートを示す。なお、図65、図66は、第36
実施の形態で説明した図56、図57に各々対応してい
る。
FIG. 65 and FIG. 66 are flowcharts of the convergence determination processing at each lattice point necessary to realize the above processing (1) and (2). It should be noted that FIGS.
This corresponds to each of FIGS. 56 and 57 described in the embodiment.

【0420】図65にフラグの起点となる格子点以外の
格子点での収束判定処理を示したフローチャートを示
す。図に示したように、まず、隣接する格子点から終了
フラグを持ったメッセージが到着したか否かを判断する
(ステップST80)。そのメッセージが到着したら、
到着したメッセージに収束判定基準を緩めることを示す
フラグが付加されていないかどうかを判別する(ステッ
プST81)。
FIG. 65 is a flowchart showing the convergence determination processing at grid points other than the grid point which is the starting point of the flag. As shown in the figure, first, it is determined whether or not a message having an end flag arrives from an adjacent grid point (step ST80). When that message arrives,
It is determined whether or not a flag indicating that the convergence criterion is relaxed is added to the arrived message (step ST81).

【0421】もし、このメッセージが収束判定基準を緩
めることを示すフラグが付されていなければ、通常の判
定基準で収束判定し(ステップST81)、収束したか
否かを判断する(ステップST83)。収束すると隣接
格子点へ収束メッセージを送出する(ステップST8
4)。
If this message is not provided with a flag indicating that the convergence criterion is relaxed, the convergence criterion is determined according to the normal criterion (step ST81), and it is determined whether or not it has converged (step ST83). When converged, a convergence message is sent to the adjacent grid points (step ST8).
4).

【0422】隣接する格子点から収束メッセージが入力
された後、このメッセージに判定基準を緩めて収束判定
を行ったことを示すフラグが付加されていた場合には自
格子点の収束判定を予め設定されている第2の基準を用
いて行い(ステップST85,ST86)、収束判定を
緩めたことを示すフラグを付加して次の格子点に送出す
る(ステップST87)。
After a convergence message is input from an adjacent grid point, if a flag indicating that the judgment criterion is relaxed and the convergence judgment is made is added to this message, the convergence judgment of the own grid point is set in advance. The second reference is used (steps ST85 and ST86), and a flag indicating that the convergence determination has been loosened is added and sent to the next grid point (step ST87).

【0423】フラグの起点となる格子点での収束判定処
理を示したフローチャートを図66に示す。図66は、
ホストコンピュータから収束判定基準の変更を指示する
メッセージを受信した場合には収束判定を予め定めた第
2の判定基準を用いて行い、判定基準を緩めたことを示
すフラグを付加して隣接する格子点へのメッセージを送
出する場合の手順について示している。ホストコンピュ
ータから収束判定基準を変更する指示メッセージが到着
したか否かを判断する(ステップST90)。指示メッ
セージが到着すると、ステップST91で、収束判定基
準を変更する。そして自格子点の処理が与えられた基準
で収束したか否かを判断する(ステップST92)。自
格子点の処理が与えられた基準で収束した場合、収束判
定基準の変更があったか否かを判断する(ステップST
93)。収束判定基準の変更がなかった場合には、その
まま隣接格子点へ収束メッセージを送出し(ステップS
T95)、収束判定基準の変更があった場合には、収束
メッセージに判定基準を緩めたことを示すフラグを付加
して(ステップST94)、隣接格子点へ収束メッセー
ジを送出する(ステップST95)。
FIG. 66 is a flow chart showing the convergence determination processing at the grid point which is the starting point of the flag. FIG. 66 shows
When a message instructing to change the convergence criterion is received from the host computer, the convergence criterion is determined using a second criterion that is set in advance, and a flag indicating that the criterion is relaxed is added to the adjacent grid. The procedure for sending a message to a point is shown. It is determined whether or not an instruction message for changing the convergence criterion has arrived from the host computer (step ST90). When the instruction message arrives, the convergence criterion is changed in step ST91. Then, it is determined whether or not the processing of the own lattice point has converged on the basis of the given criteria (step ST92). When the processing of the own lattice point converges with the given reference, it is determined whether or not the convergence determination reference has been changed (step ST
93). If the convergence criterion is not changed, the convergence message is sent to the adjacent grid point as it is (step S
(T95), if the convergence criterion is changed, a flag indicating that the criterion is relaxed is added to the convergence message (step ST94), and the convergence message is sent to the adjacent grid point (step ST95).

【0424】第37及び第38実施の形態においても上
記の(1)(2)を実現するための機能を第39実施の
形態同様に追加できることは明らかである。
It is obvious that the functions for realizing the above (1) and (2) can be added also in the 37th and 38th embodiments as in the 39th embodiment.

【0425】<実施の形態40>次に、この発明の第4
0実施の形態について説明する。この実施の形態の特徴
は、マルチプロセッサを用いた収束計算における非安定
点を検出する収束判定方法にある。
<Fortyth Embodiment> Next, a fourth embodiment of the present invention will be described.
An embodiment will be described. The feature of this embodiment lies in a convergence determination method for detecting an unstable point in convergence calculation using a multiprocessor.

【0426】この実施の形態では、各格子点の計算が収
束したか否かを判定する収束判定プログラム(収束判定
部)と、収束状態を格納するレジスタ(CREG)また
はメモリを備える。CREGは任意のタイミングで外部
からゼロクリアすることができ、また、収束判定プログ
ラムによって当該格子点の計算が収束していないと判定
した場合には1がセットされる。
In this embodiment, a convergence judgment program (convergence judgment unit) for judging whether or not the calculation of each lattice point has converged, and a register (CREG) or memory for storing the convergence state are provided. CREG can be externally cleared to zero at an arbitrary timing, and 1 is set when it is determined by the convergence determination program that the calculation of the lattice point has not converged.

【0427】システム全体の収束判定は次の手順で行
う。また、対応するフローチャートを図67に示す。
The convergence determination of the entire system is performed by the following procedure. A corresponding flowchart is shown in FIG.

【0428】(1)すべての格子点に対応するCREG
レジスタをゼロクリアする(ステップST100)。
(1) CREG corresponding to all grid points
The register is cleared to zero (step ST100).

【0429】(2)すべての格子点の1回分の処理が終
了するために十分な時間待つ(ステップST101)。
(2) Wait for a sufficient time to complete the processing for one time for all grid points (step ST101).

【0430】(3)全格子点の上記レジスタを読み出し
0のままであることを確認する(ステップST10
2)。
(3) It is confirmed that the above registers of all grid points are read out and remain 0 (step ST10).
2).

【0431】(4)1格子点でも1が読み出された場合
には、(1)〜(3)の処理を繰り返す。もし、全格子
点の上記レジスタの値が全て0の場合は処理を終了する
(ステップST103)。
(4) When 1 is read out even at one grid point, the processes of (1) to (3) are repeated. If the values of the above registers at all grid points are all 0, the process ends (step ST103).

【0432】この実施の形態では収束判定プログラムに
より、収束していないと判断した場合には、上記CRE
Gレジスタに1を書き込むようにするが、この処理は最
初からプログラムに組み込んでおいてもよいし、一旦、
当該格子点の計算が収束した後にプログラムを書き換え
て前記の収束判定プログラムを起動し前記のCREGレ
ジスタの操作を行うようにしてもよい。
In this embodiment, when it is judged by the convergence judgment program that the convergence has not occurred, the CRE
Although 1 is written to the G register, this process may be incorporated in the program from the beginning, or
After the calculation of the lattice points converges, the program may be rewritten to start the convergence determination program and operate the CREG register.

【0433】また、この実施の形態では格子点の計算の
収束状態を格納する記憶手段として各格子点毎にレジス
タを割り付けた場合について説明したが、前記記憶手段
としてメモリを用いても同一の効果が得られることは明
らかである。また、この実施の形態では各格子点毎にレ
ジスタ、もしくはメモリ要素を割り付ける場合について
説明したが、システム内に1個以上あればよい。また、
マルチプロセッサ構成のシステム上でこの発明にかかる
収束判定方法を用いる場合には前記の記憶手段を要素プ
ロセッサ毎に1個以上割り当てるとより効果的であるこ
とは言うまでもない。
Further, although the case where a register is allocated for each grid point as a storage means for storing the convergence state of the calculation of the grid points has been described in this embodiment, the same effect can be obtained even if a memory is used as the storage means. It is clear that Further, in the present embodiment, the case of allocating a register or a memory element for each grid point has been described, but it is sufficient if there is one or more in the system. Also,
Needless to say, when the convergence determination method according to the present invention is used on a multiprocessor system, it is more effective to allocate one or more of the storage means to each element processor.

【0434】上記のように、この実施の形態では非収束
状態に陥ったことを記憶する記憶手段をシステム内に少
なくとも1つ有し、その記憶手段を全てゼロクリアする
手段と、その記憶手段の記憶内容を読みだし、その全て
がゼロであることを確認する手段を備えているので、非
収束点が存在する場合であっても誤りなく系の収束判定
が可能となる。
As described above, in this embodiment, the system has at least one storage means for storing the fact that the non-convergent state has occurred, and means for clearing all the storage means to zero and the storage of the storage means. Since a means for reading the contents and confirming that all of them are zero is provided, even if there is a non-convergence point, it is possible to judge the convergence of the system without error.

【0435】また、この実施の形態では、各格子点の処
理プログラムは当該格子点が非収束状態に陥った場合に
レジスタ(CREG)に「1」を書き込むようにしてい
るが、「1」を加算するようにすれば、最終的にCRE
Gの値を読み出すことで、非収束状態に陥った格子点の
個数がわかる。こうように、各格子点処理プログラムが
当該格子点が非収束状態に陥った場合に、CREGの内
容に1を加算するようにすれば、最終的なCREGの値
をもとに収束判定基準の変更、格子点の粗さ等を調整す
ることで、処理時間を短縮することができるという効果
がある。
In this embodiment, the processing program for each grid point writes "1" in the register (CREG) when the grid point falls into a non-convergent state. If you add it, CRE will eventually
By reading the value of G, the number of lattice points that have fallen into the non-convergent state can be known. In this way, if each grid point processing program adds 1 to the content of CREG when the grid point falls into a non-convergent state, the convergence judgment standard based on the final CREG value is obtained. By changing or adjusting the roughness of the grid points, the processing time can be shortened.

【0436】なお、第31ないし第39実施の形態の発
明は、複数のプロセッサを有する通常のマルチプロセッ
サに対して効果があるのいずれかは言うまでもないが、
第1実施の形態等の要素プロセッサが独立に演算を行え
る情報処理装置と組み合わせて用いることによって、収
束判定の間も要素プロセッサが独立に動作でき解の精度
を向上できるという効果がある。
Needless to say, the inventions of the thirty-first to thirty-ninth embodiments are effective for an ordinary multiprocessor having a plurality of processors.
By using the element processor of the first embodiment or the like in combination with the information processing apparatus capable of independently performing the operation, the element processor can operate independently during the convergence determination, and the accuracy of the solution can be improved.

【0437】<実施の形態41>次に、この発明の第4
1実施の形態について説明する。図71はこの発明の第
41実施の形態による隣接する要素プロセッサ間のデー
タ通信を行うために入出力制御部とデータメモリとで構
成されたネットワーク構成を示すブロック図である。図
71において、3tはデータメモリやデータメモリとの
通信のための入出力制御部を内部に持たない要素プロセ
ッサ、200はネットワーク上に配置されたデータメモ
リ、201は要素プロセッサ3tと複数のデータメモリ
200とのアクセス経路を決定し、要素プロセッサ3t
とデータメモリ200との間のデータ通信を制御する入
出力制御部、202はデータ通信のために要素プロセッ
サ3tと入出力制御部201との間を結ぶデータバス、
203は要素プロセッサ3tとデータメモリ200とを
連結する要素プロセッサ間コネクションである。
<Forty-First Embodiment> Next, a fourth embodiment of the present invention will be described.
One embodiment will be described. FIG. 71 is a block diagram showing a network configuration including an input / output control unit and a data memory for performing data communication between adjacent element processors according to the forty-first embodiment of the present invention. In FIG. 71, 3t is an element processor that does not internally have an input / output control unit for communication with the data memory or the data memory, 200 is a data memory arranged on the network, 201 is an element processor 3t and a plurality of data memories. 200, determines the access route to 200, and the element processor 3t
And an input / output control unit for controlling data communication between the data memory 200 and 202, a data bus connecting the element processor 3t and the input / output control unit 201 for data communication,
Reference numeral 203 denotes an inter-element processor connection that connects the element processor 3t and the data memory 200.

【0438】入出力制御部201は、ここでは4つのデ
ータメモリ200が接続されており、それぞれのデータ
メモリ200は要素プロセッサ3tの隣接要素プロセッ
サに接続されている他の入出力制御部に接続される。た
だし、入出力制御部201に接続されるデータメモリ2
00の数は、4つに限られるものではない。各入出力制
御部201に接続されるデータメモリ200の数はネッ
クワークの状態に応じて決定され、ネックワークの状態
は各解析の態様に応じて決定されるものである。
The input / output control unit 201 is connected to four data memories 200 here, and each data memory 200 is connected to another input / output control unit connected to an adjacent element processor of the element processor 3t. It However, the data memory 2 connected to the input / output control unit 201
The number of 00s is not limited to four. The number of data memories 200 connected to each input / output control unit 201 is determined according to the state of the neckwork, and the state of the neckwork is determined according to each analysis mode.

【0439】要素プロセッサ3tは、データバス202
を介して入出力制御部201へメモリアクセス要求を送
る。メモリアクセス要求には、4方向のうちいずれのデ
ータメモリ200とアクセスを行うかを記述した通信方
向データと、指定されたデータメモリ200のメモリ空
間のアドレス番号が記述されている。入出力制御部20
1は、このアクセス要求に従って通信方向を切り替え、
4方向のうちの指定されたデータメモリ200とのアク
セスを可能にする。そして、メモリアクセス要求に記述
されたアドレス番号のデータが、要素プロセッサ間コネ
クション203を通し、入出力制御部201を経由し、
データバス202を通して要素プロセッサ3tに与えら
れる。この要素プロセッサ3tに与えられるデータは、
例えば、隣接要素プロセッサが予め書き込んであったも
のであり、隣接要素プロセッサとの直接の通信によって
与えられたと等価なデータである。
The element processor 3t uses the data bus 202.
A memory access request is sent to the input / output control unit 201 via. In the memory access request, communication direction data that describes which data memory 200 to access in the four directions and the address number of the memory space of the designated data memory 200 are described. Input / output control unit 20
1 switches the communication direction according to this access request,
It enables access to the specified data memory 200 in four directions. Then, the data of the address number described in the memory access request passes through the inter-element processor connection 203 and the input / output control unit 201,
It is given to the element processor 3t through the data bus 202. The data given to this element processor 3t is
For example, the data has been written in advance by the adjacent element processor and is equivalent to the data given by direct communication with the adjacent element processor.

【0440】また、メモリ上に規則的に配置された複数
のデータにアクセスする際には、要素プロセッサ3tか
らその先頭アドレス、アドレッシング・モードを入出力
制御部201に送ることで、それらのデータへの連続ア
クセスを実現することができることは言うまでもない。
Further, when accessing a plurality of data regularly arranged in the memory, the element processor 3t sends the start address and addressing mode to the input / output control unit 201 so that the data can be accessed. Needless to say, continuous access can be realized.

【0441】以上のように、入出力制御部201をデー
タメモリ200間に配置してネットワークを構成するこ
とにより、要素プロセッサ3t内に入出力制御部201
が実装されていない場合においても隣接要素プロセッサ
がデータを書き込んだデータメモリ200に高速でアク
セスすることが可能になる。
As described above, by arranging the input / output control unit 201 between the data memories 200 to form a network, the input / output control unit 201 is provided in the element processor 3t.
Even when is not implemented, the adjacent element processor can access the data memory 200 in which the data is written at high speed.

【0442】図71に示したネットワーク構成では、要
素プロセッサ3tと入出力制御部201とはデータバス
202を介して直結されていたが、直結しているため参
照/更新要求が衝突しないようにシステムの動作を構築
することが必要になる。もし、同一メモリアドレスに対
する参照/更新要求が衝突した場合には処理が中断し、
アクセス時間の増大を招く。
In the network configuration shown in FIG. 71, the element processor 3t and the input / output control unit 201 are directly connected via the data bus 202. However, since they are directly connected, the system is configured so that reference / update requests do not collide. It is necessary to build the behavior of. If a reference / update request for the same memory address collides, the processing is interrupted,
This leads to an increase in access time.

【0443】図72に示すネットワーク構成は、要素プ
ロセッサ3tから入出力制御部201へ出されるメモリ
アクセス要求を一時的に記憶するためのバッファ機構を
備えている。図72において、204はデータパス20
2に接続され要素プロセッサ3tからのメモリアクセス
要求を一時的に記憶するためのバッファ機構であり、そ
の他図71と同一符号のものは図71の同一符号部分に
相当する部分である。
The network configuration shown in FIG. 72 has a buffer mechanism for temporarily storing a memory access request issued from the element processor 3t to the input / output control unit 201. In FIG. 72, reference numeral 204 is the data path 20.
71 is a buffer mechanism for temporarily storing a memory access request from the element processor 3t, and the same reference numerals as those in FIG. 71 are portions corresponding to the same reference numerals in FIG.

【0444】図72に示すように構成されたマルチプロ
セッサ・システムでは、互いに隣接する2つの要素プロ
セッサ3tによって一つのデータメモリ200が共有さ
れる。隣接する2つの要素プロセッサ3tが同時に同一
のメモリにアクセスする可能性がある。バッファ機構2
04は、データメモリに対する参照/更新要求を一時的
に記憶しておく。要素プロセッサ3tはバッファ機構2
04に参照/更新要求が記憶されると、データメモリ2
00からのデータ取得に関係なく、処理を進めることが
できる。このようにバッファ機構204を備えたマルチ
プロセッサ・システムでは、同一メモリアドレスに対す
る参照/更新要求が衝突した場合でも、処理を中断する
ことなく、より高速なメモリアクセスが可能となる。
In the multiprocessor system configured as shown in FIG. 72, one data memory 200 is shared by two element processors 3t adjacent to each other. Two adjacent element processors 3t may access the same memory at the same time. Buffer mechanism 2
Reference numeral 04 temporarily stores a reference / update request for the data memory. The element processor 3t has a buffer mechanism 2
When the reference / update request is stored in 04, the data memory 2
Processing can proceed regardless of data acquisition from 00. As described above, in the multiprocessor system including the buffer mechanism 204, even when a reference / update request for the same memory address collides, it is possible to perform faster memory access without interrupting the processing.

【0445】図71で示した単位ユニットを複数個連結
することにより熱流体解析に最適な格子型ネットワーク
トポロジーを形成したものを、図73に示す。第8実施
の形態ないし第11実施の形態において説明した2次元
格子型ネットワークでは、格子が交わる位置に要素プロ
セッサ3tが配置されている。図73に示すように、入
力制御部201が要素プロセッサ3tの外部にある場合
には、格子が交わる位置には、入出力制御部201が配
置される。入出力制御部201には要素プロセッサ3t
が一対一に対応しており、入出力制御部201と要素プ
ロセッサ3tとはデータバス202を介して接続され、
さらに入出力制御部201には4つのデータメモリ20
0が接続されている。
FIG. 73 shows a lattice type network topology optimal for thermo-fluid analysis formed by connecting a plurality of unit units shown in FIG. In the two-dimensional grid type networks described in the eighth to eleventh embodiments, the element processors 3t are arranged at the positions where the grids intersect. As shown in FIG. 73, when the input control unit 201 is outside the element processor 3t, the input / output control unit 201 is arranged at the position where the grids intersect. The input / output control unit 201 includes an element processor 3t
Correspond to each other on a one-to-one basis, and the input / output control unit 201 and the element processor 3t are connected via a data bus 202,
Further, the input / output control unit 201 has four data memories 20.
0 is connected.

【0446】このように、入出力制御部201を中心と
して要素プロセッサ3tやデータメモリ200などの各
デバイスを接続することにより、2次元格子型ネットワ
ークを構成し、高速で隣接要素プロセッサ間のメモリア
クセスを実行することができる。
As described above, by connecting the respective devices such as the element processor 3t and the data memory 200 centering on the input / output control unit 201, a two-dimensional lattice type network is constructed and the memory access between the adjacent element processors is performed at high speed. Can be executed.

【0447】勿論、入出力制御部201を使用して1次
元パイプライン・トポロジーに基づくネットワークを構
成することも可能である。図74は1次元パイプライン
トポロジー状に構成されたマルチプロセッサ・システム
のネットワークの一部を示すブロック図である。1次元
ネットワークの場合、入出力制御部201に接続される
データメモリ200の数は2つである。
Of course, it is possible to construct a network based on the one-dimensional pipeline topology by using the input / output control unit 201. FIG. 74 is a block diagram showing a part of a network of a multiprocessor system configured in a one-dimensional pipeline topology. In the case of a one-dimensional network, the number of data memories 200 connected to the input / output control unit 201 is two.

【0448】このように入出力制御部201を介してネ
ットワークを構成することにより、2次元格子型ネット
ワークの場合と同様に、1次元パイプライン型ネットワ
ークにおいても要素プロセッサ3tのデータメモリ20
0へのアクセスを高速化できることは言うまでもない。
By thus constructing the network via the input / output control unit 201, as in the case of the two-dimensional lattice type network, the data memory 20 of the element processor 3t is also used in the one-dimensional pipeline type network.
It goes without saying that access to 0 can be speeded up.

【0449】また、要素プロセッサを3次元に配置する
場合についても同様に構成できる。図75に示すよう
に、3次元に構成する場合には、一つの入出力制御部に
6つのデータメモリ200が接続される。例えば、図7
3に示した格子型ネットワークトポロジーを複数枚重ね
て3次元に構成することができる。図75において、入
出力制御部201aと201bとは、異なる平面に配置
された格子型ネットワークトポロジーに属する。この2
つの入出力制御部201a,201bは、一つのデータ
メモリ200を共有する。このように、入出力制御部2
01a、201bを中心として要素プロセッサ3tやデ
ータメモリ200などの各デバイスを接続することによ
り、3次元格子型ネットワークを構成し、高速で隣接要
素プロセッサ間のメモリアクセスを実行することができ
る。
The same arrangement can be applied to the case where the element processors are three-dimensionally arranged. As shown in FIG. 75, in the case of a three-dimensional structure, six data memories 200 are connected to one input / output control unit. For example, in FIG.
A plurality of lattice type network topologies shown in FIG. 3 can be stacked to form a three-dimensional structure. In FIG. 75, the input / output control units 201a and 201b belong to a lattice type network topology arranged on different planes. This 2
The one input / output control unit 201a, 201b shares one data memory 200. In this way, the input / output control unit 2
By connecting the respective devices such as the element processor 3t and the data memory 200 centering on 01a and 201b, a three-dimensional lattice type network can be constructed and memory access between adjacent element processors can be executed at high speed.

【0450】また、任意のネットワークにおいて適用可
能であるが、例えば、図73に示したような格子型ネッ
トワークトポロジーにおいて、隣接する要素プロセッサ
3t以外の周囲にある遠い要素プロセッサ3tとの間で
のデータの通信も可能である。例えば、データメモリ内
に所定の要素プロセッサのデータを書き込む領域を設
け、入出力制御部201によってその領域をコピーする
ことによって、各要素プロセッサ3tは、隣接する要素
プロセッサ3tよりも少し離れた場所に配置された要素
プロセッサのデータを入手することも可能である。
Further, although it is applicable to any network, for example, in the lattice type network topology as shown in FIG. 73, data between the distant element processors 3t other than the adjacent element processors 3t is present. Communication is also possible. For example, by providing an area for writing the data of a predetermined element processor in the data memory and copying the area by the input / output control unit 201, each element processor 3t is placed at a position slightly distant from the adjacent element processor 3t. It is also possible to obtain the data of the arranged element processors.

【0451】要素プロセッサが複数の入出力制御部に対
して参照/更新要求を出力するように構成することも可
能である。これを、図73で示した2次元格子型トポロ
ジーに応用すると、図76に示す構成になる。図76に
示すように、要素プロセッサ3tc,3tdは四方に配
置された入出力制御部201cに参照/更新要求を出力
することができる。例えば、要素プロセッサ3tc同士
で通信する場合には、一つのデータメモリ200を共有
する隣接した2つの入出力制御部201cに対して参照
/更新要求を出力する。そうすると、隣接要素プロセッ
サ3tdを一つ飛ばして要素プロセッサ3tc同士で通
信ができる。例えば、要素プロセッサ3tcのみを用い
て計算を行う粗ノード結合コネクションと、要素プロセ
ッサ3tc,3tdを用いて計算を行う細ノード結合コ
ネクションとの使い分けを行うことができる。
It is also possible to configure the element processor to output a reference / update request to a plurality of input / output control units. When this is applied to the two-dimensional lattice type topology shown in FIG. 73, the configuration shown in FIG. 76 is obtained. As shown in FIG. 76, the element processors 3tc and 3td can output reference / update requests to the input / output control units 201c arranged in all directions. For example, when the element processors 3tc communicate with each other, the reference / update request is output to two adjacent input / output control units 201c sharing one data memory 200. Then, one adjacent element processor 3td can be skipped and the element processors 3tc can communicate with each other. For example, it is possible to selectively use a coarse node connection that performs a calculation using only the element processor 3tc and a fine node connection that performs a calculation using the element processors 3tc and 3td.

【0452】また、要素プロセッサ3tは、周囲に配置
された入出力制御部201とデータバスによって接続
し、参照/更新要求を出すだけではなく、解析の対象や
精度等に応じて、もっと離れた場所の入出力接続部20
1にデータバスを介して接続してもよいことは言うまで
もない。
Further, the element processor 3t is connected to the input / output control unit 201 arranged in the periphery by the data bus, and not only issues the reference / update request, but also separates it depending on the object of analysis, accuracy, and the like. I / O connection section 20 of the place
It goes without saying that it may be connected to 1 via a data bus.

【0453】<実施の形態42>次に、この発明の第4
2実施の形態について説明する。第30ないし第34実
施の形態では、各要素プロセッサ3k,3m,3p,3
qが出力する収束判定フラグ(1または0)を収束判定
ユニット180や収束判定部183内に実装された論理
回路によって、次々と論理的に掛け合わせ、最終的に収
束判定情報としてホストコンピュータ1に転送してい
た。ところで、マルチプロセッサ・システムにおいて、
接続されている要素プロセッサの台数が数十台程度の小
規模な場合には、第30実施の形態ないし第34実施の
形態で示した構成でも十分高速に収束判定ビットの論理
積を取ることは可能である。しかしながら、要素プロセ
ッサが数百台にも及ぶ大規模マルチプロセッサ・システ
ムの場合には、全収束判定ユニット180や収束判定部
183の論理積が終了してホストコンピュータ1に収束
判定結果転送される迄の合計時間は膨大なものとなる。
<Forty-Second Embodiment> Next, a fourth embodiment of the present invention will be described.
Two embodiments will be described. In the thirtieth to thirty-fourth embodiments, each element processor 3k, 3m, 3p, 3
The convergence determination flag (1 or 0) output by q is logically multiplied one after another by a logic circuit implemented in the convergence determination unit 180 or the convergence determination unit 183, and finally the host computer 1 as convergence determination information. I was transferring. By the way, in a multiprocessor system,
When the number of connected element processors is as small as several tens, the logical structure of the convergence judgment bits cannot be obtained sufficiently fast even with the configurations shown in the thirtieth to thirty-fourth embodiments. It is possible. However, in the case of a large-scale multiprocessor system having hundreds of element processors, until the logical product of all the convergence determination units 180 and the convergence determination unit 183 ends and the convergence determination result is transferred to the host computer 1. The total time of will be enormous.

【0454】図77はこの発明の第42実施の形態によ
る収束判定装置の概略を示す概念図である。図77にお
いて、3は要素プロセッサ、205は収束判定ビットを
一時格納するための収束判定ビット用レジスタ、206
は要素プロセッサ3と収束判定ビット用レジスタ205
とを接続して要素プロセッサ3から出力される収束判定
ビットを伝達するための収束判定ビット線、208は収
束情報をホストコンピュータに伝達するための収束情報
信号線、209は接地電位VSSに固定された接地電位点
207に接続されたソースと収束判定ビット用レジスタ
205に接続されたゲートと収束情報信号線208に接
続されたドレインとを有するN型MOSトランジスタ、
210は電源電位点211に接続された一方端と収束情
報信号線208に接続された他方端とを有する抵抗であ
る。収束判定装置は、アナログ回路であるワイヤードO
Rを用いて構成されている。ワイヤードORは、N型M
OSトランジスタと収束情報信号線208と抵抗210
とで構成される。
FIG. 77 is a conceptual diagram showing the outline of a convergence determining apparatus according to the 42nd embodiment of the present invention. In FIG. 77, 3 is an element processor, 205 is a convergence determination bit register for temporarily storing a convergence determination bit, 206
Is the element processor 3 and the convergence determination bit register 205
Convergence determination bit line for transmitting the convergence determination bit output from the element processor 3 by connecting and, 208 is a convergence information signal line for transmitting the convergence information to the host computer, and 209 is fixed to the ground potential V SS . N-type MOS transistor having a source connected to the ground potential point 207, a gate connected to the convergence determination bit register 205, and a drain connected to the convergence information signal line 208,
Reference numeral 210 is a resistor having one end connected to the power supply potential point 211 and the other end connected to the converged information signal line 208. The convergence determination device is a wired O that is an analog circuit.
It is configured using R. Wired OR is N type M
OS transistor, convergence information signal line 208, and resistor 210
Composed of and.

【0455】各要素プロセッサ3からそれぞれ出力され
る少なくとも1ビットの収束判定ビットは、収束判定ビ
ット線7を介して収束判定ビット用レジスタ8上に一時
的に保存される。収束判定ビット用レジスタ8に格納さ
れた収束判定ビットは、ワイヤードORにて論理積が取
られ、収束情報信号線12に出力される少なくとも1ビ
ットの収束判定結果に反映される。
At least one bit of the convergence judgment bit output from each element processor 3 is temporarily stored in the convergence judgment bit register 8 via the convergence judgment bit line 7. The convergence judgment bits stored in the convergence judgment bit register 8 are logically ANDed by a wired OR and reflected on the convergence judgment result of at least 1 bit output to the convergence information signal line 12.

【0456】いま、各要素プロセッサ3から出力される
収束判定ビットが「0」の時を収束、「1」の時を未収
束状態であると定義する。各要素プロセッサ3の全てが
収束判定ビットとして「0」、すなわち収束状態を出力
した場合は、NチャネルMOSトランジスタ209は全
て非導通状態となり、収束情報信号線208からは抵抗
210を介して電源電位VDDが出力され、系全体が収束
に至ったことをホストコンピュータが認識できる。
Now, when the convergence determination bit output from each element processor 3 is "0", it is defined as converged, and when it is "1", it is defined as an unconverged state. When all the element processors 3 output “0” as the convergence determination bit, that is, the convergence state, all the N-channel MOS transistors 209 are in the non-conduction state, and the convergence information signal line 208 receives the power supply potential via the resistor 210. V DD is output, and the host computer can recognize that the entire system has converged.

【0457】また、各要素プロセッサ3のうち少なくと
も一つが収束判定ビットとして「1」(即ち未収束状
態)を出力した場合は、対応するN型MOSトランジス
タ209が導通状態となっているため、抵抗210の抵
抗値をN型MOSトランジスタ209の導通時の抵抗値
に比べ十分に大きく設定することで、収束情報信号線2
08にはデジタル的に接地電位VSSと見なしうる電位が
出力される。収束情報信号線208が接地電位VSSと見
なしうる電位にあることで、系全体としてはまだ収束に
至っていないことをホストコンピュータ1が認識でき
る。
When at least one of the element processors 3 outputs "1" (that is, the non-convergence state) as the convergence determination bit, the corresponding N-type MOS transistor 209 is in the conductive state, and the resistance is By setting the resistance value of 210 to be sufficiently larger than the resistance value of the N-type MOS transistor 209 at the time of conduction, the convergence information signal line 2
A potential that can be digitally regarded as the ground potential V SS is output to 08. Since the convergence information signal line 208 is at a potential that can be regarded as the ground potential V SS , the host computer 1 can recognize that the entire system has not yet converged.

【0458】なお、この実施の形態において、各要素プ
ロセッサ3が出力する収束判定ビットの論理値が「1」
の時は収束を、「0」の時は未収束状態であることを示
していると定義し、N型MOSトランジスタをP型MO
Sトランジスタに変更することで、同様な動作をする回
路を構成できることは言うまでもない。
In this embodiment, the logical value of the convergence determination bit output from each element processor 3 is "1".
Is defined as converging, and "0" as non-converging, and the N-type MOS transistor is defined as a P-type MO.
It goes without saying that a circuit that performs the same operation can be configured by changing to an S transistor.

【0459】以上のように収束判定装置を構成すること
によって、全収束判定用レジスタ205上に保存された
収束判定ビットの論理値を数μ秒程度の短時間で連続的
に得ることが可能となり、収束判定を演算処理から独立
に行いつつ、収束判定時間を短縮することができる。
By configuring the convergence determination device as described above, it becomes possible to continuously obtain the logical value of the convergence determination bit stored in the total convergence determination register 205 in a short time of about several microseconds. The convergence determination time can be shortened while performing the convergence determination independently of the arithmetic processing.

【0460】<実施の形態43>次に、この発明の第4
3実施の形態について説明する。領域分割法による熱流
体数値解析の並列化手法では、計算領域を少なくとも要
素プロセッサ3と同数の分割領域に分け、各々の領域の
計算を各要素プロセッサ3に分担させる。一般に行われ
ているように、要素プロセッサ3間の通信方式をメッセ
ージ・パッシング式の低速なリモートアクセスとした場
合、要素プロセッサ3の処理量の違いにより、要素プロ
セッサ3に担当させる格子点をほぼ同一にして計算付加
を均一化することである程度は対処できるが、分割領域
内に不安定点が存在する場合には、収束解を得るまでに
より多くの繰り返し演算が要求され、これが原因で要素
プロセッサ3の処理量が増大する。そこで、通信同期待
ちによるレイテンシーを完全に排除する非同期通信方式
でマルチプロセッサ・システムを構成し、実装する格子
点数を要素プロセッサ3毎に変えることで上記問題を解
決する。
<Embodiment 43> Next, a fourth embodiment of the present invention will be described.
The third embodiment will be described. In the parallel method of thermofluid numerical analysis by the area division method, the calculation area is divided into at least the same number of divided areas as the element processors 3, and each element processor 3 is responsible for the calculation of each area. As is generally done, when the communication method between the element processors 3 is a message passing type low-speed remote access, the lattice points assigned to the element processors 3 are substantially the same due to the difference in the processing amount of the element processors 3. This can be dealt with to some extent by making the calculation addition uniform, but when an unstable point exists in the divided area, more iterative calculations are required until a convergent solution is obtained, which causes the element processor 3 to The throughput increases. Therefore, the above problem is solved by configuring a multiprocessor system by an asynchronous communication system that completely eliminates the latency due to communication synchronization wait and changing the number of lattice points to be mounted for each element processor 3.

【0461】図78は解析不安定点を含む計算領域の分
割形態を示したものである。図78において、213は
解析に用いる全計算領域、214は各要素プロセッサ3
がそれぞれ担当する分割領域、215は通常の格子点、
216は物理量が時間的に変化する等の不安定要因が存
在する解析不安定点である。解析が不安定になる要因と
しては、例えば、速度変化あるいは温度変化の激しい
点、渦中の点、非定常に物理量が変動する点、移動物体
あるいは移動境界の近傍点、旋回流中の点、角等の特異
点、熱の発生点、流体等の流入・流出点、等やその近傍
の点である。
FIG. 78 shows the division form of the calculation area including the analysis instability point. In FIG. 78, 213 is the total calculation area used for analysis, 214 is each element processor 3
Are divided areas, 215 are normal grid points,
Reference numeral 216 is an analysis instability point in which there are unstable factors such as a physical quantity changing with time. Factors that make the analysis unstable are, for example, points with rapid velocity changes or temperature changes, points in vortices, points at which physical quantities fluctuate unsteadily, points near moving objects or boundaries, points in swirling flow, and angles. These are singular points, etc., heat generation points, inflow / outflow points of fluids, etc., and points in the vicinity thereof.

【0462】次に動作について説明する。解析不安定点
216を含む分割領域14を担当する要素プロセッサ3
では、解析不安定点216の不安定性が分割領域214
内の全格子点に波及して空間的な収束解を得るまでの反
復回数が増大する。そこで、図に示したように解析不安
定点216を含む分割領域の格子点数をその他の解析不
安定点216を含まない分割領域214の格子点数より
少なくする。すると、繰り返し回数の増大に伴う処理量
の増大を、格子点数を減らすことで相殺することができ
る。さらに、非同期通信方式を行うことにより、解析不
安定点216を含む分割領域214の計算を安定な分割
領域214よりも先行させることが可能である。以上の
ように、非同期通信方式と格子点の不等分配とを併用す
ることにより、計算領域中に不安定領域が含まれる場合
であっても収束演算を高速化することができる。
Next, the operation will be described. The element processor 3 in charge of the divided area 14 including the analysis unstable point 216
Then, the instability of the analysis instability point 216 is due to the divided region 214.
The number of iterations is increased until it reaches all the lattice points in and obtains a spatially convergent solution. Therefore, as shown in the figure, the number of grid points in the divided area including the analysis unstable point 216 is made smaller than the number of grid points in the divided area 214 not including the other analysis unstable points 216. Then, the increase in the processing amount due to the increase in the number of repetitions can be offset by reducing the number of grid points. Furthermore, by performing the asynchronous communication method, it is possible to cause the calculation of the divided area 214 including the analysis instability point 216 to precede the stable divided area 214. As described above, by using the asynchronous communication method and the unequal distribution of grid points together, the convergence operation can be speeded up even when the calculation area includes an unstable area.

【0463】<実施の形態44>次に、この発明の第4
4実施の形態について説明する。第1実施の形態ないし
第5実施の形態において説明した要素プロセッサ3内で
使用される演算回路は、要素プロセッサ3内に設けられ
たクロックに基づく同期方式がほとんどである。これ
は、現在の技術力では、回路中の素子の反応時間(素子
遅延)>チップ内の情報伝達に伴う遅延(配線遅延)の
関係が成り立つためである。
<Embodiment 44> Next, a fourth embodiment of the present invention will be described.
Four embodiments will be described. Most of the arithmetic circuits used in the element processor 3 described in the first to fifth embodiments have a synchronization system based on a clock provided in the element processor 3. This is because with the current technical strength, the relationship of reaction time (element delay) of elements in the circuit> delay (wiring delay) associated with information transmission in the chip is established.

【0464】ところが、近年では超高速素子技術が急速
に進歩し、シリコン半導体素子では10ps,化合物半導
体素子では5ps,ジョセフソン素子では1psレベルの素
子遅延で動作が可能となっている。さらに、VLSI技
術の進歩に伴い、チップ寸法は15mm×15mmまで拡大
し、さらに実装可能な素子数が論理LSIで300万個
にまで達しようとしている。このようなピコ秒LSIが
実現されれば、素子への入力に対して処理結果が出力さ
れるまでの時間(素子遅延)が減少するのに対し、従来
まで問題にされていなかったチップ内の配線を情報が通
過するのに掛かる時間(配線遅延)が無視できなくな
る。もしも、1ピコ秒の素子遅延を持つ素子によってチ
ップを構成すると、チップ全体を単一クロックでの動作
は、最大でも0.3mm×0.3mmのチップ面積までしか
保証されない。そこで、チップ内の動作をクロックで同
期させないプロセッサ内非同期方式に基づく回路設計を
行い、要素プロセッサの処理能力を大幅に向上させるこ
とが可能である。さらに、非同期システム設計では、後
述する〜等の利点が挙げられ、要素プロセッサ3の
ロバスト性、高速性を向上することができ、ひいては熱
流体解析の高速化を達成することが可能である。信号
遷移の因果関係に従い素子遅延の大小に係わらず正常動
作が可能になり、高速性を達成できる。情報処理装置
の電圧変動、温度環境変化等の外的擾乱に対してもタイ
ミング変動がなくなり、高信頼性を達成できる。タイ
ミング調整が不要になり、設計が容易になる。クロッ
ク発生のための電力が不要になり、低電力消費の情報処
理装置を得ることができる。
However, in recent years, ultra-high-speed element technology has been rapidly advanced, and it is possible to operate with an element delay of 10 ps for silicon semiconductor elements, 5 ps for compound semiconductor elements, and 1 ps level for Josephson elements. Further, with the progress of VLSI technology, the chip size has been expanded to 15 mm × 15 mm, and the number of mountable elements is about to reach 3 million in logic LSI. If such a picosecond LSI is realized, the time (element delay) until the processing result is output in response to the input to the element is reduced, whereas in the chip which has not been a problem until now, The time taken for information to pass through the wiring (wiring delay) cannot be ignored. If the chip is composed of elements having an element delay of 1 picosecond, the operation of the entire chip with a single clock can be guaranteed only up to a chip area of 0.3 mm × 0.3 mm. Therefore, it is possible to significantly improve the processing capability of the element processor by designing a circuit based on an in-processor asynchronous system that does not synchronize the operation in the chip with a clock. Furthermore, in the asynchronous system design, advantages such as (1) to (3) described later can be cited, and the robustness and high speed of the element processor 3 can be improved, and in turn, it is possible to speed up the thermofluid analysis. According to the causal relation of signal transition, normal operation is possible regardless of the size of element delay, and high speed can be achieved. Timing fluctuations are eliminated even with external disturbances such as voltage fluctuations and temperature environment changes of the information processing apparatus, and high reliability can be achieved. Timing adjustment is not required and design becomes easy. Electric power for clock generation becomes unnecessary, and an information processing device with low power consumption can be obtained.

【0465】このような特徴を持つ非同期式回路を要素
プロセッサ3内の回路に使用することができる。そこ
で、以下に非同期式回路の基本構成について説明する。
非同期式システムは、互いに信号をやり取りする非同期
式回路で構成された機能モジュールの集合体である。あ
る機能モジュールAから機能モジュールBに処理要求が
発生した場合、モジュールAからモジュールBへの処理
要求を示す『要求』という要求信号と、モジュールBか
らモジュールAへの処理終了通知を示す『応答』という
応答信号の2つの信号の受け渡しで、機能モジュール
A,B間における一つの処理要求に対する動作が完了す
る。ところが、非同期式では、同期クロックが存在しな
いため、これらの要求信号と応答信号の到着タイミング
を知らせる工夫が必要となる。まず、制御信号について
は、「有効」を「1」、「無効」を「0」と定義すれ
ば、0→1あるいは1→0の遷移そのものが要求あるい
は応答のタイミングを表している。問題となるのは、や
り取りする信号がデータ信号の場合である。通常、デー
タ信号は1線式であり、2値表現しかできないため、要
求・応答のタイミングを記述できない。そこで、非同期
式回路で構成された複数の機能モジュール間のデータ信
号のやり取りには、例えば、1ビット情報を2本の信号
線で表現する2線式データを用いる。2線式データ表現
には、2線2相方式、2線遷移方式、パリティ交番方式
等があるが、中でも2線2相方式は汎用性が高く、回路
構成も単純化できるため、以下では2線2相方式のデー
タ信号表現を用いる場合について説明する。
The asynchronous circuit having such characteristics can be used as a circuit in the element processor 3. Therefore, the basic configuration of the asynchronous circuit will be described below.
An asynchronous system is a group of functional modules composed of asynchronous circuits that exchange signals with each other. When a processing request is issued from the functional module A to the functional module B, a request signal "request" indicating a processing request from the module A to the module B and a "response" indicating a processing end notification from the module B to the module A By passing the two response signals, the operation for one processing request between the functional modules A and B is completed. However, in the asynchronous system, since there is no synchronous clock, it is necessary to devise to notify the arrival timing of these request signal and response signal. First, regarding the control signal, if "valid" is defined as "1" and "invalid" is defined as "0", the transition itself of 0 → 1 or 1 → 0 represents the timing of request or response. The problem arises when the signals to be exchanged are data signals. Normally, the data signal is a one-line type and can be expressed only in binary, so the timing of request / response cannot be described. Therefore, for exchanging a data signal between a plurality of functional modules configured by asynchronous circuits, for example, 2-wire type data that expresses 1-bit information with two signal lines is used. The 2-wire data representation includes a 2-wire 2-phase method, a 2-wire transition method, a parity alternation method, etc. Among them, the 2-wire 2-phase method has high versatility and can be simplified in circuit configuration. The case of using the data signal representation of the line two-phase method will be described.

【0466】2線2相方式のデータ表現では、1ビット
データDを2線信号(d1,d0)で数40のように表
現する。
In the 2-line 2-phase data representation, the 1-bit data D is represented by a 2-line signal (d1, d0) as shown in Formula 40.

【0467】[0467]

【数40】 [Formula 40]

【0468】例えば、「1」を転送するには、休止相
(0,0)を(1,0)に変え、処理終了後次のデータ
転送に備えるためにスペーサ状態(0,0)にリセット
するという一連の動作を行う。
For example, to transfer "1", the idle phase (0,0) is changed to (1,0), and after the processing is completed, the spacer state (0,0) is reset to prepare for the next data transfer. Performs a series of operations.

【0469】次に、この2線2相式データ表現に基づく
データ転送経路を考える。図79は、2線2相式データ
表現に基づくレジスタ間データ転送経路モデルを示すブ
ロック図である。図79において、217は制御信号を
転送するための制御信号バス、218は要求・応答処理
が終了後に2線式信号をリセットする2線2相制御モジ
ュール、219は信号を一時的に記憶するためのレジス
タ、220は2線式論理回路、221は2線式データバ
スである。ただし、図中の2線式論理回路220は2線
式論理に基づいて構成された基本論理素子より成る。
Next, consider the data transfer path based on this 2-wire 2-phase data representation. FIG. 79 is a block diagram showing an inter-register data transfer path model based on the two-wire two-phase data representation. In FIG. 79, 217 is a control signal bus for transferring control signals, 218 is a two-wire two-phase control module for resetting the two-wire type signals after request / response processing is completed, and 219 is for temporarily storing the signals. , 220 is a two-wire type logic circuit, and 221 is a two-line type data bus. However, the two-wire type logic circuit 220 in the drawing is composed of basic logic elements configured based on the two-wire type logic.

【0470】上位からの処理終了情報を受けて2線2相
制御モジュール218が要求を発生する(0→1遷
移)。この要求を受けて2線式データ信号が転送元レジ
スタ219から読み出される。転送元レジスタ219か
ら読み出されたデータは、2線式データバス221を介
して2線式論理回路220に与えられ、2線式論理回路
220で処理される。さらに、2線式論理回路220で
処理されたデータは、2線式データバス221を通して
転送先レジスタ219へ書き込まれる。その後、レジス
タ219で発生した応答(0→1遷移)を受けた2線2
相式制御モジュール218が、処理終了情報を下位に転
送する。上位からの処理終了情報に続いて、データをリ
セットするために上位から要求消滅命令(1→0)が転
送され、転送元レジスタ219から論理回路220を経
て転送先レジスタ219へ至る全ての2線信号をスペー
サ状態に遷移させ、最終的に応答を消滅(1→0遷移)
させて終了する。
Upon receiving the processing end information from the upper layer, the two-wire two-phase control module 218 issues a request (0 → 1 transition). In response to this request, the 2-wire data signal is read from the transfer source register 219. The data read from the transfer source register 219 is given to the two-wire logic circuit 220 via the two-wire data bus 221, and processed by the two-wire logic circuit 220. Further, the data processed by the 2-wire type logic circuit 220 is written to the transfer destination register 219 through the 2-wire type data bus 221. After that, 2 lines 2 which received the response (0 → 1 transition) generated in the register 219
The phase control module 218 transfers the processing end information to the lower order. Following the processing end information from the upper layer, a request disappearance command (1 → 0) is transferred from the upper layer in order to reset the data, and all two lines from the transfer source register 219 to the transfer destination register 219 via the logic circuit 220 are transferred. The signal transits to the spacer state, and finally the response disappears (1 → 0 transition)
Let it finish.

【0471】図79における2線式論理回路220は、
2線式ANDゲート、ORゲート、NOTゲート等の基
本論理素子を結線して構成された回路であればどのよう
な構成の回路であってもよい。例えば、第1実施の形態
ないし第5実施の形態のいずれかに記載のプロセッシン
グユニット5全体を2線式論理回路220で実現するこ
とにより、配線遅延が素子遅延よりも大きくなった場合
でも、要素プロセッサ3内の演算処理を高速に実現する
ことが可能になる。
The 2-wire type logic circuit 220 shown in FIG.
A circuit having any configuration may be used as long as it is a circuit configured by connecting basic logic elements such as a two-wire AND gate, an OR gate, and a NOT gate. For example, even if the wiring delay becomes larger than the element delay by implementing the entire processing unit 5 according to any of the first to fifth embodiments with the two-wire logic circuit 220, the element The arithmetic processing in the processor 3 can be realized at high speed.

【0472】勿論、特定の演算列についてのみクロック
を用いない非同期式処理を適用することもでき、この場
合にも同様の効果を奏することは言うまでもない。
Of course, it is also possible to apply asynchronous processing not using a clock only to a specific operation sequence, and it goes without saying that the same effect can be obtained in this case as well.

【0473】また、前記各実施の形態を組み合わせて用
いることも可能である。
Further, it is also possible to use the above embodiments in combination.

【0474】[0474]

【発明の効果】以上のように請求項1記載の発明の情報
処理装置によれば、場を空間的に分割して得られる複数
の格子点を要素プロセッサに割り当てて計算を行わせる
情報処理装置において、隣接する要素プロセッサ間相互
でデータの通信を行うための複数のデータバスを備え、
データバスによって伝達されるデータを用いて、非同期
に、かつ独立に要素プロセッサを動作させて計算を行う
ので、要素プロセッサ間の通信時間を短縮することがで
き、情報処理装置の処理の高速化を図ることができると
いう効果がある。
As described above, according to the information processing apparatus of the first aspect of the present invention, the information processing apparatus that allocates a plurality of grid points obtained by spatially dividing the field to the element processor to perform the calculation. In, a plurality of data buses for communicating data between adjacent element processors are provided,
The data transmitted by the data bus is used to operate the element processors asynchronously and independently to perform the calculation, so that the communication time between the element processors can be shortened and the processing speed of the information processing device can be increased. The effect is that it can be achieved.

【0475】また、請求項1記載の発明の情報処理装置
によれば、隣接する要素プロセッサ間のデータの通信
を、要素プロセッサ毎に、非同期でかつ繰り返し行うの
で、隣接要素プロセッサの処理を阻害することなく、全
く非同期に処理を継続することが可能となり、隣接要素
プロセッサの演算を妨げずに通信することができるの
で、演算の高速化が図れる効果がある。
According to the information processing apparatus of the first aspect of the present invention, since the data communication between the adjacent element processors is performed asynchronously and repeatedly for each element processor, the processing of the adjacent element processors is hindered. Processing can be continued completely asynchronously without any interruption, and communication can be performed without hindering the operation of the adjacent element processor, which has the effect of speeding up the operation.

【0476】さらに、請求項1記載の発明の情報処理装
置によれば、要素プロセッサは、それぞれ、隣接する要
素プロセッサのデータメモリを直接参照できるので、容
易に、隣接する要素プロセッサのプロセッシングユニッ
ト間のデータの通信をプロセッシングユニット毎に、非
同期でかつ繰り返し行わせることができ、情報処理装置
の高速化を容易に実現できるという効果がある。
Further, according to the information processing apparatus of the present invention, each of the element processors can directly refer to the data memory of the adjacent element processor, so that the processing units of the adjacent element processors can be easily connected. Data communication can be performed asynchronously and repeatedly for each processing unit, and there is an effect that speedup of the information processing device can be easily realized.

【0477】さらにまた、請求項1記載の発明の情報処
理装置によれば、内点ビット、外点ビット及び境界条件
ビットに従ってデータフローグラフの処理を変更するこ
とができる同一の布線論理に従ったハードウェア回路を
備えるので、格子点の種類に関わらず同一の布線論理に
従ったハードウェア回路によって計算ができ、計算プロ
グラムを簡素化して情報処理装置の規模を縮小すること
ができるという効果がある。
Furthermore, according to the information processing apparatus of the present invention, the processing of the data flow graph can be changed according to the inside point bit, the outside point bit and the boundary condition bit. Since the hardware circuit is provided, the calculation can be performed by the hardware circuit according to the same wiring logic regardless of the type of grid point, and the calculation program can be simplified and the scale of the information processing device can be reduced. There is.

【0478】請求項2記載の発明の情報処理装置によれ
ば、場を空間的に分割して得られる複数の格子点を要素
プロセッサに割り当てて計算を行わせる情報処理装置に
おいて、隣接する要素プロセッサ間相互でデータの通信
を行うための複数のデータバスを備え、データバスによ
って伝達されるデータを用いて、非同期に、かつ独立に
要素プロセッサを動作させて計算を行うので、要素プロ
セッサ間の通信時間を短縮することができ、情報処理装
置の処理の高速化を図ることができるという効果があ
る。
According to the information processing apparatus of the second aspect of the present invention, in an information processing apparatus for assigning a plurality of grid points obtained by spatially dividing a field to element processors to perform calculation, adjacent element processors Since a plurality of data buses for communicating data between each other are provided and the data transmitted by the data buses are used to operate the element processors asynchronously and independently, the calculation is performed. There is an effect that the time can be shortened and the processing speed of the information processing apparatus can be increased.

【0479】また、請求項2記載の発明の情報処理装置
によれば、隣接する要素プロセッサ間のデータの通信
を、要素プロセッサ毎に、非同期でかつ繰り返し行うの
で、隣接要素プロセッサの処理を阻害することなく、全
く非同期に処理を継続することが可能となり、隣接要素
プロセッサの演算を妨げずに通信することができるの
で、演算の高速化が図れる効果がある。
According to the information processing apparatus of the second aspect of the present invention, since the data communication between the adjacent element processors is performed asynchronously and repeatedly for each element processor, the processing of the adjacent element processors is hindered. Processing can be continued completely asynchronously without any interruption, and communication can be performed without hindering the operation of the adjacent element processor, which has the effect of speeding up the operation.

【0480】さらに、請求項2記載の発明の情報処理装
置によれば、要素プロセッサは、それぞれ、隣接する要
素プロセッサのデータメモリを直接参照できるので、容
易に、隣接する要素プロセッサのプロセッシングユニッ
ト間のデータの通信をプロセッシングユニット毎に、非
同期でかつ繰り返し行わせることができ、情報処理装置
の高速化を容易に実現できるという効果がある。
Further, according to the information processing apparatus of the second aspect of the present invention, each of the element processors can directly refer to the data memory of the adjacent element processor, so that the processing units of the adjacent element processors can be easily connected. Data communication can be performed asynchronously and repeatedly for each processing unit, and there is an effect that speedup of the information processing device can be easily realized.

【0481】さらにまた、請求項2記載の発明の情報処
理装置によれば、粗ノード結合によって結ばれた要素プ
ロセッサによる計算と細ノード結合によって結ばれた要
素プロセッサによる計算を行うことによって方程式につ
いての計算を進めるので、粗ノード結合によって結ばれ
た要素プロセッサを用いた計算によって収束性を高める
とともに、細ノード結合によって結ばれた要素プロセッ
サを用いた計算によって計算の精度を維持することがで
き、精度の高い処理を高速で行えるという効果がある。
Furthermore, according to the information processing apparatus of the invention described in claim 2, the equations are calculated by performing the calculation by the element processors connected by the coarse node connection and the calculation by the element processors connected by the fine node connection. As the calculation progresses, it is possible to improve the convergence by the calculation using the element processors connected by the coarse node connection and maintain the accuracy of the calculation by the calculation using the element processors connected by the fine node connection. The effect is that high processing can be performed at high speed.

【0482】請求項3記載の発明の情報処理装置おける
計算方法によれば、場を空間的に分割して得られる複数
の格子点を要素プロセッサに割り当てて計算を行わせる
情報処理装置において、隣接する要素プロセッサ間相互
でデータの通信を行うための複数のデータバスを備え、
データバスによって伝達されるデータを用いて、非同期
に、かつ独立に要素プロセッサを動作させて計算を行う
ので、要素プロセッサ間の通信時間を短縮することがで
き、情報処理装置の処理の高速化を図ることができると
いう効果がある。
According to the calculation method of the information processing apparatus of the third aspect of the present invention, in the information processing apparatus that allocates a plurality of grid points obtained by spatially dividing a field to element processors to perform calculation, Equipped with multiple data buses to communicate data between the element processors
The data transmitted by the data bus is used to operate the element processors asynchronously and independently to perform the calculation, so that the communication time between the element processors can be shortened and the processing speed of the information processing device can be increased. The effect is that it can be achieved.

【0483】また、請求項3記載の発明の情報処理装置
における計算方法によれば、隣接する要素プロセッサ間
のデータの通信を、要素プロセッサ毎に、非同期でかつ
繰り返し行うので、隣接要素プロセッサの処理を阻害す
ることなく、全く非同期に処理を継続することが可能と
なり、隣接要素プロセッサの演算を妨げずに通信するこ
とができるので、演算の高速化が図れる効果がある。
According to the calculation method of the information processing apparatus of the third aspect of the invention, since the data communication between the adjacent element processors is performed asynchronously and repeatedly for each element processor, the processing of the adjacent element processors is performed. It is possible to continue the processing completely asynchronously without hindering the processing, and it is possible to communicate without hindering the processing of the adjacent element processors, which has the effect of speeding up the processing.

【0484】さらに、請求項3記載の発明の情報処理装
置における計算方法によれば、非同期に、かつ独立に要
素プロセッサを動作させて微分方程式の解を差分法を用
いて得るので、解析の精度を落とすことなく、情報処理
装置の処理の高速化を図ることができるという効果があ
る。
Further, according to the calculation method in the information processing apparatus of the third aspect of the invention, since the solution of the differential equation is obtained by operating the element processors asynchronously and independently and using the difference method, the accuracy of the analysis can be improved. There is an effect that the processing speed of the information processing apparatus can be increased without dropping the value.

【0485】請求項4記載の発明の情報処理装置おける
計算方法によれば、場を空間的に分割して得られる複数
の格子点を要素プロセッサに割り当てて計算を行わせる
情報処理装置において、隣接する要素プロセッサ間相互
でデータの通信を行うための複数のデータバスを備え、
データバスによって伝達されるデータを用いて、非同期
に、かつ独立に要素プロセッサを動作させて計算を行う
ので、要素プロセッサ間の通信時間を短縮することがで
き、情報処理装置の処理の高速化を図ることができると
いう効果がある。
According to the calculation method of the information processing apparatus of the fourth aspect of the present invention, in the information processing apparatus that allocates a plurality of grid points obtained by spatially dividing a field to element processors to perform calculation, Equipped with multiple data buses to communicate data between the element processors
The data transmitted by the data bus is used to operate the element processors asynchronously and independently to perform the calculation, so that the communication time between the element processors can be shortened and the processing speed of the information processing device can be increased. The effect is that it can be achieved.

【0486】また、請求項4記載の発明の情報処理装置
における計算方法によれば、隣接する要素プロセッサ間
のデータの通信を、要素プロセッサ毎に、非同期でかつ
繰り返し行うので、隣接要素プロセッサの処理を阻害す
ることなく、全く非同期に処理を継続することが可能と
なり、隣接要素プロセッサの演算を妨げずに通信するこ
とができるので、演算の高速化が図れる効果がある。
According to the calculation method in the information processing apparatus of the present invention, the data communication between the adjacent element processors is performed asynchronously and repeatedly for each element processor. It is possible to continue the processing completely asynchronously without hindering the processing, and it is possible to communicate without hindering the processing of the adjacent element processors, which has the effect of speeding up the processing.

【0487】さらに、請求項4記載の発明の情報処理装
置における計算方法によれば、要素プロセッサは、それ
ぞれ、隣接する要素プロセッサのデータメモリを直接参
照できるので、容易に、隣接する要素プロセッサのプロ
セッシングユニット間のデータの通信をプロセッシング
ユニット毎に、非同期でかつ繰り返し行わせることがで
き、情報処理装置の高速化を容易に実現できるという効
果がある。
Further, according to the calculation method in the information processing apparatus of the present invention, each element processor can directly refer to the data memory of the adjacent element processor, so that the processing of the adjacent element processor can be easily performed. Data communication between units can be performed asynchronously and repeatedly for each processing unit, and there is an effect that the speedup of the information processing device can be easily realized.

【0488】さらにまた、請求項4記載の発明の情報処
理装置における計算方法によれば、要素プロセッサには
内点ビット、外点ビット及び境界条件ビットにより処理
を変更することができる同一の計算プログラムを用いて
プロセッシングユニットが演算を行うので、格子点の種
類に関わらず同一の計算プログラムを用いて演算を行う
ことができ、計算プログラムを簡素化して情報処理装置
の規模を縮小することができるという効果がある。
Furthermore, according to the calculation method in the information processing apparatus of the present invention, the same calculation program whose processing can be changed by the internal point bit, the external point bit, and the boundary condition bit in the element processors. Since the processing unit performs the calculation by using, it is possible to perform the calculation by using the same calculation program regardless of the type of lattice points, and it is possible to simplify the calculation program and reduce the scale of the information processing device. effective.

【0489】請求項5記載の発明の情報処理装置おける
計算方法によれば、場を空間的に分割して得られる複数
の格子点を要素プロセッサに割り当てて計算を行わせる
情報処理装置において、隣接する要素プロセッサ間相互
でデータの通信を行うための複数のデータバスを備え、
データバスによって伝達されるデータを用いて、非同期
に、かつ独立に要素プロセッサを動作させて計算を行う
ので、要素プロセッサ間の通信時間を短縮することがで
き、情報処理装置の処理の高速化を図ることができると
いう効果がある。
According to the calculation method of the information processing apparatus of the fifth aspect of the present invention, in the information processing apparatus that allocates a plurality of grid points obtained by spatially dividing a field to element processors to perform calculation, Equipped with multiple data buses to communicate data between the element processors
The data transmitted by the data bus is used to operate the element processors asynchronously and independently to perform the calculation, so that the communication time between the element processors can be shortened and the processing speed of the information processing device can be increased. The effect is that it can be achieved.

【0490】また、請求項5記載の発明の情報処理装置
における計算方法によれば、隣接する要素プロセッサ間
のデータの通信を、要素プロセッサ毎に、非同期でかつ
繰り返し行うので、隣接要素プロセッサの処理を阻害す
ることなく、全く非同期に処理を継続することが可能と
なり、隣接要素プロセッサの演算を妨げずに通信するこ
とができるので、演算の高速化が図れる効果がある。
According to the calculation method in the information processing apparatus of the fifth aspect, since the data communication between the adjacent element processors is performed asynchronously and repeatedly for each element processor, the processing of the adjacent element processors is performed. It is possible to continue the processing completely asynchronously without hindering the processing, and it is possible to communicate without hindering the processing of the adjacent element processors, which has the effect of speeding up the processing.

【0491】さらに、請求項5記載の発明の情報処理装
置における計算方法によれば、要素プロセッサは、それ
ぞれ、隣接する要素プロセッサのデータメモリを直接参
照できるので、容易に、隣接する要素プロセッサのプロ
セッシングユニット間のデータの通信をプロセッシング
ユニット毎に、非同期でかつ繰り返し行わせることがで
き、情報処理装置の高速化を容易に実現できるという効
果がある。
Furthermore, according to the calculation method in the information processing apparatus of the fifth aspect, since each element processor can directly refer to the data memory of the adjacent element processor, the processing of the adjacent element processor can be easily performed. Data communication between units can be performed asynchronously and repeatedly for each processing unit, and there is an effect that the speedup of the information processing device can be easily realized.

【0492】さらにまた、請求項5記載の発明の情報処
理装置における計算方法によれば、内点ビット、外点ビ
ット及び境界条件ビットに従ってデータフローグラフの
処理を変更することができる同一の布線論理に従ったハ
ードウェア回路を備えるので、格子点の種類に関わらず
同一の布線論理に従ったハードウェア回路によって計算
ができ、計算プログラムを簡素化して情報処理装置の規
模を縮小することができるという効果がある。
Furthermore, according to the calculation method in the information processing apparatus of the fifth aspect of the present invention, the same wiring that can change the processing of the data flow graph according to the interior point bit, the exterior point bit and the boundary condition bit. Since the hardware circuit according to the logic is provided, calculation can be performed by the hardware circuit according to the same wiring logic regardless of the type of grid point, and the calculation program can be simplified and the scale of the information processing device can be reduced. The effect is that you can do it.

【0493】請求項6記載の発明の情報処理装置おける
計算方法によれば、場を空間的に分割して得られる複数
の格子点を要素プロセッサに割り当てて計算を行わせる
情報処理装置において、隣接する要素プロセッサ間相互
でデータの通信を行うための複数のデータバスを備え、
データバスによって伝達されるデータを用いて、非同期
に、かつ独立に要素プロセッサを動作させて計算を行う
ので、要素プロセッサ間の通信時間を短縮することがで
き、情報処理装置の処理の高速化を図ることができると
いう効果がある。
According to the calculation method in the information processing apparatus of the sixth aspect of the present invention, in the information processing apparatus that allocates a plurality of grid points obtained by spatially dividing the field to the element processor to perform the calculation, Equipped with multiple data buses to communicate data between the element processors
The data transmitted by the data bus is used to operate the element processors asynchronously and independently to perform the calculation, so that the communication time between the element processors can be shortened and the processing speed of the information processing device can be increased. The effect is that it can be achieved.

【0494】また、請求項6記載の発明の情報処理装置
における計算方法によれば、隣接する要素プロセッサ間
のデータの通信を、要素プロセッサ毎に、非同期でかつ
繰り返し行うので、隣接要素プロセッサの処理を阻害す
ることなく、全く非同期に処理を継続することが可能と
なり、隣接要素プロセッサの演算を妨げずに通信するこ
とができるので、演算の高速化が図れる効果がある。
Further, according to the calculation method in the information processing apparatus of the present invention, the data communication between the adjacent element processors is performed asynchronously and repeatedly for each element processor. It is possible to continue the processing completely asynchronously without hindering the processing, and it is possible to communicate without hindering the processing of the adjacent element processors, which has the effect of speeding up the processing.

【0495】さらに、請求項6記載の発明の情報処理装
置における計算方法によれば、要素プロセッサは、それ
ぞれ、隣接する要素プロセッサのデータメモリを直接参
照できるので、容易に、隣接する要素プロセッサのプロ
セッシングユニット間のデータの通信をプロセッシング
ユニット毎に、非同期でかつ繰り返し行わせることがで
き、情報処理装置の高速化を容易に実現できるという効
果がある。
Further, according to the calculation method in the information processing apparatus of the present invention, each element processor can directly refer to the data memory of the adjacent element processor, so that the processing of the adjacent element processor can be easily performed. Data communication between units can be performed asynchronously and repeatedly for each processing unit, and there is an effect that the speedup of the information processing device can be easily realized.

【0496】さらにまた、請求項6記載の発明の情報処
理装置における計算方法によれば、全ての格子点での通
信回数を平準化するので、並列化した際の効率化を図る
ことができるという効果がある。
Furthermore, according to the calculation method in the information processing apparatus of the present invention, the number of communications at all grid points is leveled, so that it is possible to improve efficiency when parallelized. effective.

【0497】請求項7記載の発明の情報処理装置おける
計算方法によれば、場を空間的に分割して得られる複数
の格子点を要素プロセッサに割り当てて計算を行わせる
情報処理装置において、隣接する要素プロセッサ間相互
でデータの通信を行うための複数のデータバスを備え、
データバスによって伝達されるデータを用いて、非同期
に、かつ独立に要素プロセッサを動作させて計算を行う
ので、要素プロセッサ間の通信時間を短縮することがで
き、情報処理装置の処理の高速化を図ることができると
いう効果がある。
According to the calculation method of the information processing apparatus of the invention described in claim 7, in the information processing apparatus for assigning a plurality of grid points obtained by spatially dividing a field to element processors to perform calculation, Equipped with multiple data buses to communicate data between the element processors
The data transmitted by the data bus is used to operate the element processors asynchronously and independently to perform the calculation, so that the communication time between the element processors can be shortened and the processing speed of the information processing device can be increased. The effect is that it can be achieved.

【0498】また、請求項7記載の発明の情報処理装置
における計算方法によれば、隣接する要素プロセッサ間
のデータの通信を、要素プロセッサ毎に、非同期でかつ
繰り返し行うので、隣接要素プロセッサの処理を阻害す
ることなく、全く非同期に処理を継続することが可能と
なり、隣接要素プロセッサの演算を妨げずに通信するこ
とができるので、演算の高速化が図れる効果がある。
According to the calculation method of the information processing apparatus of the present invention, data communication between adjacent element processors is performed asynchronously and repeatedly for each element processor. It is possible to continue the processing completely asynchronously without hindering the processing, and it is possible to communicate without hindering the processing of the adjacent element processors, which has the effect of speeding up the processing.

【0499】さらに、請求項7記載の発明の情報処理装
置における計算方法によれば、要素プロセッサは、それ
ぞれ、隣接する要素プロセッサのデータメモリを直接参
照できるので、容易に、隣接する要素プロセッサのプロ
セッシングユニット間のデータの通信をプロセッシング
ユニット毎に、非同期でかつ繰り返し行わせることがで
き、情報処理装置の高速化を容易に実現できるという効
果がある。
Furthermore, according to the calculation method in the information processing apparatus of the present invention, each element processor can directly refer to the data memory of the adjacent element processor, so that the processing of the adjacent element processor can be easily performed. Data communication between units can be performed asynchronously and repeatedly for each processing unit, and there is an effect that the speedup of the information processing device can be easily realized.

【0500】さらにまた、請求項7記載の発明の情報処
理装置における計算方法によれば、演算量が少ない格子
点についてもダミーの演算を行うことにより全ての格子
点での演算回数を平準化するので、並列化した際の効率
化を図ることができるという効果がある。
Furthermore, according to the calculation method in the information processing apparatus of the present invention, the number of calculations at all grid points is leveled by performing dummy calculation even for grid points having a small calculation amount. Therefore, there is an effect that efficiency can be improved when parallelized.

【0501】請求項8記載の発明の情報処理装置おける
計算方法によれば、場を空間的に分割して得られる複数
の格子点を要素プロセッサに割り当てて計算を行わせる
情報処理装置において、隣接する要素プロセッサ間相互
でデータの通信を行うための複数のデータバスを備え、
データバスによって伝達されるデータを用いて、非同期
に、かつ独立に要素プロセッサを動作させて計算を行う
ので、要素プロセッサ間の通信時間を短縮することがで
き、情報処理装置の処理の高速化を図ることができると
いう効果がある。
According to the calculation method of the information processing apparatus of the eighth aspect, in the information processing apparatus that allocates a plurality of grid points obtained by spatially dividing the field to the element processors to perform the calculation, Equipped with multiple data buses to communicate data between the element processors
The data transmitted by the data bus is used to operate the element processors asynchronously and independently to perform the calculation, so that the communication time between the element processors can be shortened and the processing speed of the information processing device can be increased. The effect is that it can be achieved.

【0502】また、請求項8記載の発明の情報処理装置
における計算方法によれば、隣接する要素プロセッサ間
のデータの通信を、要素プロセッサ毎に、非同期でかつ
繰り返し行うので、隣接要素プロセッサの処理を阻害す
ることなく、全く非同期に処理を継続することが可能と
なり、隣接要素プロセッサの演算を妨げずに通信するこ
とができるので、演算の高速化が図れる効果がある。
According to the calculation method in the information processing apparatus of the present invention, the data communication between the adjacent element processors is performed asynchronously and repeatedly for each element processor. It is possible to continue the processing completely asynchronously without hindering the processing, and it is possible to communicate without hindering the processing of the adjacent element processors, which has the effect of speeding up the processing.

【0503】さらに、請求項8記載の発明の情報処理装
置における計算方法によれば、要素プロセッサは、それ
ぞれ、隣接する要素プロセッサのデータメモリを直接参
照できるので、容易に、隣接する要素プロセッサのプロ
セッシングユニット間のデータの通信をプロセッシング
ユニット毎に、非同期でかつ繰り返し行わせることがで
き、情報処理装置の高速化を容易に実現できるという効
果がある。
Further, according to the calculation method in the information processing apparatus of the present invention, each element processor can directly refer to the data memory of the adjacent element processor, so that the processing of the adjacent element processor can be easily performed. Data communication between units can be performed asynchronously and repeatedly for each processing unit, and there is an effect that the speedup of the information processing device can be easily realized.

【0504】さらにまた、請求項8記載の発明の情報処
理装置における計算方法によれば、双方の要素プロセッ
サで互いに相手方から送信されたデータを時系列的に2
組もち、これらの格子点に対するデータが更新された場
合、更新されたデータが時系列的に前の組のデータと比
較して所定値以下の変位ならば相手方のデータの書換え
をしないので、要素プロセッサ間お不要な通信を省い
て、情報処理装置の処理の高速化を図ることができると
いう効果がある。
Furthermore, according to the calculation method in the information processing apparatus of the present invention, the data transmitted from each other in the two element processors are time-sequentially converted into two.
If the data for these grid points are updated, if the updated data is a displacement below the specified value compared with the data of the previous set in time series, the data of the other party will not be rewritten. There is an effect that unnecessary communication between the processors can be omitted and the processing speed of the information processing apparatus can be increased.

【0505】請求項9記載の発明の情報処理装置おける
計算方法によれば、場を空間的に分割して得られる複数
の格子点を要素プロセッサに割り当てて計算を行わせる
情報処理装置において、隣接する要素プロセッサ間相互
でデータの通信を行うための複数のデータバスを備え、
データバスによって伝達されるデータを用いて、非同期
に、かつ独立に要素プロセッサを動作させて計算を行う
ので、要素プロセッサ間の通信時間を短縮することがで
き、情報処理装置の処理の高速化を図ることができると
いう効果がある。
According to the calculation method of the information processing apparatus of the ninth aspect of the invention, in the information processing apparatus for assigning a plurality of grid points obtained by spatially dividing the field to the element processors to perform the calculation, Equipped with multiple data buses to communicate data between the element processors
The data transmitted by the data bus is used to operate the element processors asynchronously and independently to perform the calculation, so that the communication time between the element processors can be shortened and the processing speed of the information processing device can be increased. The effect is that it can be achieved.

【0506】また、請求項9記載の発明の情報処理装置
における計算方法によれば、隣接する要素プロセッサ間
のデータの通信を、要素プロセッサ毎に、非同期でかつ
繰り返し行うので、隣接要素プロセッサの処理を阻害す
ることなく、全く非同期に処理を継続することが可能と
なり、隣接要素プロセッサの演算を妨げずに通信するこ
とができるので、演算の高速化が図れる効果がある。
According to the calculation method in the information processing apparatus of the present invention, the data communication between the adjacent element processors is performed asynchronously and repeatedly for each element processor. It is possible to continue the processing completely asynchronously without hindering the processing, and it is possible to communicate without hindering the processing of the adjacent element processors, which has the effect of speeding up the processing.

【0507】さらに、請求項9記載の発明の情報処理装
置における計算方法によれば、要素プロセッサは、それ
ぞれ、隣接する要素プロセッサのデータメモリを直接参
照できるので、容易に、隣接する要素プロセッサのプロ
セッシングユニット間のデータの通信をプロセッシング
ユニット毎に、非同期でかつ繰り返し行わせることがで
き、情報処理装置の高速化を容易に実現できるという効
果がある。
Further, according to the calculation method in the information processing apparatus of the present invention, each element processor can directly refer to the data memory of the adjacent element processor, so that the processing of the adjacent element processor can be easily performed. Data communication between units can be performed asynchronously and repeatedly for each processing unit, and there is an effect that the speedup of the information processing device can be easily realized.

【0508】さらにまた、請求項9記載の発明の情報処
理装置における計算方法によれば、粗ノード結合によっ
て結ばれた要素プロセッサによる計算と細ノード結合に
よって結ばれた要素プロセッサによる計算を行うことに
よって方程式についての計算を進めるので、粗ノード結
合によって結ばれた要素プロセッサを用いた計算によっ
て収束性を高めるとともに、細ノード結合によって結ば
れた要素プロセッサを用いた計算によって計算の精度を
維持することができ、精度の高い処理を高速で行えると
いう効果がある。
Further, according to the calculation method in the information processing apparatus of the present invention, the calculation by the element processors connected by the coarse node connection and the calculation by the element processors connected by the fine node connection are performed. Since the calculation of the equation is advanced, it is possible to improve the convergence by the calculation using the element processors connected by the coarse node connection and maintain the accuracy of the calculation by the calculation using the element processors connected by the fine node connection. Therefore, there is an effect that highly accurate processing can be performed at high speed.

【図面の簡単な説明】[Brief description of drawings]

【図1】 この発明の第1実施の形態による情報処理装
置の構成を示すブロック図である。
FIG. 1 is a block diagram showing a configuration of an information processing device according to a first embodiment of the present invention.

【図2】 この発明の第2実施の形態による要素プロセ
ッサのハードウェア構成を示すブロック図である。
FIG. 2 is a block diagram showing a hardware configuration of an element processor according to a second embodiment of the present invention.

【図3】 この発明の第3実施の形態による要素プロセ
ッサのハードウェア構成を示すブロック図である。
FIG. 3 is a block diagram showing a hardware configuration of an element processor according to a third embodiment of the present invention.

【図4】 この発明の第4実施の形態による要素プロセ
ッサのハードウェア構成を示すブロック図である。
FIG. 4 is a block diagram showing a hardware configuration of an element processor according to a fourth embodiment of the present invention.

【図5】 演算処理の基本的な流れを示すデータグラフ
である。
FIG. 5 is a data graph showing a basic flow of arithmetic processing.

【図6】 この発明の第5実施の形態による2次元計算
基板を3次元的に接続して3次元計算を行うための情報
処理装置の構成を示すブロック図である。
FIG. 6 is a block diagram showing a configuration of an information processing apparatus for performing three-dimensional calculation by connecting two-dimensional calculation boards in a three-dimensional manner according to a fifth embodiment of the present invention.

【図7】 この発明の第6実施の形態による非同期計算
方式による演算アルゴリズムを示したフローチャートで
ある。
FIG. 7 is a flowchart showing a calculation algorithm by an asynchronous calculation method according to a sixth embodiment of the present invention.

【図8】 差分法に基づくコントロールボリュームを説
明するための概念図である。
FIG. 8 is a conceptual diagram for explaining a control volume based on the difference method.

【図9】 データメモリで扱われるデータの構成を示す
図である。
FIG. 9 is a diagram showing a structure of data handled in a data memory.

【図10】 非同期計算方式による演算アルゴリズムの
計算手順を示すフローチャートである。
FIG. 10 is a flowchart showing a calculation procedure of a calculation algorithm based on an asynchronous calculation method.

【図11】 非同期計算方式による演算アルゴリズムの
計算手順を示すフローチャートである。
FIG. 11 is a flowchart showing a calculation procedure of a calculation algorithm by an asynchronous calculation method.

【図12】 この発明の第7実施の形態による時間軸方
向へのパイプライン化を行うための2次元基板の構成を
示すブロック図である。
FIG. 12 is a block diagram showing a configuration of a two-dimensional substrate for performing pipeline processing in the time axis direction according to the seventh embodiment of the present invention.

【図13】 この発明の第8実施の形態における情報処
理装置の構成を示すブロック図である。
FIG. 13 is a block diagram showing a configuration of an information processing device according to an eighth embodiment of the present invention.

【図14】 この発明の第8実施の形態における情報処
理装置を構成する要素プロセッサの構成を示すブロック
図である。
FIG. 14 is a block diagram showing a configuration of an element processor constituting an information processing device according to an eighth embodiment of the present invention.

【図15】 この発明の第9実施の形態による情報処理
装置の構成を示すブロック図である。
FIG. 15 is a block diagram showing a configuration of an information processing device according to a ninth embodiment of the present invention.

【図16】 この発明の第9実施の形態による情報処理
装置を実現するための要素プロセッサの構成を示すプロ
ック図である。
FIG. 16 is a block diagram showing a configuration of an element processor for realizing an information processing device according to a ninth embodiment of the present invention.

【図17】 この発明の第10実施の形態による情報処
理装置の構成を示すブロック図である。
FIG. 17 is a block diagram showing a configuration of an information processing device according to a tenth embodiment of the present invention.

【図18】 この発明の第10実施の形態による情報処
理装置を実現するための要素プロセッサの構成を示すブ
ロック図である。
FIG. 18 is a block diagram showing a configuration of an element processor for realizing an information processing device according to a tenth embodiment of the present invention.

【図19】 この発明の第10実施の形態による情報処
理装置を実現するためのメモリの構成を示すブロック図
である。
FIG. 19 is a block diagram showing a structure of a memory for realizing an information processing device according to a tenth embodiment of the present invention.

【図20】 この発明の第11実施の形態による要素プ
ロセッサの構成を示すブロック図である。
FIG. 20 is a block diagram showing the structure of an element processor according to an eleventh embodiment of the present invention.

【図21】 この発明の第12実施の形態による要素プ
ロセッサの構成を示すブロック図である。
FIG. 21 is a block diagram showing the structure of an element processor according to a twelfth embodiment of the present invention.

【図22】 この発明の第13実施の形態によるプロセ
ッサシングユニットの構成を説明するためのシステムフ
ローチャートである。
FIG. 22 is a system flowchart for explaining the configuration of a processor unit according to the thirteenth embodiment of the present invention.

【図23】 この発明の第14実施の形態による情報処
理装置の構成を説明するためのブロック図である。
FIG. 23 is a block diagram illustrating a configuration of an information processing device according to a fourteenth embodiment of the present invention.

【図24】 この発明の第15実施の形態による情報処
理装置を実現するための要素プロセッサの構成を示すブ
ロック図である。
FIG. 24 is a block diagram showing a configuration of an element processor for realizing an information processing device according to a fifteenth embodiment of the present invention.

【図25】 この発明の第16実施の形態による情報処
理装置の構成を示すブロック図である。
FIG. 25 is a block diagram showing the structure of an information processing apparatus according to a sixteenth embodiment of the present invention.

【図26】 この発明の第17実施の形態による情報処
理装置の構成を示すブロック図である。
FIG. 26 is a block diagram showing the structure of an information processing apparatus according to the seventeenth embodiment of the present invention.

【図27】 第16及び第17実施の形態による情報処
理装置を実現するための要素プロセッサの構成を示すブ
ロック図である。
FIG. 27 is a block diagram showing a configuration of an element processor for realizing the information processing device according to the sixteenth and seventeenth embodiments.

【図28】 この発明の第18実施の形態による情報処
理装置の構成を示す概念図である。
FIG. 28 is a conceptual diagram showing the structure of the information processing apparatus according to the eighteenth embodiment of the present invention.

【図29】 この発明の第19実施の形態による情報処
理装置の構成を示す概念図である。
FIG. 29 is a conceptual diagram showing the structure of the information processing apparatus according to the nineteenth embodiment of the present invention.

【図30】 この発明の第20実施の形態による情報処
理装置の構成を示すブロック図である。
FIG. 30 is a block diagram showing the structure of an information processing device according to a twentieth embodiment of the present invention.

【図31】 この発明の第21実施の形態による情報処
理装置を説明するための格子点の状態を示す平面図であ
る。
FIG. 31 is a plan view showing the state of grid points for explaining the information processing apparatus according to the twenty-first embodiment of the present invention.

【図32】 この発明の第22実施の形態による情報処
理装置を説明するためのプログラムメモリの割り付けを
示す図である。
FIG. 32 is a diagram showing allocation of program memories for explaining the information processing apparatus according to the 22nd embodiment of the present invention.

【図33】 この発明の第23実施の形態によるダイナ
ミックデータフロー方式の情報処理装置を説明するため
のプログラムメモリの割り付けを示す図である。
FIG. 33 is a diagram showing allocation of program memories for explaining an information processing device of a dynamic data flow system according to a 23rd embodiment of the present invention.

【図34】 第23実施の形態において、カラー識別子
ごとに異なるデータメモリアドレスを得るためのカラー
獲得関数の一例を示す概念図である。
FIG. 34 is a conceptual diagram showing an example of a color acquisition function for obtaining a different data memory address for each color identifier in the twenty-third embodiment.

【図35】 カラー獲得関数を実現するための格子点の
カラー識別子割付けの一例を示す概念図である。
FIG. 35 is a conceptual diagram showing an example of color identifier allocation of lattice points for realizing a color acquisition function.

【図36】 カラー獲得関数を実現するためデータメモ
リの構成の一例を示す図である。
FIG. 36 is a diagram showing an example of a configuration of a data memory for realizing a color acquisition function.

【図37】 この発明の第24実施の形態による情報処
理装置を実現するためのデータメモリの構成を示す図で
ある。
FIG. 37 is a diagram showing the structure of a data memory for realizing the information processing apparatus according to the twenty-fourth embodiment of the present invention.

【図38】 第24実施の形態による格子間通信の手順
を示すフローチャートである。
FIG. 38 is a flowchart showing the procedure of inter-grid communication according to the twenty-fourth embodiment.

【図39】 この発明の第25実施の形態による情報処
理装置を実現するためのデータメモリの構成を示す図で
ある。
FIG. 39 is a diagram showing a structure of a data memory for realizing an information processing device according to a twenty-fifth embodiment of the present invention.

【図40】 第25実施の形態による格子間の通信手順
を示すフローチャートである。
FIG. 40 is a flowchart showing the inter-grid communication procedure according to the twenty-fifth embodiment.

【図41】 格子点ごとに通信すべき各方向のメモリ領
域を示す計算領域の概念図である。
FIG. 41 is a conceptual diagram of a calculation area showing a memory area in each direction to communicate for each grid point.

【図42】 第25実施の形態による要素プロセッサ間
の通信について説明するための図である。
FIG. 42 is a diagram for explaining communication between element processors according to the twenty-fifth embodiment.

【図43】 この発明の第26実施の形態によるダミー
通信用のデータ領域の共有化を実現するためのデータメ
モリの構成を示す図である。
FIG. 43 is a diagram showing a structure of a data memory for realizing sharing of a dummy communication data area according to a twenty sixth embodiment of the present invention.

【図44】 ダミー通信用のデータ領域の共有化を実現
する処理流れのフローチャートである。
FIG. 44 is a flowchart of a processing flow for realizing sharing of a data area for dummy communication.

【図45】 この発明の第27実施の形態による要素プ
ロセッサ間の通信形式を説明するための概念図である。
FIG. 45 is a conceptual diagram for explaining a communication format between element processors according to the 27th embodiment of the present invention.

【図46】 この発明の第28実施の形態によるプログ
ラムの単純化を説明するための格子点の配置図である。
FIG. 46 is a layout diagram of grid points for explaining the simplification of the program according to the twenty-eighth embodiment of the present invention.

【図47】 この発明の第29実施の形態による情報処
理装置の動作を説明するための格子点の関係を示す図で
ある。
FIG. 47 is a diagram showing the relationship of lattice points for explaining the operation of the information processing apparatus according to the twenty ninth embodiment of the present invention.

【図48】 この発明の第31実施の形態による情報処
理装置の構成を示すブロック図である。
FIG. 48 is a block diagram showing the structure of the information processing apparatus according to the 31st embodiment of the present invention.

【図49】 この発明の第32実施の形態による情報処
理装置の構成を示すブロック図である。
FIG. 49 is a block diagram showing the structure of the information processing apparatus according to the 32nd embodiment of the present invention.

【図50】 この発明の第33実施の形態による情報処
理装置を実現するための要素プロセッサの構成を示すブ
ロック図である。
FIG. 50 is a block diagram showing the structure of an element processor for realizing the information processing apparatus according to the 33rd embodiment of the present invention.

【図51】 この発明の第33実施の形態による情報処
理装置の構成を示すブロック図である。
FIG. 51 is a block diagram showing the structure of the information processing apparatus according to the 33rd embodiment of the present invention.

【図52】 この発明の第34実施の形態による情報処
理装置の構成を示すブロック図である。
FIG. 52 is a block diagram showing the structure of the information processing apparatus according to the 34th embodiment of the present invention.

【図53】 この発明の第35実施の形態による情報処
理装置を実現するための要素プロセッサの構成を示すブ
ロック図である。
FIG. 53 is a block diagram showing the structure of an element processor for realizing the information processing device according to the 35th embodiment of the present invention.

【図54】 この発明の第35実施の形態による情報処
理装置の構成を示すブロック図である。
FIG. 54 is a block diagram showing the structure of the information processing apparatus according to the 35th embodiment of the present invention.

【図55】 この発明の第36実施の形態による情報処
理装置の動作を説明するための終了フラグの転送経路を
示す概念図である。
FIG. 55 is a conceptual diagram showing the transfer path of the end flag for explaining the operation of the information processing apparatus according to the 36th embodiment of the present invention.

【図56】 第36実施の形態の情報処理装置の隣接格
子点への終了フラグ伝搬手順を説明するためのフローチ
ャートである。
FIG. 56 is a flowchart for explaining a procedure for propagating an end flag to an adjacent grid point in the information processing apparatus according to the 36th embodiment.

【図57】 第36実施の形態の情報処理装置の隣接格
子点への終了フラグ伝搬手順を説明するためのフローチ
ャートである。
FIG. 57 is a flowchart for explaining a procedure for propagating an end flag to an adjacent grid point in the information processing apparatus according to the 36th embodiment.

【図58】 第36実施の形態による結果データ出力に
用いられるメッセージパケットの構成を示す図である。
FIG. 58 is a diagram showing the structure of a message packet used for outputting result data according to the thirty-sixth embodiment.

【図59】 この発明の第37実施の形態による情報処
理装置の動作を説明するための終了フラグの転送経路を
示す概念図である。
FIG. 59 is a conceptual diagram showing a transfer path of an end flag for explaining the operation of the information processing apparatus according to the 37th embodiment of the present invention.

【図60】 この発明の第37実施の形態による情報処
理装置の隣接格子点への終了フラグ伝搬手順を説明する
ためのフローチャートである。
FIG. 60 is a flowchart for explaining a procedure for transmitting an end flag to an adjacent grid point in an information processing device according to a thirty-seventh embodiment of the present invention.

【図61】 この発明の第37実施の形態による情報処
理装置の終了フラグ転送の起点となっている要素プロセ
ッサの終了フラグ送出のための手順を示すフローチャー
トである。
FIG. 61 is a flowchart showing the procedure for transmitting the end flag of the element processor which is the starting point of the end flag transfer of the information processing apparatus according to the 37th embodiment of the present invention.

【図62】 この発明の第38実施の形態による情報処
理装置の隣接格子点への終了フラグ伝搬手順を説明する
ためのフローチャートである。
FIG. 62 is a flowchart for explaining a procedure for propagating an end flag to an adjacent grid point in an information processing apparatus according to the 38th embodiment of the present invention.

【図63】 この発明の第38実施の形態による情報処
理装置の終了フラグ転送の起点となっている要素プロセ
ッサの終了フラグ送出のための手順を示すフローチャー
トである。
FIG. 63 is a flow chart showing the procedure for transmitting the end flag of the element processor which is the starting point of the end flag transfer of the information processing apparatus according to the thirty-eighth embodiment of the present invention.

【図64】 この発明の第38実施の形態による情報処
理装置の格子点における処理調停の手順を示すフローチ
ャートである。
FIG. 64 is a flowchart showing the procedure of processing arbitration at lattice points in an information processing apparatus according to the 38th embodiment of the present invention.

【図65】 第39実施の形態の情報処理装置の隣接格
子点への終了フラグ伝搬手順を説明するためのフローチ
ャートである。
FIG. 65 is a flowchart for explaining a procedure of propagating an end flag to an adjacent grid point in the information processing apparatus according to the 39th embodiment.

【図66】 第39実施の形態の情報処理装置の隣接格
子点への終了フラグ伝搬手順を説明するためのフローチ
ャートである。
FIG. 66 is a flowchart for explaining a procedure for transmitting an end flag to an adjacent grid point in the information processing apparatus according to the 39th embodiment.

【図67】 この発明の第40実施の形態による情報処
理装置の収束判定の手順を示すフローチャートである。
FIG. 67 is a flow chart showing the procedure of convergence determination of the information processing device according to the fortieth embodiment of the present invention.

【図68】 従来のマルチプロセッサを使用した微分方
程式求解のためのシステムの構成を示すブロック図であ
る。
FIG. 68 is a block diagram showing a configuration of a system for solving a differential equation using a conventional multiprocessor.

【図69】 従来の偏微分方程式求解法を用いた場合の
並列化効率を示すグラフである。
FIG. 69 is a graph showing parallelization efficiency when a conventional partial differential equation solving method is used.

【図70】 SIMPLE法による流体数値解析の計算
手順を示すフローチャートである。
FIG. 70 is a flowchart showing a calculation procedure of a fluid numerical analysis by the SIMPLE method.

【図71】 この発明の第41実施の形態による入出力
制御部とデータメモリとで構成されたネットワークの単
位を説明するためのブロック図である。
71 is a block diagram illustrating a unit of a network including an input / output control unit and a data memory according to the 41st embodiment of the present invention. FIG.

【図72】 この発明の第41実施の形態による入出力
制御部とデータメモリとで構成されたネットワークの他
の単位を説明するためのブロック図である。
72 is a block diagram for explaining another unit of the network configured of the input / output control unit and the data memory according to the 41st embodiment of the present invention. FIG.

【図73】 この発明の第41実施の形態による入出力
制御部とデータメモリとで構成された第1のネットワー
ク構成を説明するためのブロック図である。
FIG. 73 is a block diagram for explaining a first network configuration including an input / output control unit and a data memory according to the 41st embodiment of the present invention.

【図74】 この発明の第41実施の形態による入出力
制御部とデータメモリとで構成された第2のネットワー
クを説明するためのブロック図である。
FIG. 74 is a block diagram for explaining a second network including an input / output control unit and a data memory according to the 41st embodiment of the present invention.

【図75】 この発明の第41実施の形態による入出力
制御部とデータメモリとで構成された第3のネットワー
ク構成を説明するためのブロック図である。
FIG. 75 is a block diagram illustrating a third network configuration including an input / output control unit and a data memory according to the 41st embodiment of the present invention.

【図76】 この発明の第41実施の形態による入出力
制御部とデータメモリとで構成された第4のネットワー
ク構成を説明するためのブロック図である。
FIG. 76 is a block diagram illustrating a fourth network configuration including an input / output control unit and a data memory according to the 41st embodiment of the present invention.

【図77】 この発明の第42実施の形態による収束判
定装置の構成の概略を示す概念図である。
FIG. 77 is a conceptual diagram showing an outline of the configuration of a convergence determination device according to a forty-second embodiment of the present invention.

【図78】 この発明の第43実施の形態による解析不
安定点を含む計算領域の分割形態を示す概念図である。
FIG. 78 is a conceptual diagram showing a division form of a calculation region including an analysis instability point according to the 43rd embodiment of the present invention.

【図79】 この発明の第44実施の形態によるレジス
タ間データ転送経路モデルを示すブロック図である。
FIG. 79 is a block diagram showing an inter-register data transfer path model according to the 44th embodiment of the present invention.

【符号の説明】[Explanation of symbols]

1 ホストコンピュータ、2 情報処理装置、3,3a
〜3t 要素プロセッサ、4 ネットワーク、5 プロ
セッシングユニット、6 メモリ部、7,203 要素
プロセッサ間コネクション、8,200 データメモ
リ、9 プロセッサ内データバス、10 浮動小数点計
算機、11 プログラムメモリ、12 機能モジュー
ル、13 データフローグラフ、14 演算器、15
データ線、16 演算ノード、17 アーク、18 2
次元計算基板、20 ナビエ・ストークスの運動方程式
を解くルーチン群、21 圧力補正式を解くルーチン
群、22速度・圧力の修正を行うルーチン群、23 非
線形性収束のための反復サイクル、24 時間進行のた
めの計算サイクル、25 格子点毎に割り当てられた要
素プロセッサ、26 コントロールボリューム、27
格子点(P)、28 隣接格子点(E)、29 隣接格
子点(W)、30 隣接格子点(N)、31 隣接格子
点(S)、32 一格子点分のパーティション、65
時刻n−1用2次元計算基板、66 時刻n用2次元計
算基板、67 時刻n+1用2次元計算基板、71,2
01 入出力制御部、76 メモリ、73,75,9
0,202データバス、76a マルチポートメモリ、
79 2ポートメモリ、80,204 バッファ機構、
83 マッチングメモリ、84 パイプライン、85
乗算器、86,87 加算器、88,89 データ線、
91 I/Oユニット、92出力データバス、93 出
力用I/Oユニット、94 出力データバス、95デー
タ出力制御部、96 シリアルデータバス、97 ポス
ト処理ユニット、98 画像出力データバス、99 デ
ィスプレイ、101 ネットワーク、104 行方向計
算情報バス、105 列方向計算情報バス、106 内
部計算情報バス、107 出力情報加工部、108 出
力情報バス、109 出力加工情報バス、120 座標
変換ユニット、125 境界上の格子点、126内部の
格子点、137 仮想格子点、180 収束判定ユニッ
ト、181 収束フラグ情報バス、182 収束情報バ
ス、183 収束判定部、184 内部情報フラグバ
ス、185 内部計算情報バス、186 終了情報バ
ス、205 収束判定ビット用レジスタ、206 収束
判定ビット線、208 収束情報信号線、209Nチャ
ネルMOSトランジスタ、210 抵抗。
1 host computer, 2 information processing device, 3, 3a
3t element processor, 4 network, 5 processing unit, 6 memory unit, 7,203 element processor connection, 8,200 data memory, 9 processor data bus, 10 floating point computer, 11 program memory, 12 function module, 13 Data flow graph, 14 calculator, 15
Data line, 16 operation nodes, 17 arcs, 18 2
Dimensional calculation board, 20 Routines for solving Navier-Stokes equation of motion, 21 Routines for solving pressure correction formulas, 22 Routines for correcting velocity / pressure, 23 Iterative cycles for convergence of non-linearity, 24 hours progress Calculation cycle, 25 element processors assigned to each grid point, 26 control volume, 27
Lattice point (P), 28 Adjacent lattice point (E), 29 Adjacent lattice point (W), 30 Adjacent lattice point (N), 31 Adjacent lattice point (S), 32 Partition for one lattice point, 65
Two-dimensional calculation board for time n-1, 66 two-dimensional calculation board for time n, 67 two-dimensional calculation board for time n + 1, 71, 2
01 Input / output control unit, 76 memory, 73, 75, 9
0,202 data bus, 76a multi-port memory,
79 2-port memory, 80,204 buffer mechanism,
83 Matching Memory, 84 Pipeline, 85
Multiplier, 86,87 adder, 88,89 data line,
91 I / O unit, 92 output data bus, 93 output I / O unit, 94 output data bus, 95 data output controller, 96 serial data bus, 97 post processing unit, 98 image output data bus, 99 display, 101 Network, 104 row direction calculation information bus, 105 column direction calculation information bus, 106 internal calculation information bus, 107 output information processing unit, 108 output information bus, 109 output processing information bus, 120 coordinate conversion unit, 125 grid points on boundary , 126 internal grid points, 137 virtual grid points, 180 convergence determination unit, 181 convergence flag information bus, 182 convergence information bus, 183 convergence determination unit, 184 internal information flag bus, 185 internal calculation information bus, 186 end information bus, 205 Convergence judgment bit register, 206 Convergence judgment Tsu DOO line, 208 convergence information signal lines, 209N-channel MOS transistor 210 resistor.

───────────────────────────────────────────────────── フロントページの続き (72)発明者 坪田 浩乃 東京都千代田区丸の内二丁目2番3号 三菱電機株式会社内 (72)発明者 小守 伸史 東京都千代田区丸の内二丁目2番3号 三菱電機株式会社内 (72)発明者 中島 伸治 東京都千代田区丸の内二丁目2番3号 三菱電機株式会社内 (72)発明者 寺田 浩詔 大阪府吹田市山田西三丁目52番千里一条 池B−803 (72)発明者 岩田 誠 大阪府高槻市日吉台一番町3−16 (72)発明者 山口 克人 兵庫県西宮市上之町22−14 (72)発明者 大西 潤治 大阪府吹田市山田西3−52 A202 (72)発明者 近藤 明 兵庫県川西市萩原3−1−12 (56)参考文献 特開 平5−324589(JP,A) 特開 平5−233556(JP,A) 特開 平2−195472(JP,A) 特開 平5−276181(JP,A) 特開 平4−40525(JP,A) 特開 平3−241452(JP,A) 特開 平5−181895(JP,A) 特開 平4−281582(JP,A) 特開 平4−289954(JP,A) 特開 平5−298398(JP,A) 特開 平4−338873(JP,A) 特開 平4−281549(JP,A) 特開 平3−102561(JP,A) 特開 平1−253059(JP,A) 特開 昭61−118859(JP,A) 特開 昭63−192153(JP,A) 特開 昭61−256466(JP,A) 特開 昭63−95568(JP,A) 特開 昭58−146952(JP,A) 特開 昭61−120253(JP,A) 特開 昭60−173636(JP,A) 特表 昭63−503099(JP,A) Toshiyuki Tamura 他,A Data−Driven Ar chitecture for Dis tributed Parallel Processing,IEEE In ternational Confer ence on Computer D esign: VLSI in Com puters and Process ors,米国,1991年,p.218−224 島野健仁郎、阿荒川忠一,領域分割を 用いた並列計算手法による非圧縮性流れ の数値解析,日本機械学会論文誌,日 本,1993年,B編 第59巻 第567号, p3340−3346 加納健 他,並列計算機Cenju上 の有限要素法による非線形変形解析,情 報処理学会誌,日本,1993年,Vol. 34 No.4,p708−719 Hidehiro Takata 他,A 100−Mega−Acess per Second Matchin g Memory for a Dat a−Driven Microproc essor,IEEE JOURNAL OF SOLID−STATE CI RCUITS,米国,1990年,VOL. 25, NO.1,p95−99 岩田誠 他,動的データ駆動型処理シ ステム Qv−xの視覚的評価支援環 境,情報処理学会研究報告,日本,1994 年,VOL.94 No.106 (94−O S−67),p57−64 田村俊之 他,データ駆動型プロセッ サRAPIDのソフトウェア開発環境, 情報処理学会研究報告,日本,1994年, Vol94 No.106 (94−OS− 67),p169−174 (58)調査した分野(Int.Cl.7,DB名) G06F 15/80 G06F 15/16 - 15/177 G06F 17/13 ─────────────────────────────────────────────────── ─── Continuation of the front page (72) Hirono Tsubota 2-3 2-3 Marunouchi, Chiyoda-ku, Tokyo Mitsubishi Electric Corporation (72) 2-3-2 Marunouchi Marunouchi, Chiyoda-ku, Tokyo Mitsubishi Electric Co., Ltd. (72) Inventor Shinji Nakajima 2-3-3 Marunouchi, Chiyoda-ku, Tokyo Mitsubishi Electric Co., Ltd. (72) Inventor Kosuke Terada 3-52, Yamada Nishi, Suita City, Osaka Senri Ichijo Ike B −803 (72) Inventor Makoto Iwata 3-16 Hiyoshidai Ichibancho, Takatsuki City, Osaka Prefecture (72) Inventor Katsuto Yamaguchi 22-14 Uenomachi, Nishinomiya City, Hyogo Prefecture (72) Inventor Junji Onishi Suita City, Osaka Prefecture Yamada Nishi 3-52 A202 (72) Inventor Akira Kondo 3-1-12 Hagiwara, Kawanishi-shi, Hyogo (56) Reference JP-A-5-324589 (JP, A) JP-A-5-233556 (JP, A) JP-A-2-195472 (J , A) JP 5-276181 (JP, A) JP 4-40525 (JP, A) JP 3-241452 (JP, A) JP 5-181895 (JP, A) JP 4-281582 (JP, A) JP 4-289954 (JP, A) JP 5-298398 (JP, A) JP 4-338873 (JP, A) JP 4-281549 (JP, A) JP-A-3-102561 (JP, A) JP-A-1-253059 (JP, A) JP-A-61-118859 (JP, A) JP-A-63-192153 (JP, A) JP-A-61 -256466 (JP, A) JP 63-95568 (JP, A) JP 58-146952 (JP, A) JP 61-120253 (JP, A) JP 60-173636 (JP, A) ) Tokushu 63-503099 (JP, A) Toshiyuki Tamura et al., A Data-Driven architecture for Distributed Parallel Processing, IEEE Inte national Confer ence on Computer D esign: VLSI in Com puters and Process ors, the United States, 1991, p. 218-224 Kennorou Shimano, Chuichi Arakawa, Numerical analysis of incompressible flow by parallel computation method using domain decomposition, Journal of Japan Society of Mechanical Engineers, Japan, 1993, Vol. 59, No. 567, p3340. −3346 Ken Kano et al., Nonlinear deformation analysis by finite element method on parallel computer Cenju, Journal of Information Processing, Japan, 1993, Vol. 4, p708-719 Hidehiro Takata et al., A 100-Mega-Access per Second Matching memory fora Data-Driven Microproc., 1990, UJORNAL OFS., IEEE JORNAL OFS SOL. 1, p95-99 Makoto Iwata et al., Dynamic Data Driven Processing System Qv-x Visual Evaluation Support Environment, IPSJ Research Report, Japan, 1994, VOL. 94 No. 106 (94-OS-67), p57-64 Toshiyuki Tamura et al., Software Development Environment of Data Driven Processor RAPID, Research Report of Information Processing Society of Japan, Japan, 1994, Vol94 No. 106 (94-OS-67), p169-174 (58) Fields investigated (Int.Cl. 7 , DB name) G06F 15/80 G06F 15/16-15/177 G06F 17/13

Claims (9)

(57)【特許請求の範囲】(57) [Claims] 【請求項1】 複数の要素プロセッサと、互いに隣接す
る前記要素プロセッサ間を繋ぐ複数のデータバスとを備
え、所定の方程式で記述できる場の支配方程式を求解す
る際に用いる格子状に離散化された計算空間を複数の領
域に分割し、前記複数の領域のそれぞれごとに前記要素
プロセッサを割り当てて、並列的にかつ反復的に演算を
行わせる情報処理装置であって、 一の前記要素プロセッサは、反復的な演算の過程におい
て、隣接する他の前記要素プロセッサにおける演算の過
程に拘わらず、互いに隣接する前記領域同士の境界部分
の格子点のデータを更新し、 前記他の要素プロセッサは、前記一の要素プロセッサに
係る前記境界部分の前記格子点の前記データが前記一の
要素プロセッサによって更新されたか否かに拘わらず、
前記一の要素プロセッサに係る前記境界部分の前記格子
点の前記データを前記データバスを介して参照しつつ、
反復的な演算を行い、 前記要素プロセッサは、演算を実行するプロセッシング
ユニット及び演算に関する各種データを記憶するための
データメモリを有し、 前記一の要素プロセッサは、前記境界部分の前記格子点
の前記データを自己の前記データメモリに書き込み、 前記他の要素プロセッサは、前記一の要素プロセッサの
前記データメモリに記憶されている前記境界部分の前記
格子点の前記データを参照し、 前記プロセッシングユニットは、前記格子点の全てに対
し前記格子点の存在する位置が前記場の中の計算領域の
内部か、あるいは前記計算領域内の物体の内部か外部か
を示す内点ビット及び外点ビットを、さらに前記計算領
域境界に位置する前記格子点に対して境界条件の情報を
与える境界条件ビットを、前記要素プロセッサの前記デ
ータメモリにロードしておき、前記内点ビット、前記外
点ビット及び前記境界条件ビットに従ってデータフロー
グラフの処理を変更することができる同一の布線論理に
従ったハードウェア回路をさらに備える、情報処理装
置。
1. A plurality of element processors, and a plurality of data buses connecting between the element processors adjacent to each other, wherein the element processors are discretized into a lattice shape for use in solving a field governing equation that can be described by a predetermined equation. An information processing device that divides the calculation space into a plurality of areas, allocates the element processors to each of the plurality of areas, and performs operations in parallel and iteratively, wherein one element processor is , In the process of repetitive calculation, regardless of the process of calculation in the other adjacent element processors, update the data of the grid point of the boundary portion between the areas adjacent to each other, the other element processor, Regardless of whether or not the data of the grid point of the boundary portion related to one element processor is updated by the one element processor,
While referring to the data of the grid points of the boundary portion according to the one element processor via the data bus,
The iterative operation is performed, the element processor has a processing unit for executing the operation, and a data memory for storing various data relating to the operation, and the one element processor is the lattice point of the boundary portion. Writing data to the data memory of its own, the other element processor refers to the data of the grid point of the boundary portion stored in the data memory of the one element processor, the processing unit, An inside point bit and an outside point bit indicating whether the position where the grid point exists for all of the grid points is inside the calculation area in the field, or inside or outside the object in the calculation area, and Boundary condition bits that give information on boundary conditions to the grid points located at the boundary of the calculation area are set to the element processor of the element processor. Information further comprising a hardware circuit according to the same wiring logic, which can be loaded into a data memory and change the processing of the data flow graph according to the inside point bit, the outside point bit and the boundary condition bit. Processing equipment.
【請求項2】 複数の要素プロセッサと、互いに隣接す
る前記要素プロセッサ間を繋ぐ複数のデータバスとを備
え、所定の方程式で記述できる場の支配方程式を求解す
る際に用いる格子状に離散化された計算空間を複数の領
域に分割し、前記複数の領域のそれぞれごとに前記要素
プロセッサを割り当てて、並列的にかつ反復的に演算を
行わせる情報処理装置であって、 一の前記要素プロセッサは、反復的な演算の過程におい
て、隣接する他の前記要素プロセッサにおける演算の過
程に拘わらず、互いに隣接する前記領域同士の境界部分
の格子点のデータを更新し、 前記他の要素プロセッサは、前記一の要素プロセッサに
係る前記境界部分の前記格子点の前記データが前記一の
要素プロセッサによって更新されたか否かに拘わらず、
前記一の要素プロセッサに係る前記境界部分の前記格子
点の前記データを前記データバスを介して参照しつつ、
反復的な演算を行い、 前記要素プロセッサは、演算を実行するプロセッシング
ユニット及び演算に関する各種データを記憶するための
データメモリを有し、 前記一の要素プロセッサは、前記境界部分の前記格子点
の前記データを自己の前記データメモリに書き込み、 前記他の要素プロセッサは、前記一の要素プロセッサの
前記データメモリに記憶されている前記境界部分の前記
格子点の前記データを参照し、 隣接する前記要素プロセッサ同士を結合した細ノード結
合と、一つ以上の前記要素プロセッサを飛び越して前記
要素プロセッサ同士を粗ノード結合コネクションで結合
した粗ノード結合とを有することを特徴とする、情報処
理装置。
2. A plurality of element processors and a plurality of data buses connecting between the element processors adjacent to each other, which are discretized into a lattice shape used when solving a field governing equation that can be described by a predetermined equation. An information processing device that divides the calculation space into a plurality of areas, allocates the element processors to each of the plurality of areas, and performs operations in parallel and iteratively, wherein one element processor is , In the process of repetitive calculation, regardless of the process of calculation in the other adjacent element processors, update the data of the grid point of the boundary portion between the areas adjacent to each other, the other element processor, Regardless of whether or not the data of the grid point of the boundary portion related to one element processor is updated by the one element processor,
While referring to the data of the grid points of the boundary portion according to the one element processor via the data bus,
The iterative operation is performed, the element processor has a processing unit for executing the operation, and a data memory for storing various data relating to the operation, and the one element processor is the lattice point of the boundary portion. Writing data in its own data memory, the other element processor refers to the data of the grid point of the boundary portion stored in the data memory of the one element processor, and the adjacent element processor An information processing apparatus, comprising: a fine node connection in which the element processors are connected to each other; and a coarse node connection in which the element processors are connected to each other by a coarse node connection connection by skipping one or more of the element processors.
【請求項3】 複数の要素プロセッサと、互いに隣接す
る前記要素プロセッサ間を繋ぐ複数のデータバスとを備
え、所定の方程式で記述できる場の支配方程式を求解す
る際に用いる格子状に離散化された計算空間を複数の領
域に分割し、前記複数の領域のそれぞれごとに前記要素
プロセッサを割り当てて、並列的にかつ反復的に演算を
行わせる情報処理装置を用いた計算方法であって、 (a)一の前記要素プロセッサが、反復的な演算の過程
において、隣接する他の前記要素プロセッサにおける演
算の過程に拘わらず、互いに隣接する前記領域同士の境
界部分の格子点のデータを更新する工程と、 (b)前記他の要素プロセッサが、前記一の要素プロセ
ッサに係る前記境界部分の前記格子点の前記データが前
記一の要素プロセッサによって更新されたか否かに拘わ
らず、前記一の要素プロセッサに係る前記境界部分の前
記格子点の前記データを前記データバスを介して参照し
つつ、反復的な演算を行う工程とを備え、 前記所定の方程式は、微分方程式を含み、 非同期に、かつ独立に前記要素プロセッサを動作させて
前記微分方程式の解を差分法を用いて得ることを特徴と
する、情報処理装置における計算方法。
3. A plurality of element processors and a plurality of data buses that connect the element processors adjacent to each other, and are discretized into a lattice shape used when solving a field governing equation that can be described by a predetermined equation. A calculation method using an information processing device that divides the calculation space into a plurality of areas, allocates the element processors to each of the plurality of areas, and performs operations in parallel and iteratively, a) A step in which one of the element processors updates the data of the grid point at the boundary portion between the areas adjacent to each other in the process of the iterative operation regardless of the step of the operation in the other adjacent element processors. And (b) the other element processor updates the data of the grid points of the boundary portion related to the one element processor by the one element processor. Irrespective of whether or not it has been performed, a step of performing repetitive calculation while referring to the data of the grid point of the boundary portion related to the one element processor via the data bus, The equation includes a differential equation, and the element processor is operated asynchronously and independently to obtain a solution of the differential equation by using a difference method.
【請求項4】 複数の要素プロセッサと、互いに隣接す
る前記要素プロセッサ間を繋ぐ複数のデータバスとを備
え、所定の方程式で記述できる場の支配方程式を求解す
る際に用いる格子状に離散化された計算空間を複数の領
域に分割し、前記複数の領域のそれぞれごとに前記要素
プロセッサを割り当てて、並列的にかつ反復的に演算を
行わせる情報処理装置を用いた計算方法であって、 (a)一の前記要素プロセッサが、反復的な演算の過程
において、隣接する他の前記要素プロセッサにおける演
算の過程に拘わらず、互いに隣接する前記領域同士の境
界部分の格子点のデータを更新する工程と、 (b)前記他の要素プロセッサが、前記一の要素プロセ
ッサに係る前記境界部分の前記格子点の前記データが前
記一の要素プロセッサによって更新されたか否かに拘わ
らず、前記一の要素プロセッサに係る前記境界部分の前
記格子点の前記データを前記データバスを介して参照し
つつ、反復的な演算を行う工程とを備え、 前記要素プロセッサは、演算を実行するプロセッシング
ユニット及び演算に関する各種データを記憶するための
データメモリを有し、 前記工程(a)において、前記一の要素プロセッサは、
前記境界部分の前記格子点の前記データを自己の前記デ
ータメモリに書き込み、 前記工程(b)において、前記他の要素プロセッサは、
前記一の要素プロセッサの前記データメモリに記憶され
ている前記境界部分の前記格子点の前記データを参照
し、 前記格子点の全てに対し前記格子点の存在する位置が前
記場の中の計算領域の内部か外部か、あるいは前記計算
領域内の物体の内部か外部かを示す内点ビット及び外点
ビットを、さらに前記計算領域境界に位置する前記格子
点に対して境界条件の情報を与える境界条件ビットを、
前記要素プロセッサの前記データメモリ上に予め与えて
おき、前記要素プロセッサには前記内点ビット、前記外
点ビット及び前記境界条件ビットにより処理を変更する
ことができる同一の計算プログラムを用いて前記プロセ
ッシングユニットが演算を行うことを特徴とする、情報
処理装置における計算方法。
4. A plurality of element processors and a plurality of data buses that connect the element processors adjacent to each other, and are discretized into a lattice shape for use in solving a field governing equation that can be described by a predetermined equation. A calculation method using an information processing device that divides the calculation space into a plurality of areas, allocates the element processors to each of the plurality of areas, and performs operations in parallel and iteratively, a) A step in which one of the element processors updates the data of the grid point at the boundary portion between the areas adjacent to each other in the process of the iterative operation regardless of the step of the operation in the other adjacent element processors. And (b) the other element processor updates the data of the grid points of the boundary portion related to the one element processor by the one element processor. Irrespective of whether or not it has been performed, a step of performing repetitive calculation while referring to the data of the grid points of the boundary portion of the one element processor via the data bus, the element processor Has a processing unit for executing an operation and a data memory for storing various data related to the operation, and in the step (a), the one element processor is
Writing the data of the grid point of the boundary portion in the data memory of its own, in the step (b), the other element processor,
With reference to the data of the grid points of the boundary portion stored in the data memory of the one element processor, the positions where the grid points exist for all of the grid points are calculation areas in the field. Boundary which gives the information of the boundary condition to the grid points located at the boundary of the calculation area, and the inside point bit and the outside point bit indicating whether the inside or outside of the calculation area or the inside or outside of the object in the calculation area. Condition bit,
The processing is performed by using the same calculation program which is given to the data memory of the element processor in advance and whose processing can be changed by the interior point bit, the exterior point bit and the boundary condition bit. A calculation method in an information processing device, wherein a unit performs a calculation.
【請求項5】 複数の要素プロセッサと、互いに隣接す
る前記要素プロセッサ間を繋ぐ複数のデータバスとを備
え、所定の方程式で記述できる場の支配方程式を求解す
る際に用いる格子状に離散化された計算空間を複数の領
域に分割し、前記複数の領域のそれぞれごとに前記要素
プロセッサを割り当てて、並列的にかつ反復的に演算を
行わせる情報処理装置を用いた計算方法であって、 (a)一の前記要素プロセッサが、反復的な演算の過程
において、隣接する他の前記要素プロセッサにおける演
算の過程に拘わらず、互いに隣接する前記領域同士の境
界部分の格子点のデータを更新する工程と、 (b)前記他の要素プロセッサが、前記一の要素プロセ
ッサに係る前記境界部分の前記格子点の前記データが前
記一の要素プロセッサによって更新されたか否かに拘わ
らず、前記一の要素プロセッサに係る前記境界部分の前
記格子点の前記データを前記データバスを介して参照し
つつ、反復的な演算を行う工程とを備え、 前記要素プロセッサは、演算を実行するプロセッシング
ユニット及び演算に関する各種データを記憶するための
データメモリを有し、 前記工程(a)において、前記一の要素プロセッサは、
前記境界部分の前記格子点の前記データを自己の前記デ
ータメモリに書き込み、 前記工程(b)において、前記他の要素プロセッサは、
前記一の要素プロセッサの前記データメモリに記憶され
ている前記境界部分の前記格子点の前記データを参照
し、 前記プロセッシングユニットは、前記格子点の全てに対
し前記格子点の存在する位置が前記場の中の計算領域の
内部か、あるいは前記計算領域内の物体の内部か外部か
を示す内点ビット及び外点ビットを、さらに前記計算領
域境界に位置する前記格子点に対して境界条件の情報を
与える境界条件ビットを、前記要素プロセッサの前記デ
ータメモリにロードしておき、前記内点ビット、前記外
点ビット及び前記境界条件ビットに従ってデータフロー
グラフの処理を変更することができる同一の布線論理に
従ったハードウェア回路をさらに備える前記情報処理装
置を用いる、情報処理装置における計算方法。
5. A plurality of element processors and a plurality of data buses that connect the element processors adjacent to each other, and are discretized into a lattice shape used when solving a governing equation of a field that can be described by a predetermined equation. A calculation method using an information processing device that divides the calculation space into a plurality of areas, allocates the element processors to each of the plurality of areas, and performs operations in parallel and iteratively, a) A step in which one of the element processors updates the data of the grid point at the boundary portion between the areas adjacent to each other in the process of the iterative operation regardless of the step of the operation in the other adjacent element processors. And (b) the other element processor updates the data of the grid points of the boundary portion related to the one element processor by the one element processor. Irrespective of whether or not it has been performed, a step of performing repetitive calculation while referring to the data of the grid points of the boundary portion of the one element processor via the data bus, the element processor Has a processing unit for executing an operation and a data memory for storing various data related to the operation, and in the step (a), the one element processor is
Writing the data of the grid point of the boundary portion in the data memory of its own, in the step (b), the other element processor,
The processing unit refers to the data of the grid points of the boundary portion stored in the data memory of the one element processor, and the processing unit determines that the positions where the grid points exist for all the grid points. Inside point and outside point bit indicating whether the inside of the calculation area inside or the inside or outside of the object inside the calculation area, and the boundary condition information for the grid point located at the boundary of the calculation area. Boundary condition bits that give the above are loaded in the data memory of the element processor, and the processing of the data flow graph can be changed according to the inside point bits, the outside point bits and the boundary condition bits. A calculation method in an information processing apparatus, wherein the information processing apparatus further comprises a hardware-compliant logic circuit.
【請求項6】 複数の要素プロセッサと、互いに隣接す
る前記要素プロセッサ間を繋ぐ複数のデータバスとを備
え、所定の方程式で記述できる場の支配方程式を求解す
る際に用いる格子状に離散化された計算空間を複数の領
域に分割し、前記複数の領域のそれぞれごとに前記要素
プロセッサを割り当てて、並列的にかつ反復的に演算を
行わせる情報処理装置を用いた計算方法であって、 (a)一の前記要素プロセッサが、反復的な演算の過程
において、隣接する他の前記要素プロセッサにおける演
算の過程に拘わらず、互いに隣接する前記領域同士の境
界部分の格子点のデータを更新する工程と、 (b)前記他の要素プロセッサが、前記一の要素プロセ
ッサに係る前記境界部分の前記格子点の前記データが前
記一の要素プロセッサによって更新されたか否かに拘わ
らず、前記一の要素プロセッサに係る前記境界部分の前
記格子点の前記データを前記データバスを介して参照し
つつ、反復的な演算を行う工程とを備え、 前記要素プロセッサは、演算を実行するプロセッシング
ユニット及び演算に関する各種データを記憶するための
データメモリを有し、 前記工程(a)において、前記一の要素プロセッサは、
前記境界部分の前記格子点の前記データを自己の前記デ
ータメモリに書き込み、 前記工程(b)において、前記他の要素プロセッサは、
前記一の要素プロセッサの前記データメモリに記憶され
ている前記境界部分の前記格子点の前記データを参照
し、 計算対象となる前記格子点が隣接する前記領域との境界
上にあるため、前記場の支配方程式を解くための通信回
数が少ない前記格子点についてもダミーの通信を行うこ
とにより全ての前記格子点での通信回数を平準化するこ
とを特徴とする、情報処理装置における計算方法。
6. A plurality of element processors and a plurality of data buses that connect the element processors adjacent to each other, and are discretized into a lattice shape used when solving a field governing equation that can be described by a predetermined equation. A calculation method using an information processing device that divides the calculation space into a plurality of areas, allocates the element processors to each of the plurality of areas, and performs operations in parallel and iteratively, a) A step in which one of the element processors updates the data of the grid point at the boundary portion between the areas adjacent to each other in the process of the iterative operation regardless of the step of the operation in the other adjacent element processors. And (b) the other element processor updates the data of the grid points of the boundary portion related to the one element processor by the one element processor. Irrespective of whether or not it has been performed, a step of performing repetitive calculation while referring to the data of the grid points of the boundary portion of the one element processor via the data bus, the element processor Has a processing unit for executing an operation and a data memory for storing various data related to the operation, and in the step (a), the one element processor is
Writing the data of the grid point of the boundary portion in the data memory of its own, in the step (b), the other element processor,
With reference to the data of the grid point of the boundary portion stored in the data memory of the one element processor, the grid point to be calculated is on the boundary with the adjacent area, The method for computing in an information processing apparatus, wherein the number of communications at all the lattice points is leveled by performing dummy communications even for the lattice points having a small number of communications for solving the governing equation.
【請求項7】 複数の要素プロセッサと、互いに隣接す
る前記要素プロセッサ間を繋ぐ複数のデータバスとを備
え、所定の方程式で記述できる場の支配方程式を求解す
る際に用いる格子状に離散化された計算空間を複数の領
域に分割し、前記複数の領域のそれぞれごとに前記要素
プロセッサを割り当てて、並列的にかつ反復的に演算を
行わせる情報処理装置を用いた計算方法であって、 (a)一の前記要素プロセッサが、反復的な演算の過程
において、隣接する他の前記要素プロセッサにおける演
算の過程に拘わらず、互いに隣接する前記領域同士の境
界部分の格子点のデータを更新する工程と、 (b)前記他の要素プロセッサが、前記一の要素プロセ
ッサに係る前記境界部分の前記格子点の前記データが前
記一の要素プロセッサによって更新されたか否かに拘わ
らず、前記一の要素プロセッサに係る前記境界部分の前
記格子点の前記データを前記データバスを介して参照し
つつ、反復的な演算を行う工程とを備え、 前記要素プロセッサは、演算を実行するプロセッシング
ユニット及び演算に関する各種データを記憶するための
データメモリを有し、 前記工程(a)において、前記一の要素プロセッサは、
前記境界部分の前記格子点の前記データを自己の前記デ
ータメモリに書き込み、 前記工程(b)において、前記他の要素プロセッサは、
前記一の要素プロセッサの前記データメモリに記憶され
ている前記境界部分の前記格子点の前記データを参照
し、 計算対象となる前記格子点が隣接する前記領域との境界
上にあるため、前記場の支配方程式を解くための演算回
数が少ない前記格子点についてもダミーの演算を行うこ
とにより全ての前記格子点での演算回数を平準化するこ
とを特徴とする、情報処理装置における計算方法。
7. A plurality of element processors and a plurality of data buses that connect the element processors adjacent to each other, and are discretized into a lattice shape used when solving a field governing equation that can be described by a predetermined equation. A calculation method using an information processing device that divides the calculation space into a plurality of areas, allocates the element processors to each of the plurality of areas, and performs operations in parallel and iteratively, a) A step in which one of the element processors updates the data of the grid point at the boundary portion between the areas adjacent to each other in the process of the iterative operation regardless of the step of the operation in the other adjacent element processors. And (b) the other element processor updates the data of the grid points of the boundary portion related to the one element processor by the one element processor. Irrespective of whether or not it has been performed, a step of performing repetitive calculation while referring to the data of the grid points of the boundary portion of the one element processor via the data bus, the element processor Has a processing unit for executing an operation and a data memory for storing various data related to the operation, and in the step (a), the one element processor is
Writing the data of the grid point of the boundary portion in the data memory of its own, in the step (b), the other element processor,
With reference to the data of the grid point of the boundary portion stored in the data memory of the one element processor, the grid point to be calculated is on the boundary with the adjacent area, The method of computing in an information processing apparatus, wherein the number of operations at all the lattice points is leveled by performing a dummy operation on the lattice points having a small number of operations for solving the governing equation (1).
【請求項8】 複数の要素プロセッサと、互いに隣接す
る前記要素プロセッサ間を繋ぐ複数のデータバスとを備
え、所定の方程式で記述できる場の支配方程式を求解す
る際に用いる格子状に離散化された計算空間を複数の領
域に分割し、前記複数の領域のそれぞれごとに前記要素
プロセッサを割り当てて、並列的にかつ反復的に演算を
行わせる情報処理装置を用いた計算方法であって、 (a)一の前記要素プロセッサが、反復的な演算の過程
において、隣接する他の前記要素プロセッサにおける演
算の過程に拘わらず、互いに隣接する前記領域同士の境
界部分の格子点のデータを更新する工程と、 (b)前記他の要素プロセッサが、前記一の要素プロセ
ッサに係る前記境界部分の前記格子点の前記データが前
記一の要素プロセッサによって更新されたか否かに拘わ
らず、前記一の要素プロセッサに係る前記境界部分の前
記格子点の前記データを前記データバスを介して参照し
つつ、反復的な演算を行う工程とを備え、 前記要素プロセッサは、演算を実行するプロセッシング
ユニット及び演算に関する各種データを記憶するための
データメモリを有し、 前記工程(a)において、前記一の要素プロセッサは、
前記境界部分の前記格子点の前記データを自己の前記デ
ータメモリに書き込み、 前記工程(b)において、前記他の要素プロセッサは、
前記一の要素プロセッサの前記データメモリに記憶され
ている前記境界部分の前記格子点の前記データを参照
し、 隣接する前記格子点が異なる前記要素プロセッサにまた
がって割り当てられた場合、双方の前記要素プロセッサ
で互いに相手方へ送信するためにデータを時系列的に2
組もち、これらの格子点に対するデータが更新された場
合、更新されたデータが時系列的に前の組のデータと比
較して所定値以下の変位ならば相手方のデータの書換え
をしないことを特徴とする、情報処理装置における計算
方法。
8. A plurality of element processors and a plurality of data buses that connect the element processors adjacent to each other, and are discretized into a lattice shape used when solving a field governing equation that can be described by a predetermined equation. A calculation method using an information processing device that divides the calculation space into a plurality of areas, allocates the element processors to each of the plurality of areas, and performs operations in parallel and iteratively, a) A step in which one of the element processors updates the data of the grid point at the boundary portion between the areas adjacent to each other in the process of the iterative operation regardless of the step of the operation in the other adjacent element processors. And (b) the other element processor updates the data of the grid points of the boundary portion related to the one element processor by the one element processor. Irrespective of whether or not it has been performed, a step of performing repetitive calculation while referring to the data of the grid points of the boundary portion of the one element processor via the data bus, the element processor Has a processing unit for executing an operation and a data memory for storing various data related to the operation, and in the step (a), the one element processor is
Writing the data of the grid point of the boundary portion in the data memory of its own, in the step (b), the other element processor,
With reference to the data of the grid points of the boundary portion stored in the data memory of the one element processor, when the adjacent grid points are allocated over different element processors, both the elements 2 time-series data to be sent to each other by the processors
If the data for these grid points are updated, the data of the other party will not be rewritten if the updated data is displaced by a predetermined value or less compared with the data of the previous set in time series. And a calculation method in the information processing device.
【請求項9】 複数の要素プロセッサと、互いに隣接す
る前記要素プロセッサ間を繋ぐ複数のデータバスとを備
え、所定の方程式で記述できる場の支配方程式を求解す
る際に用いる格子状に離散化された計算空間を複数の領
域に分割し、前記複数の領域のそれぞれごとに前記要素
プロセッサを割り当てて、並列的にかつ反復的に演算を
行わせる情報処理装置を用いた計算方法であって、 (a)一の前記要素プロセッサが、反復的な演算の過程
において、隣接する他の前記要素プロセッサにおける演
算の過程に拘わらず、互いに隣接する前記領域同士の境
界部分の格子点のデータを更新する工程と、 (b)前記他の要素プロセッサが、前記一の要素プロセ
ッサに係る前記境界部分の前記格子点の前記データが前
記一の要素プロセッサによって更新されたか否かに拘わ
らず、前記一の要素プロセッサに係る前記境界部分の前
記格子点の前記データを前記データバスを介して参照し
つつ、反復的な演算を行う工程とを備え、 前記要素プロセッサは、演算を実行するプロセッシング
ユニット及び演算に関する各種データを記憶するための
データメモリを有し、 前記工程(a)において、前記一の要素プロセッサは、
前記境界部分の前記格子点の前記データを自己の前記デ
ータメモリに書き込み、 前記工程(b)において、前記他の要素プロセッサは、
前記一の要素プロセッサの前記データメモリに記憶され
ている前記境界部分の前記格子点の前記データを参照
し、 隣接する前記要素プロセッサ同士を結合した細ノード結
合と、一つ以上の前記要素プロセッサを飛び越して前記
要素プロセッサ同士を粗ノード結合コネクションで結合
した粗ノード結合とを有する前記情報処理装置を用いる
ことを特徴とする、情報処理装置における計算方法。
9. A plurality of element processors and a plurality of data buses that connect the element processors adjacent to each other, and are discretized into a lattice shape used when solving a field governing equation that can be described by a predetermined equation. A calculation method using an information processing device that divides the calculation space into a plurality of areas, allocates the element processors to each of the plurality of areas, and performs operations in parallel and iteratively, a) A step in which one of the element processors updates the data of the grid point at the boundary portion between the areas adjacent to each other in the process of the iterative operation regardless of the step of the operation in the other adjacent element processors. And (b) the other element processor updates the data of the grid points of the boundary portion related to the one element processor by the one element processor. Irrespective of whether or not it has been performed, a step of performing repetitive calculation while referring to the data of the grid points of the boundary portion of the one element processor via the data bus, the element processor Has a processing unit for executing an operation and a data memory for storing various data related to the operation, and in the step (a), the one element processor is
Writing the data of the grid point of the boundary portion in the data memory of its own, in the step (b), the other element processor,
Referring to the data of the grid point of the boundary portion stored in the data memory of the one element processor, a fine node connection connecting adjacent element processors, and one or more element processors A calculation method in an information processing device, comprising: using the information processing device having a coarse node connection in which the element processors are interlaced and connected by a coarse node connection connection.
JP2001169407A 1994-07-22 2001-06-05 Information processing apparatus and calculation method in information processing apparatus Expired - Fee Related JP3495010B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2001169407A JP3495010B2 (en) 1994-07-22 2001-06-05 Information processing apparatus and calculation method in information processing apparatus

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP17138594 1994-07-22
JP6-171385 1994-07-22
JP2001169407A JP3495010B2 (en) 1994-07-22 2001-06-05 Information processing apparatus and calculation method in information processing apparatus

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP18019595A Division JP3308770B2 (en) 1994-07-22 1995-07-17 Information processing apparatus and calculation method in information processing apparatus

Publications (2)

Publication Number Publication Date
JP2002049596A JP2002049596A (en) 2002-02-15
JP3495010B2 true JP3495010B2 (en) 2004-02-09

Family

ID=26494131

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001169407A Expired - Fee Related JP3495010B2 (en) 1994-07-22 2001-06-05 Information processing apparatus and calculation method in information processing apparatus

Country Status (1)

Country Link
JP (1) JP3495010B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4761865B2 (en) * 2005-07-22 2011-08-31 株式会社日立製作所 Spatial simulation program and apparatus

Non-Patent Citations (6)

* Cited by examiner, † Cited by third party
Title
Hidehiro Takata 他,A 100−Mega−Acess per Second Matching Memory for a Data−Driven Microprocessor,IEEE JOURNAL OF SOLID−STATE CIRCUITS,米国,1990年,VOL.25, NO.1,p95−99
Toshiyuki Tamura 他,A Data−Driven Architecture for Distributed Parallel Processing,IEEE International Conference on Computer Design: VLSI in Computers and Processors,米国,1991年,p.218−224
加納健 他,並列計算機Cenju上の有限要素法による非線形変形解析,情報処理学会誌,日本,1993年,Vol.34 No.4,p708−719
岩田誠 他,動的データ駆動型処理システム Qv−xの視覚的評価支援環境,情報処理学会研究報告,日本,1994年,VOL.94 No.106 (94−OS−67),p57−64
島野健仁郎、阿荒川忠一,領域分割を用いた並列計算手法による非圧縮性流れの数値解析,日本機械学会論文誌,日本,1993年,B編 第59巻 第567号,p3340−3346
田村俊之 他,データ駆動型プロセッサRAPIDのソフトウェア開発環境,情報処理学会研究報告,日本,1994年,Vol94 No.106 (94−OS−67),p169−174

Also Published As

Publication number Publication date
JP2002049596A (en) 2002-02-15

Similar Documents

Publication Publication Date Title
JP3308770B2 (en) Information processing apparatus and calculation method in information processing apparatus
Lenoski et al. The DASH prototype: Logic overhead and performance
CN104391820B (en) General floating-point matrix processor hardware structure based on FPGA
US20130226535A1 (en) Concurrent simulation system using graphic processing units (gpu) and method thereof
CN113906428B (en) Compilation process for heterogeneous multi-core architecture
CN107590085A (en) A kind of dynamic reconfigurable array data path and its control method with multi-level buffer
Wood et al. Mechanisms for cooperative shared memory
Balkan et al. Mesh-of-trees and alternative interconnection networks for single-chip parallelism
CN108804380A (en) The cascade Cycle accurate model of vector calculus hardware accelerator multinuclear
Lundstrom Applications considerations in the system design of highly concurrent multiprocessors
JP6666548B2 (en) Parallel computer, FFT operation program and FFT operation method
JP3495010B2 (en) Information processing apparatus and calculation method in information processing apparatus
US11593547B1 (en) Prediction and optimization of multi-kernel circuit design performance using a programmable overlay
US10963615B1 (en) Data processing engine (DPE) array routing
CN119940250A (en) Coarse-granularity reconfigurable array and hardware modeling generation method thereof
Bytyn et al. Dataflow aware mapping of convolutional neural networks onto many-core platforms with network-on-chip interconnect
US8539207B1 (en) Lattice-based computations on a parallel processor
CN109388876A (en) A kind of groundwater solute transfer numerical simulation parallel acceleration method
Zhao et al. A High-Performance and Flexible Accelerator for Dynamic Graph Convolutional Networks
US7516059B2 (en) Logical simulation device
US20240411974A1 (en) Pin density-based congestion estimation for routability-driven standard cell synthesis
Kauranne Asymptotic parallelism of weather models
Wang et al. Demonstrating Scalability of the Checkerboard GPC with SystemC
EP1047008A2 (en) Method and apparatus for configuring dynamic graph processors
CN118171022A (en) An electromagnetic solution algorithm for Laplace equation based on FPGA

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees