JPH04225430A - Buffering system for stream type language - Google Patents

Buffering system for stream type language

Info

Publication number
JPH04225430A
JPH04225430A JP40746490A JP40746490A JPH04225430A JP H04225430 A JPH04225430 A JP H04225430A JP 40746490 A JP40746490 A JP 40746490A JP 40746490 A JP40746490 A JP 40746490A JP H04225430 A JPH04225430 A JP H04225430A
Authority
JP
Japan
Prior art keywords
data
list
type
car
cdr
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
JP40746490A
Other languages
Japanese (ja)
Inventor
Satoshi Hosoi
聡 細井
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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP40746490A priority Critical patent/JPH04225430A/en
Publication of JPH04225430A publication Critical patent/JPH04225430A/en
Withdrawn legal-status Critical Current

Links

Abstract

PURPOSE:To attain the effective communication between the processes in the parallel processing state of a stream type language in a buffering system of the language where the data given from a process are read by another process by providing a data division type, setting the data division type to the data type of a list when plural data are divided, and reading collectively the hitherto data through a process. CONSTITUTION:A data division type is set at a CAR part which forms a list together with a CDR part, and a write process writes the data type and the data into the CAR part of the list to successively link the corresponding lists with each other and also points a read process through the CDR part of the last list. Then the pointed read process reads the data collectively out of the CDR part only when the data division type is set at the CAR part of the list.

Description

【発明の詳細な説明】[Detailed description of the invention]

【0001】0001

【産業上の利用分野】本発明は、プロセスからのデータ
を他のプロセスが読み込むストリーム型言語におけるバ
ッファリング方式に関するものである。並列計算機の普
及に伴い、その上で動作する言語の効率的な実現が望ま
れている。このような言語の代表例として、複数のプロ
セスがリスト(ストリーム)を介してデータをやり取り
し合いながら並列に処理を行うストリーム型言語がある
。このストリーム型言語によってデータを効率的にやり
取りすることが望まれている。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a buffering method in a stream language in which data from one process is read by another process. With the spread of parallel computers, there is a desire to efficiently implement languages that run on parallel computers. A typical example of such a language is a stream language in which multiple processes perform processing in parallel while exchanging data with each other via a list (stream). It is desired to efficiently exchange data using this stream type language.

【0002】0002

【従来の技術】従来、2つのプロセスp(x)とプロセ
スc(x)があり、図2の(a)に示すように、プロセ
スp(x)がリストのCAR部にデータを書き込み、プ
ロセスc(x)がこれを読み込んで処理を行うようにし
ている。この際、プロセスp(x)からのデータが未だ
リストのCAR部に書き込まれていない、即ちCAR部
がUNDEF(未定義)であるとき、プロセスc(x)
の処理はここで中断し、図2の(b)に示すように、リ
ストのこのUNDEFからプロセスc(x)をポイント
しておく。そして、プロセスp(x)がデータを書き込
んだとき、プロセスc(x)はこのデータを読み込んで
処理を行う。このように、データが飛び飛びに来ると、
プロセスc(x)はその毎に中断、再開を繰り返すよう
にしていた。
2. Description of the Related Art Conventionally, there are two processes p(x) and c(x), and as shown in FIG. c(x) reads this and processes it. At this time, if the data from process p(x) has not yet been written to the CAR part of the list, that is, the CAR part is UNDEF (undefined), then process c(x)
The process of is interrupted here, and as shown in FIG. 2(b), process c(x) is pointed to from this UNDEF in the list. Then, when process p(x) writes data, process c(x) reads and processes this data. When data comes all over the place like this,
The process c(x) was repeatedly interrupted and restarted each time.

【0003】0003

【発明が解決しようとする課題】上述したように、デー
タを読み込むプロセスc(x)はデータが飛び飛びに来
ると、その毎に中断、再開を繰り返す必要があり、全体
の処理効率が非常に悪くなってしまうという問題があっ
た。本発明は、データ区切り型を設け、複数のデータの
区切りのときにリストのデータ型にこのデータ区切り型
を設定してここまでのデータをまとめてプロセスが読み
込み、ストリーム型言語の並列処理時のプロセス間の効
率的な通信を可能にすることを目的としている。
[Problem to be Solved by the Invention] As mentioned above, the process c(x) for reading data has to be repeatedly interrupted and restarted each time the data arrives intermittently, resulting in a very poor overall processing efficiency. There was a problem that it became. The present invention provides a data delimiter type, sets this data delimiter type to the data type of the list when delimiting multiple data, and the process reads all the data up to this point. Its purpose is to enable efficient communication between processes.

【0004】0004

【課題を解決するための手段】図1は、本発明の原理構
成図を示す。図1において、リスト1は、データ型およ
びデータを設定するCAR部、および次のリスト1をリ
ンク、読み込むプロセスへのポインタを設定するCDR
部から構成されるものである。
[Means for Solving the Problems] FIG. 1 shows a diagram of the principle configuration of the present invention. In FIG. 1, List 1 is a CAR part that sets the data type and data, and a CDR part that sets a pointer to the process that links and reads the next List 1.
It consists of two parts.

【0005】データ区切り型2は、読み込むプロセスに
まとめてデータを読み込む旨の指示を与えるものである
[0005] Data delimiter type 2 gives an instruction to the reading process to read data all at once.

【0006】[0006]

【作用】本発明は、図1に示すように、データ型として
データをまとめて読み込むデータ区切り型2を設け、書
き込むプロセスがリスト1のCAR部にデータ型および
データを書き込んで順次リンクすることを繰り返すと共
に、読み込むプロセスを最後部のリスト1のCDR部か
らポイントしておき、リスト1のCAR部にデータ区切
り型2が設定された場合にのみ、CDR部からポイント
されている読み込むプロセスがCAR部に書き込まれて
いるデータをまとめて読み込むようにしている。
[Operation] As shown in FIG. 1, the present invention provides a data delimiter type 2 that reads data all at once as a data type, and allows the writing process to write the data type and data to the CAR section of list 1 and link them sequentially. At the same time as repeating, point the reading process from the CDR part of list 1 at the end, and only if data delimiter type 2 is set in the CAR part of list 1, the reading process pointed from the CDR part will be the CAR part. I am trying to read all the data written in .

【0007】従って、複数のデータの区切りのときにリ
スト1にデータ区切り型2を設定してこのデータ区切り
型までのデータをまとめて読み込むプロセスが読み込む
ことにより、ストリーム型言語の並列処理時のプロセス
間の効率的な通信を行うことが可能となる。
Therefore, when delimiting multiple pieces of data, a process that sets data delimiter type 2 in list 1 and reads data up to this data delimiter type all at once reads the data, so that the process during parallel processing of the stream type language It becomes possible to perform efficient communication between the two.

【0008】[0008]

【実施例】次に、図1を用いて本発明の実施例の構成お
よび動作を順次詳細に説明する。図1において、リスト
1は、CAR部およびCDR部から構成され、ここでは
プロセス間でデータの授受を行うためのものである。C
AR部には、データの型(例えばINT:整数型)や、
本実施例に係るデータの区切りを表すデータ区切り型、
およびデータを書き込む。CDR部には、次のリスト1
をリンクするアドレスを書き込んだり、読み込むプロセ
スをポイントするアドレスを書き込んだりするものであ
る。
DESCRIPTION OF THE PREFERRED EMBODIMENTS Next, the configuration and operation of an embodiment of the present invention will be explained in detail with reference to FIG. In FIG. 1, list 1 is composed of a CAR section and a CDR section, and is used here to exchange data between processes. C
The AR part contains the data type (for example, INT: integer type),
A data delimiter type representing data delimiters according to this embodiment,
and write data. In the CDR section, the following list 1
It writes an address that links to a file, or writes an address that points to a process that reads it.

【0009】データ区切り型2は、リスト1のCDR部
からポイントされている、読み込むプロセスに対して、
リンクされているリスト1のCAR部に書き込まれてい
るデータを読み込む旨の指示を与えるものである。プロ
セスPは、データをリスト1に書き込んむプロセスであ
る。プロセスCは、リスト1からデータを読み込むプロ
セスである。
[0009] Data delimiter type 2 is for the reading process pointed from the CDR part of list 1.
This gives an instruction to read the data written in the CAR section of the linked list 1. Process P is a process that writes data to list 1. Process C is a process that reads data from list 1.

【0010】次に、動作を説明する。図1の(a)は、
書き込むプロセスPがデータ“1”を書き込んだ状態を
示す。これは、書き込むプロセスPがリスト1のCAR
部に、データ型“INT(整数型)”およびデータ“1
”を図示のように書き込むと共に、CDR部にUNDE
F(未定義)および読み込むプロセスCをポイントする
アドレスを格納する。本実施例では、CDR部にデータ
区切り型2が書き込まれない限り、読み込みを行わない
Next, the operation will be explained. (a) in Figure 1 is
This shows a state in which the writing process P has written data “1”. This means that the writing process P is the CAR in list 1.
In the section, data type “INT (integer type)” and data “1” are added.
” as shown in the figure, and write UNDE in the CDR section.
F (undefined) and stores the address pointing to the reading process C. In this embodiment, reading is not performed unless data delimiter type 2 is written to the CDR section.

【0011】図1の(b)は、書き込むプロセスPがデ
ータ“2”を書き込んだ状態を示す。これは、書き込む
プロセスPがリスト1のCAR部に、データ型“INT
(整数型)”およびデータ“2”を図示のように書き込
むと共に、CDR部にUNDEF(未定義)および読み
込むプロセスCをポイントするアドレスを格納する。以
下同様に、書き込むプロセスPがデータ“3”ないし“
10”を順次リンクしたリスト1に書き込む。
FIG. 1B shows a state in which the writing process P has written data "2". This means that the writing process P writes the data type “INT” into the CAR section of List 1.
(Integer type)" and data "2" are written as shown in the figure, and UNDEF (undefined) and an address pointing to the reading process C are stored in the CDR section. Similarly, when the writing process P writes the data "3" Not “
10” in sequentially linked list 1.

【0012】図1の(c)は、書き込むプロセスPがデ
ータ区切り型を書き込んだ状態を示す。これは、書き込
むプロセスPがリスト1のCAR部のデータ型に“デー
タ区切り型”を書き込んで、読み込むプロセスに、今ま
でリスト1のCAR部に書き込んだデータをまとめて読
み込むように指示する。このデータ区切り型2の書き込
みに対応して、読み込むプロセスCは、リンクされた全
てのリスト1のCAR部からデータをまとめて読み込み
、処理を行うようにしている。
FIG. 1C shows a state in which the writing process P has written the data delimited type. This means that the writing process P writes "data delimited type" to the data type of the CAR section of List 1, and instructs the reading process to read all the data written to the CAR section of List 1 all at once. In response to this writing of data delimiter type 2, the reading process C reads data from the CAR parts of all linked lists 1 at once and processes it.

【0013】以上のように、書き込むプロセスPがリス
ト1のCAR部にデータを順次書き込んでおき、CAR
部のデータ型として“データ区切り型”を書き込んだ場
合に、読み込むプロセスCがリスト1のCAR部に書き
込まれているデータを全てまとめて読み込んで処理を行
うことにより、従来の読み込むプロセスcが処理を中断
したり、再開したり繰り返すことがなくなり、書き込む
プロセスPと読み込むプロセスCとの間で効率的に通信
を行うことが可能となる。
As described above, the writing process P sequentially writes data to the CAR section of list 1, and
When "data delimited type" is written as the data type of the part, the reading process C reads and processes all the data written in the CAR part of List 1 at once, so that the conventional reading process C can process it. There is no need to interrupt, restart, or repeat the process, and it becomes possible to efficiently communicate between the writing process P and the reading process C.

【0014】[0014]

【発明の効果】以上説明したように、本発明によれば、
複数のデータの区切りのときに書き込むプロセスがリス
ト1にデータ区切り型2を設定してこのデータ区切り型
までのデータを読み込むプロセスがまとめて読み込む構
成を採用しているため、従来の読み込むプロセスの処理
の中断、再開を繰り返すことがなくなり、データ区切り
毎にまとめてデータを読み込んでプロセス間の通信を効
率的に行うことができる。これにより、ストリーム型言
語の並列処理時のプロセス間通信を効率的に行い、シス
テム全体の処理速度を向上させることが可能となる。
[Effects of the Invention] As explained above, according to the present invention,
The process that writes data when dividing multiple data sets data delimiter type 2 in list 1, and the process that reads data up to this data delimiter type reads them all at once, so the conventional reading process processing This eliminates the need for repeated interruptions and restarts, and data can be read in batches for each data break, allowing for efficient communication between processes. This makes it possible to efficiently communicate between processes during parallel processing of stream-based languages and improve the processing speed of the entire system.

【図面の簡単な説明】[Brief explanation of the drawing]

【図1】本発明の1実施例構成図である。FIG. 1 is a configuration diagram of one embodiment of the present invention.

【図2】従来技術の説明図である。FIG. 2 is an explanatory diagram of a prior art.

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

1:リスト 2:データ区切り型 1: List 2: Data delimited type

Claims (1)

【特許請求の範囲】[Claims] 【請求項1】  プロセスからのデータを他のプロセス
が読み込むストリーム型言語におけるバッファリング方
式において、リストを構成するCAR部およびCDR部
のうちのCAR部に設定するデータ型としてデータ区切
り型を設け、書き込むプロセスがリストのCAR部にデ
ータ型およびデータを書き込んで当該リストを順次リン
クすると共に、読み込むプロセスを最後部のリストのC
DR部からポイントしておき、リストのCAR部に上記
データ区切り型が設定された場合にのみ、CDR部から
ポイントされている読み込むプロセスがデータをまとめ
て読み込むように構成したことを特徴とするストリーム
型言語におけるバッファリング方式。
1. In a buffering method in a stream type language in which data from a process is read by another process, a data delimited type is provided as a data type to be set in a CAR part of a CAR part and a CDR part that constitute a list, The writing process writes the data type and data to the CAR part of the list and sequentially links the list, and the reading process writes the data type and data to the CAR part of the list, and the reading process writes the data type and data to the CAR part of the list.
The stream is characterized in that the reading process pointed to by the CDR part reads data in bulk only when the DR part is pointed to and the data delimiter type is set in the CAR part of the list. Buffering methods in typed languages.
JP40746490A 1990-12-27 1990-12-27 Buffering system for stream type language Withdrawn JPH04225430A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP40746490A JPH04225430A (en) 1990-12-27 1990-12-27 Buffering system for stream type language

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP40746490A JPH04225430A (en) 1990-12-27 1990-12-27 Buffering system for stream type language

Publications (1)

Publication Number Publication Date
JPH04225430A true JPH04225430A (en) 1992-08-14

Family

ID=18517035

Family Applications (1)

Application Number Title Priority Date Filing Date
JP40746490A Withdrawn JPH04225430A (en) 1990-12-27 1990-12-27 Buffering system for stream type language

Country Status (1)

Country Link
JP (1) JPH04225430A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8638952B2 (en) 2009-06-23 2014-01-28 Fujitsu Limited Signal processing apparatus and signal processing method

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8638952B2 (en) 2009-06-23 2014-01-28 Fujitsu Limited Signal processing apparatus and signal processing method

Similar Documents

Publication Publication Date Title
JPH04225430A (en) Buffering system for stream type language
JPH06124207A (en) Sub-routine branching instruction execution method
JPH05282473A (en) Data processor
JPH0540721A (en) Computer system
JPS6049464A (en) Inter-processor communication system of multi-processor computer
JPH01259424A (en) Automatic software generating device
JP3140442B2 (en) Data processing device
KR100284011B1 (en) Memory Management Method for Non-Square Interleaver / Deinterleaver
JPH0469783A (en) Data train interpolation module for data flow type computer
JPS6217873A (en) Image processing system
JPH0337719A (en) System for expanding master file on main storage device
JPH06236264A (en) Load module generating system
JPS6269321A (en) Process switching system
JPH113234A (en) Data communication method in different control cycle process
JPH04289935A (en) Computer system
JPH03292698A (en) Shift register circuit
JPH0333954A (en) Information processor
JPH05165792A (en) Timer synchronizing system
JPS6344235A (en) Data processor
JPH03262061A (en) Data input processing system
JPH0328905A (en) Input/output transfer method for programmable controller
JPH01277957A (en) Macro control system for terminal function
JPH03259491A (en) Memory controller
JPH02205987A (en) Arithmetic processing system
JPH01223565A (en) Information processor

Legal Events

Date Code Title Description
A300 Application deemed to be withdrawn because no request for examination was validly filed

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 19980312