CA2175970C - Information processing system for performing mutual control of input/output devices among a plurality of clusters - Google Patents

Information processing system for performing mutual control of input/output devices among a plurality of clusters Download PDF

Info

Publication number
CA2175970C
CA2175970C CA002175970A CA2175970A CA2175970C CA 2175970 C CA2175970 C CA 2175970C CA 002175970 A CA002175970 A CA 002175970A CA 2175970 A CA2175970 A CA 2175970A CA 2175970 C CA2175970 C CA 2175970C
Authority
CA
Canada
Prior art keywords
cluster
transfer
data
input
instruction
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
CA002175970A
Other languages
French (fr)
Other versions
CA2175970A1 (en
Inventor
Michio Kitta
Akira Jippo
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
NEC Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NEC Corp filed Critical NEC Corp
Publication of CA2175970A1 publication Critical patent/CA2175970A1/en
Application granted granted Critical
Publication of CA2175970C publication Critical patent/CA2175970C/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/40Network security protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols

Abstract

In an information processing system including a first cluster which issues a control instruction for controlling an input/output device of another cluster and a second cluster which executes processing by the input/output device according to the control instruction, which are connected through a network interconnecting clusters, a processor mounted on the first cluster comprises a cluster discrimination unit for discriminating a cluster which executes the control instruction and an instruction transfer unit for transferring the control instruction to the corresponding second cluster depending on the judgment of the cluster discrimination unit, while a data transfer processing device mounted on the second cluster comprises a transfer buffer for temporarily storing the data to be transferred to another cluster, a transfer buffer control unit for controlling reading and writing of the data from and into the transfer data storage unit, and a transfer control unit for controlling the transfer buffer control unit according to the control instruction from the first cluster.

Description

217597g INFORMATION PROCESSING SYSTEM FOR PERFORMING MUTUAL CONTROL
OF INPUT/OUTPUT DEVICES AMOyG A PLURALITY OF CLUSTERS

BACKGROUNDS OF THE lNv~NllON
FIELD OF THE lNv~N~l~IoN
The present invention relates to an information processing system having a plurality of clusters connected through a network interconnecting clusters, and more particularly to an information processing system for controlling operations of an input/output device of another cluster according to instructions of a cluster.
DESCRIPTION OF THE RELATED ART
In this kind of a conventional information processing system connecting a plurality of clusters through a network interconnecting clusters, in the case of operating an input/output device in a predetermined cluster by instructions of a cluster other than the predetermined cluster, the input/output device is controlled by the use of a processor mounted on the predetermined cluster having the input/output device.
Fig. 11 is ablock diagram showing an organization of a cluster in the conventional information processing system. Fig. 10 is a block diagram showing an organization of a processor mounted on each cluster in the conventional information processing system.
Fig. 9 is a block diagram showing a data transfer processing ~1 759720 device mounted on each cluster in the conventional information processing system.
As illustrated in Fig. 11, a cluster 30 of the conventional information processing system comprises a pluralityofprocessors31forconductingvariousprocessing, a shared memory 13 for being shared among the processors 31, a local network 12 for connecting the processors 31 and the shared memory 13, and a data transfer processing device 35 connected with the local network 12 for controlling input/output devices 14 and data transfer between another cluster and this one via a network 40 interconnecting clusters.
As illustrated in Fig. 10, the processor 31 of the conventional information processing system comprises a cluster discrimination unit 311, a processor selection unit 312 and an instruction transfer unit 313 for transferring input/output instructions toward input/output devices of another cluster, and a request control unit 315, a request decodingunit316,arequeststorageunit317,aninput/output instruction issuing unit 318, a buffer transfer unit 319 and a request termination notifying unit 320 for processing input/output instructions issued by a processor of another cluster. It further comprises an interface port 314 for connecting with a local network 12 as well as the other components for issuing and processing the input/output instructions toward the input/output devices of the present 2175~70 3 _ cluster, which are not shown.
As illustrated in Fig. 9, the data transfer processing device 35 of the conventional information processing system comprises an instructionstorage unit 351, an instruction decoding unit 352, a transfercontrol unit 354 and a data transfer unit 356 for controlling data transfer between another cluster and this one, and an instruction completion notifyingunit 355 fornotifyingcompletionofthe input/output processing according to the input/output instruction from the processor 31 and a shared memory access unit 353 for accessing the shared memory 13. It further comprises a local network port 359 for connecting with the local network 12 and-a network port 360 interconnecting clusters for connecting with the network 40 interconnecting clusters.
An operation in thus-constituted conventional information processing system will be explained in the case where an input/output instruction issued by a processor 31 of a predetermined clusters 30 is to direct an input/output devicebelongingto anothercluster30 thanthepredetermined cluster to perform the input/output of the data.
In a cluster 30 which issues the input/output instruction,theprocessor31judgeswhethertheinput/output instruction is directed to an input/output device 14 of the presentcluster30,oritisdirectedtoaninput/outputdevice 14 of another cluster 30 by the use of the cluster _ 4 _ 2 i7S 97 ~

discrimination unit 311. When the input/output instruction isdirectedtothe input/outputdevice14belongingtoanother cluster 30, the processor selection unit 312 selects a processor 31 among a plurality of processors 31 in another cluster 30 indicated by the cluster identifier designated by the input/output instruction, or a cluster 30 designated for processing the input/output instruction. The instruction transfer unit 313 transfers the input/output instruction as a request intervening processors to the local network 12 with the selected processor 31 of another cluster 30 fixed as a destination.
Theprocessors interveningrequesttransferredto the local network 12 is further transferred to the network 40 interconnecting clusters via the data transfer processing device 35. It is supplied to the destination cluster 30, where it is supplied to the processor 31 selected as the destination through the data transfer processing device 35 and the local network 12 of the destination cluster 30.
In the cluster 30 having received the processors intervening request,theprocessor31 whichhasbeenselected as the destination stores the processors intervening request into the requeststorage unit 317on receiptoftheprocessors interveningrequest, at first. Therequestdecodingunit316 reads out the processors intervening request stored in the request storage unit 317 and decodes it. Processing shall be conducted according to the decoded request. For example, when the request is to direct reading of the data from the input/output device 14, the input/output instruction issuing unit 318 alters the input/output instruction in the request, and issues the input/output instruction to the data transfer processing device 35 of the present cluster 30 withthe buffer on the shared memory 13 of the present cluster 30 used as the buffer for data transfer from the input/output device 14, the present cluster being designated by the input/output instruction.
The data transfer processing device 35 executes an ordinal input/output processing on the basis of the input/output instruction. More specifically, when the instruction storage unit 351 receives the input/output instruction issued by the input/output instruction issuing unit 318, the instruction decoding unit 352 reads out the input/output instruction from the instruction storage unit 351 and decodes it. The transfer control unit 354 receives control information such as the number of an input/output device, an input data address, a length of input data, a writing starting address in the shared memory and the like, which have been read out from the input/output instruction by the instructiondecodingunit 352,and gives an instruction of the data input/output to the data transfer unit 356. In the instruction for executing data input with an input/output device 14 as mentioned above, the data input is executed with a specified input/output device 14. The data transfer unit ~17~970 356 reads out a desired data by the use of the input/output device 14 according to the instruction, sends it to the shared memory access unit 353, and notifies the transfer control unit 354 of the reading completion. The transfer control unit 354 gives an instruction to the shared memory access unit 353 so as to write the data which is sent from the data transfer unit 356 to the shared memory access unit 353, into the shared memory 13. According to the instruction, the shared memory access unit 353 writes the data into the shared memory 13 and notifies the transfer control unit 3S4 of the writing completion. The transfer control unit 354 reports the completion notice received from the shared memory access unit 353, together with the processor number of the processor 31 (request source processor) of the cluster 30 having issued the instruction, to the instruction completion notifying unit 355. The instruction completion notifying unit 355 reports execution completion of the input/output instruction to the request source processor 31.
On receipt of the completion notice from the instruction completion notifying unit 355 of the data transfer processing device 35, the processor 31 issues to the data transfer processing device 35, the transfer instruction for transferring the data from the input buffer on the shared memory 13 of this cluster 30 to the input buffer on the shared memory 13 of the cluster 30 having issued the processors intervening request.

The data transfer processing device 35 performs an ordinal data transfer processing according to the received data transfer instruction. Specifically, when the instruction storage unit 351 receives the data transfer instruction from the processor 31, the instruction decoding unit 352 reads out the transfer instruction from the instruction storage unit 351 and decodes it. The transfer control unit 354 receives the information such as a reading startingaddressonthesharedmemoryl3Ofthepresentcluster 30, which has been read out from the data transfer instruction by the instruction decoding unit 352, a transfer length, a writing starting address in the shared memory 13 of the data destination cluster 30 and the like, and gives an instruction to the shared memory access unit 353 so as to read out the data from the shared memory in units of every data transfer processing. The shared memory access unit 353 transfers the read out data to the data transfer unit 356 and notifies the transfer control unit 354 of the reading completion. The transfer control unit 354 gives an instruction to the data transfer unit 356 so as to transmit to the network 40 interconnecting clusters, the data sent from the shared memory access unit 353 to the data transfer unit 356. At this time, a cluster identifier, a writing address in another cluster, a transfer length, operational instructions to the data transfer processing device of another cluster and the like are added to the transfer data. According to these 2175~70 instructions, the data transfer unit 356 transmits the transfer data to the network 40 interconnecting clusters, where the transfer data is transferred to the cluster specified as the destination by the cluster identifier which has been added to the data.
The data transfer processing device 35 of the destination cluster 30 separates the additional control information from the data received by the data transfer unit 356 and moves it to the transfer control unit 354. The transfer control unit 354 gives an instruction to the data transfer unit 356 and the shared memory access unit 353 so as to write the data within the data transfer unit 356 into the shared memory 13 according to the additional control information. Thedatatransferunit356readsoutthewritten data and sends it to the shared memory access unit 353 according to the instruction. The shared memory access unit 353 writes the written data received from the data transfer unit 356 into the predetermined address on the shared memory 13 and notifies the transfer control unit 354 of the writing completion. The transfer control unit 354 transfers to the instruction completion notifying unit 355, the received completion noticeas well as thecluster numberofthecluster 30 which issues the data transfer instruction, or the cluster 30 which executes the input/output processing, the cluster number being read out from the control information. The instruction completion notifying unit 355 notifies the data g transfer unit 356 of the data transfer processing device 35 of the cluster 30 which issues the instruction that the transfer has been completed.
When the data transferprocessing device 35 ofthe instructionissuingcluster30receivesthecompletionnotice, the transfercontrolunit 354 transfers thecompletionnotice as well as the number of the request source processor to the instruction completion notifying unit 355, and the instruction completion notifying unit 355 notifies the processor 31 which has issued the data transfer instruction of the completion.
On receipt of the notice, the processor 31 having issued the data transfer notifies the processor 31 of the cluster 30 having issued the processors intervening request that the whole process has been completed with respect to the corresponding request.
As mentioned above, when an instruction for controlling an input/output device belonging to another cluster is issued from a processor mounted on a determined cluster in this kind of the conventional information processing system, processing has been performed in the following order; an instruction is transferred between clusters, input/output devices are operated by the control of the cluster in which the instruction has been received, the processing result by the input/output devices of the clusters is delivered therebetween, and completion of ~175970 receiving the processing result in the clusters is notified therebetween. The processing of the input/output device of theclusterhaving receivedthe instruction hasbeenexecuted according to the control of the processor of the same cluster in the same way as in the case where the processor ofthe above cluster issues the instruction.
More specifically, when input/output control of the data is performed on the input/output device belonging to aclusterotherthanapredeterminedclusterby aprocessor mounted on the predetermined cluster, the input/output operation has been performed by the use of the processor belongingtotheclusterotherthanthepredeterminedcluster, the cluster including the input/output device to be controlled in the above mentioned conventional information processing device. Therefore, it has a defect that the procedure for executing the control becomes complicated, thereby to deteriorate the efficiency.
Also, it has a defect that execution performance of the application program in the cluster including the input/output device is degradedbecausethe processor isused for the control of the input/output device of the above cluster.
Therefore, in the case where one of clusters is regarded as a front end cluster and the others are regarded as back end clusters, it is difficult to concentrically control the input/output devices of the respective clusters by the front end cluster.

SUMMARY OF THE INVENTION
A first object of the present invention is to provide an information processing system capable of directly controlling an input/output device belonging to another cluster,withoutusingaprocessorofanotherclusteronwhich the input/output device is mounted, in case of performing input/output control of the data for the input/output device of another cluster by the processor mounted on a determined cluster.
According to a second object of the present invention, a processor is not used in another cluster at the time of controlling the input/output device of another cluster, thereby preventing the deterioration in the execution performance of application programs in another cluster, in addition to the above first object.
According to a third object of the present invention, it is possible to save the memory of the shared memory of another cluster in case of controlling an input/output device mounted on another cluster, thereby reducing the load of another cluster including the input/output device, in addition to the above second object.
A fourth object of the present invention is to provide an information processing system capable of reducing theloadofabackendclusterandpreventingthedeterioration l22175970 in the overall performance of the system, in the case where oneofclusters isregardedas.thefrontendclusterandothers are regarded as back end clusters and input/output devices of the respective clusters are concentrically controlled by the front end cluster.
According to the first aspect of the invention, an information processing system including a plurality of clusters connected through a network interconnecting clusters, each of said clusters comprising a plurality of processorsforperformingvariousprocessing,asharedmemory for being shared among the processors, a local network connecting the processors and shared memory, and a data transferprocessingdevice, whichisconnected withthelocal network, for controlling input/output devices and data transfer between anothercluster and this one via the network interconnecting clusters, comprising:
a firstclusterwhich issuesacontrolinstruction for controlling said input/output device of another cluster and a second cluster which executes processing by said input/output device according to the control instruction, wherein said processor mounted on said first cluster comprising:
a cluster discrimination means for discriminatingaclusterwhichexecutesacontrolinstruction when the control instruction is issued;

aninstructiontransfermeansfortransferring the control instruction to said corresponding second cluster according to the judgment of said cluster discrimination means;
said data transfer processing device mounted on said second cluster comprising:
a data transfer means for executing data transfer between said network interconnecting clusters and the input/output device;
a transfer data storage means for temporally storing the data to be transferred to another cluster;
a transfer data reading and writing control means for controlling reading and writing of the data from and into said transfer data storage means;
a transfer control means for controlling said data transfer means, said transfer data reading and writing control means; and a completion notifying means for detecting completionofthe transferandnotifyingthedatadestination of the transfer completion.
In the preferred construction, when said transfer control means and said data transfer means execute the data input by means of the input/output device according to the control instruction issued from said first cluster, said transfer data reading and writing control means carries out reading and writing of the input data from and into said transfer data storage means according to the control of said transfer control means.
In the preferred construction, the cluster discriminationmeansofsaid firstclusterjudges whetherthe control instruction issued by said processor is directed to an input/output device of the same cluster, or it is directed to an input/output device of another cluster, and the instruction transfer means of said first cluster performs transfer control for transferring the input/output instruction to said corresponding second cluster when the controlinstructionisaninput/outputinstructiontowardthe input/output device of another cluster, and when said transfer control means and said data transfer means execute the data input by means of the input/output device according to the control instruction issued from said first cluster, said transfer data reading and writing control means of said second cluster carries out reading and writing of the input data from and into said transfer data storage means according to the control of said transfer control means.
In another preferred construction, all the clusters constituting said information processing system serve as both parts of said first cluster and said second cluster.
According to the second aspect of the invention, an information processing system including a plurality of clusters connected through a network interconnecting clusters, each of said clusters comprising a plurality of processorsforperformingvariousprocessing,asharedmemory for being shared among the processors, a local network connecting the processors and shared memory, and a data transferprocessingdevice, which isconnected withthelocal network, for controlling input/output devices and data transfer between another cluster and this one via the network interconnecting clusters, comprising:
a firstclusterwhichissuesacontrolinstruction for controlling said input/output device of another cluster and a second cluster which executes processing by said input/output device according to the control instruction, wherein said processor mounted on said first cluster comprising:
a cluster discrimination means for discriminatingaclusterwhichexecutesacontrolinstruction when the control instruction is issued;
a composite instruction creating means for creating a transfer instruction for transferring the processing resultby thecontrol instruction fromsaidsecond cluster to said first cluster, so as to add the transfer instruction to the control instruction, depending on the judgment of said cluster discrimination means;
aninstructiontransfermeansfortransferring the control instruction to said corresponding second cluster according to the judgment of said cluster discrimination means;
said data transfer processing device mounted on said second cluster comprising:
a data transfer means for executing data transfer between said network interconnecting clusters and the input/output device;
a transfer control means for controlling said data transfer means, said transfer data reading and writing control means, and a completion notifying means for detecting completionofthe transferand notifyingthedata destination of the transfer completion.
In the preferred construction, the composite instructioncreatingmeans creates instructions forshifting the transferring parameter specified by the control instruction from the shared memory of said first cluster to a buffer on the shared memory of said corresponding second cluster as well as instructions for transferring the data entered by the input/output device of said second cluster to a buffer on the shared memory of said first cluster, so as to add these instructions to the control instruction.
According to the third aspect of the invention, a cluster including a plurality of processors for performing various processing, a shared memory for being shared among the processors, a local networkconnectingtheprocessorsand 217597~

the shared memory, and a data transfer processing device, which is connected with the local network, for controlling input/output devices and data transfer between another cluster and this one via a network interconnecting clusters, said cluster being connected to another cluster via the network interconnecting clusters, in which said processor comprising:
a cluster discrimination means for discriminating a cluster which executes the control instruction when the control instruction is issued;
aninstructiontransfermeansfortransferring the control instruction to another corresponding cluster according to the judgment of said cluster discrimination means; and said data transfer processing device comprising:
a data transfer means for executing data transfer between said network interconnecting clusters and the input/output device;
a transfer data storage means for temporally storing the data to be transferred to another cluster;
a transfer data reading and writing control means for controlling reading and writing of the data from and into said transfer data storage means;
a transfer control means for controlling said datatransfermeansandsaidtransferdatareadingandwriting control means; and a completion notifying means for detecting completionofthetransferandnotifyingthedatadestination of the transfer completion.
In the preferred construction, the cluster discrimination means discriminates whether the control instruction issued by said processor is directed toward an input/output device of the same cluster or it is directed toward an input/output device of another cluster, and the instruction transfer means performs transfer control for transferringthe input/output instructionto anothercluster when the control instruction is an input/output instruction toward the input/output device of another cluster, and when said transfer control means and said data transfer means execute the data input by means of the input/output device according to the control instruction issued from another cluster, saidtransferdata readingand writingcontrolmeans carries out reading and writing of the input data from and intosaidtransferdatastoragemeansaccordingtothecontrol of said transfer control means.
According to another aspect of the invention, a cluster including a plurality of processors for performing various processing, a shared memory for being shared among the processors,a local networkconnectingtheprocessorsand the shared memory, and a data transfer processing device, which is connected with the local network, for controlling input/output devices and data transfer between another ~ 75970 cluster and this one via a network interconnecting clusters, said cluster being connected to another cluster via the network interconnecting clusters, in which said processor comprising:
a cluster discrimination means for discriminating a cluster which executes the control instruction when the control instruction is issued;
a composite instruction creating means for creating a transfer instruction for transferring the processing resultby thecontrol instruction fromsaidsecond cluster to said first cluster, so as to add the transfer instruction to the control instruction, depending on the judgment of said cluster discrimination means;
aninstructiontransfermeansfortransferring the control instruction to another corresponding cluster according to the judgment of said cluster discrimination means; and said data transfer processing device comprising:
a data transfer means for executing data transfer between said network interconnecting clusters and the input/output device;
a transfer data storage means for temporally storing the data to be transferred to another cluster;
a transfer data reading and writing control means for controlling reading and writing of the data from and into said transfer data storage means;

a transfer control means for controlling said datatransfermeansandsaidtransferdatareadingandwriting control means; and a completion notifying means for detecting completionofthe transferand notifyingthedatadestination of the transfer completion.
In the preferred construction, the composite instructioncreatingmeans creates instructions forshifting the transferring parameter specified by the control instruction from the shared memory of the same cluster to a buffer on the shared memory of another cluster as well as instructions for transferring the data entered by the input/output device of another cluster to a buffer on the shared memory of the same cluster, so as to add these instructions to the control instruction, on the basis of the discrimination result of said cluster discrimination means.
Other objects, features and advantages of the present invention will become clear from the detailed description given herebelow.
BRIEF DESCRIPTION OF THE DRAWINGS
The present invention will be understood more fully from the detailed description given herebelow and from the accompanying drawings of the preferred embodiment of the invention, which, however, should not be taken to be limitative to the invention, but are for explanation and ~175970 understanding only.
In the drawings:
Fig. 1 is a block diagram showing an organization of a data transfer device mounted on each of clusters forming an information processing system according to a first embodiment of the present invention.
Fig. 2 is a block diagram showing an organization of a processor mounted on each of clusters forming the information processing system according to the first embodiment.
Fig. 3 is a block diagram showing an organization of the cluster according to the first embodiment.
Fig. 4 is a block diagram showing an organization of the information procèssing system according to the first embodiment.
Fig.5 is aschematic diagramshowingrelationship between a cluster which issues an instruction and a cluster which executes the instruction.
Fig. 6 is a block diagram showing an organization of a data transfer device mounted on each of clusters forming an information processing system according to a second embodiment of the present invention.
Fig. 7 is a block diagram showing an organization of a processor mounted on each of clusters forming the information processing system according to the second embodiment.

217597~

Fig. 8 is a block diagram showing an organization of the cluster according to the second embodiment.
Fig. 9 is a block diagram showing an organization of a data transfer device mounted on each of clusters forming a conventional information processing system.
Fig. 10 is ablock diagram showing an organization of a processor mounted on each of clusters forming the conventional information processing system.
Fig. 11 is a block diagram showing an organization of the cluster of the conventional information processing system.

DESCRIPTION OF THE PREFERRED EMBODIMENT
A preferred embodiment of the present invention willbedescribedindetailwithreferencetotheaccompanying drawings.
Fig. 4 is a block diagram showing an organizatio~
of an information processing system according to a first embodiment of the present invention. Fig. 3 is a block diagram showing anorganization of a cluster according to the first embodiment.
As illustrated in Fig. 4, the information processing system of the present invention consists of a plurality of clusters 10 connected through a network 40 interconnecting clusters. Every cluster 10 has the same organization as shown in Fig. 3.

As illustrated in Fig. 3, the cluster 10 of the present embodimentcomprises a pluralityof processors 11 for conducting various processing, a shared memory 13 for being shared among the processors 11, a local network 12 for connecting the processors 11 and the shared memory 13, and a data transfer processing device 15 connected with the local network 12 for controlling input/output devices 14 and data transfer between anothercluster and this one via the network 40 interconnecting clusters.
The processor 11 issues an instruction to the same cluster 10 (hereinafter, referred to as the present cluster) having this processor 11 and also issues an instruction to another cluster 10, conducting various controls. Further, the processor 11 comprises a cluster discrimination unit 111 and an instruction transfer unit 112 which are employed in case of issuing a control instruction for controlling an input/output device 14 of another cluster 10, as indicated in Fig. 2. Fig. 2 shows only characteristic portion of an organizationinthisembodiment,whileotherportionsthereof are not shown there.
The cluster discrimination unit 111 makes a judgment whether an input/output instruction issued from the processor 11 of the present cluster is directed to the input/output device 14 of the present cluster, or it is directed to an input/output device 14 of another cluster 10.
When the input/output instruction is directed to ~1274~97~

the input/output device 14 of another cluster 10, the instruction transfer unit 112 executed transfer control so as to transfer the input/output instruction to another cluster 10 in which the input/output device 14 is mounted.
A local network port 113 controls an interface between the processor 11 and the local network 12.
The input/output device 14 is a device for executing input/output of various data. It is realized by output devices such as a printer, a display or the like, and by input devices such as a keyboard, a scanner or the like.
Every cluster 10 has a proper input/output device 14. The device 14 may be selectively arranged; how many input/output devices are to be mounted, what type of input/output device is to be mounted on which cluster, or the like.
As illustrated in Fig. 1, the data transfer processing device 15 comprises an instruction storage unit 151 for receiving and storing issued instructions, an instruction decoding unit 152 for reading out an instruction fromtheinstructionstorageunit151anddecodingit,ashared memoryaccessunit153forreadingandwritingthedatathrough access to the shared memory 13 of the present cluster 10, a data transfer unit 156 for executing data transfer between the network 40 interconnecting clusters and the input/output device 14, a transfer buffer 157 for temporarily storing the datatobetransferredtoanotherclusterlO,atransferbuffer control unit 158 for controlling reading and writing of the 217597~

data from and into the transfer buffer 157, a shared memory access unit 153, a transfer control unit 154 for controlling the data transfer unit 156 and the transfer buffer control unit 158, and a completion notifying unit 155 for detecting and notifying completion of the transfer. Fig. 1 shows only a characteristic portion of the organization of the present embodiment, while the other portions thereof are not illustrated there.
The instruction storage unit 151 is realized by a memory, for example, a RAM or the like, and it stores the instructions issued by the processor 11. It doesn't matter whether the instructions to be stored in the instruction storage unit 151 may be issued by the processor 11 mounted on the present cluster 10, or delivered from another cluster 10. Instructions issued by the processor 11 of the present cluster 10 are supplied from the local network port 150 to the instruction storage unit 151 via the local network 12, while instructions issued by the processor 11 of another cluster 10 are supplied there from the network port 160 interconnecting clusters via the network 40 interconnecting clusters.
The instruction decoding unit 152 is realized by, forexample,aCPUcontrolledbyaprogram. Theunit152reads out the transfer instruction stored in the instruction storage unit 151 and decodes the content thereof, thereby specifying the content of the instruction, and the cluster ~175970 10 and processor 11 having issued the instruction.
The shared memory access unit 153 is realized by, for example, a CPU controlled by a program. According to the instruction of the transfer control unit 154, the unit 153 reads out a desired data from the shared memory 13, sends it to the data transfer unit 156, and notifies the transfer control unit 154 of the data being acquired, or writes the data received from the data transfer unit 156 into the shared memory 13, similarly to the shared memory access unit in the conventional data transfer processing device.
The transfer control unit 154 is realized by, for example,aCPUcontrolledbyaprogram. Theunit154controls the shared memory access unit 153, the data transfer unit 156 and the transfer buffer control unit 158 according to the instruction decoded by the instruction decoding unit 152.
The completion notifying unit 155 issues the notice informing the completion of the processing at the completion of the execution of various processing by the control of the transfer control unit 154. The completion notice is transferred to the processor 11 having issued the instruction directing the corresponding processing.
The data transfer unit 156 is realized by, for example, a CPU controlled by a program. According to the instruction of the transfer control 154, the unit 156 transmitsthedatareceivedfromthesharedmemoryaccessunit 153 to the network 40 interconnecting clusters, or delivers 2~75970 the data received viathe network40interconnectingclusters to the shared memory access unit 153 so as to notify the transfer control unit 154 of the data being received, similarly to the data transfer unit of the conventional data transfer processing device.
The transfer buffer 157 is realized by a memory, for example, a RAM or the like. The unit 157 stores input/output data in the case of data input by the use of the input/output device 14 according to the input/output instruction issued from another cluster 10.
The transfer buffer control unit 158 is realized by, for example, a CPU controlled by a program. The unit 158 reads and writes data from and into the transfer buffer 157 according to the control of the transfer control unit 154.
The local network port 159 controls an interface between the data transfer processing device 15 and the local network 12. The network port 160 interconnecting clusters controls an interface between the data transfer processing device 15 and the network 40 interconnecting clusters.
Next, an operation of the information processing system of the first embodiment as constituted above, will be explained in the case of controlling an input/output device 14 belonging to a cluster 10 other than the present cluster 10 by the processor 11 mounted on the present cluster 10.
Hereinafter, a cluster which issues input/output instructions is referred to as a cluster lOA, while a cluster ~17597~

which performs processing by the input/output device thereof is referred to as a cluster lOB in the following description.
Characters A and B are attached to the reference numerals of the respective components of the clusters lOA and lOB for the purpose of discriminating between the components of the clusters lOA and lOB. In the example of the following operation, an input/output instruction issued from the cluster lOA is to direct the input/output device 14B of the cluster lOB to enter a predetermined data.
At first, the processor llA of the cluster lOA
issues an input/output instruction for controlling the input/output device 14B of the cluster lOB. At this time, the cluster discrimination unit lllA of the processor llA
judges whether the input/output instruction is directed to the input/output device of the present cluster or that of another cluster, on the basis of the cluster identifier specifyinganobjectiveclusterdescribedintheinput/output instruction. In this case, the input/output instruction towardtheinput/outputdevice14BoftheclusterlOBisissued, so that the cluster discrimination unit lllA recognizes that the instruction is directed to the input/output device of another cluster.
The instruction transfer unit 112A of the processor llA transfers the input/output instruction to the cluster lOB as the destination on the basis of the discriminationresultbytheclusterdiscriminationunitlllA.

292l7597a The input/output instruction is transferred to the data transfer processing device 15B of the cluster lOB, via the local network 12A, the data transfer processing device 15A
and the network 40 interconnecting clusters of the cluster lOA.
In the cluster lOB, the data transfer processing device 15B stores the received instruction into the instructionstorageunit 151B. Theinstructiondecodingunit 152B reads out the instruction stored in the instruction storage unit 15 lB, decodes it and gives an instruction of necessary processing to the transfer control unit 154B. In thiscase,sincetheinstructionistodirecttheinput/output device 14B to enter the predetermined data, the instruction decoding unit 152B sends the control information such as a device number (identifier data) of the input/output device 14B executing the processing, an address of the input data, a data lengthand the like, to the transfercontrol unit 154B, and gives an instruction to the transfer control unit 154B
so as toreceive thedataby thespecified input/outputdevice 14B, write the input data into the transfer buffer 157B and transfer the data stored into the transfer buffer 157B to the cluster lOA.
The transfer control unit 154B, on receipt of the instruction from the instruction decoding unit 152B, gives an instruction to the data transfer unit 156B so as to read out the data entered by the specified input/output device 14B

in units of a predetermined data length for data transfer (transfer units), and to transfer the read out data in units of every transfer to the transfer buffer control unit 158B.
Further, it gives an instruction to the transfer buffer control unit 158B so as to write the data delivered from the data transfer unit 156B in units of every transfer into the transfer buffer 157B .
According to the instruction of the transfer control 154B, the data transfer unit 156B reads out the data in units of every transfer from the specified input/output device 14B and sends the read out data in units of every transfer to the transfer buffer control unit 158B. After having read the wholè data, the data transfer unit 156B
notifies the transfer control unit 154B of the reading completion.
The transfer buffer control unit 158B writes the data received from the data transfer unit 156B into the transfer buffer 157B according to the instruction of the transfer control unit 154B. After having written the whole data, the transfer buffer control unit 158B notifies the transfer control unit 154B of the writing completion.
The transfer control unit 154B, on receipt of the notice of the writing completion from the transfer buffer controlunit 158B, givesaninstructiontothetransferbuffer control unit 158B so as to read out the data from the transfer buffer 157B andtransferthereadoutdatatothedatatransfer 217~70 unit 156B. The unit 154B gives an instruction to the data transfer unit 156B so as to transfer the data which has been transmitted from the transfer buffer control unit 158B, to the cluster lOA, to which data an operational instruction toward the transfer control unit 154A of the cluster lOA (a writing instruction of the transferred data into the shared memory 13A, a writing address, a data length of the transfer data and so on) and the cluster identifier of the destination cluster lOA are added.
The transfer buffer control unit 158B sends the data read out from the transfer buffer 157B to the data transfer unit 156B according to the instruction of the transfer control unit 154B.
The data transfer unit 156B first transmits the operationalinstructiontowardthetransfercontrolunit154A
ofthe cluster lOA, the cluster identifier ofthe destination cluster lOA and the like to the network 40 interconnecting clusters with the cluster lOA as the destination, and then, transmits the data received from the transfer buffer control unit 158B to the network 40 interconnecting clusters, also with the cluster lOA as the destination.
In the cluster lOA, the data transfer unit 156A
of the data transfer processing device 15A separates the additional information such as the operational instruction and the like from the data received via the network 40 interconnectingclusters andsends itto thetransfercontrol unit 154A.
The transfer control unit 154A gives an instruction to the data transfer unit 156A and the shared memory access unit 153A so as to write the data within the data transfer unit 156A into the shared memory 13A, on the basis of the received additional information.
Thedatatransferunit156Asendsthereceiveddata to the shared memory access unit 153A according to the instruction of the transfer control unit 154A.
The shared memory access unit 153A writes the received data sent from the data transfer unit 156A into the shared memory 13A and notifies the transfercontrol unit 154A
of the writing completion.
The transfer control unit 154A, on receipt of the noticeofthewritingcompletionfromthesharedmemoryaccess unit 153A, sends the completion notice and the cluster number (identifier data) of the cluster lOB to the completion notifying unit 155A.
The completion notifying unit 155A notifies the cluster 10~ of the data transfer being completed.
While, the transfer control unit 154B of the cluster lOB sends the cluster number (identifier data) of the cluster lOA and the processor number(identifier data) of the processor llA having issued the input/output instruction to the completion notifying unit 155B, where the completion notice of the data transfer is executed.

~17S970 The completion notifying unit 155B sends the cluster number of the cluster lOA and the processor number of the processor llA having issued the input/output instruction, together with the completion notice to the cluster lOA through the data transfer unit 156B, according to the instruction of the transfer control unit 154B.
As mentioned above, since the information processing system of the present embodiment comprises a transfer buffer 157 for storing the data obtained by conductingthedatainput/outputaccordingtotheinstruction issued from another cluster 10 and a transfer buffer control unit 158 for controlling the transfer buffer 157, it is not necessarytouseasharedmemory13mountedonthesamecluster 10 as the buffer for the data transfer when performing an input/output processing of the data. Therefore, the input/output processing can be directly executed according totheinput/outputinstructionreceivedfromanothercluster 10 without using the processor 11 mounted on the present cluster 10.
Next, asecondembodimentofthepresentinvention will be described hereinafter.
Fig. 8 is a block diagram showing an organization of a cluster 20 in an information processing system of the second embodiment. Fig. 7 is a block diagram showing an organization of a processor 21 mounted on each cluster 20 in the information processing system of the second embodiment.

~175970 Fig. 6 is a block diagram showing an organization of a data transfer processing device 25 mounted on the cluster 20 in the information processing system of the embodiment.
As shown in the figures, the information processing system of the second embodiment is different from that of the first embodiment in respect of the organization of the processor 21 and the data transfer processing device 25 mounted on the cluster 20. A local network 12, a shared memory 13, an input/output device 14 and a network 40 interconnecting clusters which are other structural components of the cluster, have the same organization as the respective corresponding structural components, and accordingly, they are identified by the same reference numerals as the first embodiment and the description thereof will be omitted herein.
The processor 21 of the second embodiment issues instructions to the present cluster 20 and another cluster 20, and executes various controls. As shown in Fig. 7, the processor 21 comprises a cluster discrimination unit 211, a composite instruction creating unit 212 and an instruction transfer unit 213 which are used in case of issuing control instructions for controlling an input/output device 24 of another cluster 20. Fig. 7 shows only a characteristic portion of an organization of this embodiment, and other portions thereof are not illustrated therein.
Theclusterdiscriminationunit211judgeswhether ~17597V

an input/output instruction issued from the processor 21 is directed to the input/output device 14 of the present cluster 20, or it is directed to the input/output device 14 ofanother cluster 20.
When the above input/output instruction is directed to the input/output device 14 of anothercluster 20, the composite instruction creating unit 212 creates a transfer instruction for transferring the data acquired by the input/output instruction to the present cluster 20 and adds the transfer instruction to the input/output instruction.
When the above input/output instruction is directed to the input/output device 14 of another cluster 20, the instruction transfer unit 213 controls transfer of the input/output instruction and the transfer instruction created by the composite instruction creating unit 214 to another cluster including that input/output device 14.
A local network port 214 controls an interface between the processor 21 and the local network 12.
The data transfer processing device 25, as shown in Fig. 6, comprises an instruction storage unit 251 for receiving and storing issued instructions, an instruction decoding unit 252 for reading out the instructions from the instruction storage unit 251 and decoding the same, a shared memoryaccessunit253forreadingandwritingthedatathrough access to the shared memory 13 of the present cluster 20, a data transfer unit 256 for carrying out the data transfer between the network 40 interconnecting clusters and the data transfer processing device 25 and between the input/output device 14 and the device 25, a transfer control unit 254 for controlling the shared memory access unit 253 and the data transfer unit 256, and a completion notifying unit 255 for detecting and notifying completion of the transfer. It is noted here that Fig. 6 shows only a characteristic portion of the organization of the second embodiment, and other portions thereof are not illustrated therein.
The instruction storage unit 251 is realized by a memory such as a RAM or the like, and it stores the instructions issued by the processor 21. It doesn't matter whether the instructions to be stored in the unit 251 may be issued by the processor 21 mounted on the present cluster 20 or delivered from another cluster 20. The instructions issued by the processor 21 of the present cluster 20 are supplied from the local network port 259 to the instruction storage unit 251 through the local network 12. While, the instructions issued by the processor 21 of another cluster 20 are supplied from the network port 260 interconnecting clusters to the instruction storage unit 251 through the network 40 interconnecting clusters.
The instruction decoding unit 252 is realized by, for example, a CPU or the like controlled by a program. The instruction decoding unit 252 reads out the transfer 217S97~

instruction stored in the instruction storage unit 251 and decodes the content thereof, thereby specifying the content of the instruction, and the cluster 20 and processor 21 which have issued the instruction.
The shared memory access unit 253 is realized by a CPU or the like controlled by a program. According to the instruction of the transfer control unit 254, the shared memoryaccessunit253readsoutadesireddatafromtheshared memory 13 so as to deliver it to the data transfer unit 256, and notifies the transfer control unit 254 of the data being acquired, or writes the data received from the data transfer unit 256 into the shared memory 13, similarly to the shared memory access unit of the conventional data transfer processing device.
The transfer control unit 254 is realized by a CPU
orthelikecontrolledbyaprogram,anditcontrolstheshared memory access unit 253, the data transfer unit 256 and a transferbuffercontrolunit258accordingtothe instruction decoded by the instruction decoding unit 252.
The completion notifying unit 255 issues a notice informing completion of the processing at the completion of executionofvariousprocessingbythecontrolofthetransfer control unit 254. The completion notice is delivered to the processor 21 having issued the instruction directing the corresponding processing.
The data transfer unit 256 is realized by a CPU

217~97~

or the like controlled by a program. According to the instruction of the transfer control unit 254, the data transfer unit 256 supplies the data received from the shared memory access unit 253 to the network 40 interconnecting clusters or delivers the data received via the network 40 interconnectingclusterstothesharedmemory access unit253 so asto notifythe transfercontrolunit254 ofthe databeing received, similarly to the data transfer unit of the conventional data transfer processing device.
The local network port 259 controls an interface between the data transfer processing device 25 and the local network 12. On the other hand, the network port 260 interconnecting clusters controls an interface between the data transfer processing device 25 and the network 40 interconnecting network.
An operation of the information processing system of the second embodiment having the above-described constitution will be now explained inthe case of controlling the input/output device 14 belonging to a cluster 20 other than the present cluster 20 by the processor 21 mounted on the present cluster 20. In the following description, as shown in Fig. 5, the cluster which issues an input/output instruction is referredto as aclusterZOA,whilethecluster which performs the processing with the input/output device thereof is referred to as a cluster 20B. For the purpose of discriminatingbetweencomponentsoftheclusters20Aand20B, 217597~

characters A and B are attached to reference numerals of the respective components of the clusters 20A and 20B. In an example of the operation described below, the input/output instruction issued from the cluster 20A is to direct the input/output device 14B of the cluster 20B to enter a certain data.
In the cluster 20A, the processor 21A issues an input/output instruction for controlling the input/output device 14B of the cluster 20B. At this time, the cluster discrimination unit 211A of the processor 21A judges whether the input/output instruction is directed to the input/output device of the present cluster, or it is directed to the input/output device of another cluster, on the basis of the cluster identifierspecifying anobjectiveclusterdescribed in the input/output instruction. In this case, because the input/output instructiondirectedtothe input/output device 14B of the cluster 20B is issued, the cluster discrimination unit 21lA recognizes that the input/output instruction is directed to the input/output device of another cluster.
On the basis of the discrimination result of the cluster discrimination unit 211A, the composite instruction creating unit 212A creates instructions for shifting the transferring parameter specified by the input/output instruction from the shared memory 23A of the cluster 20A to a buffer on the shared memory 23B of the cluster 20B, as well as instructions for transferring the data entered in the ~175970 input/output device 14B of the cluster 20B to a buffer on the shared memory 23A of the cluster 20A after the data has been temporarily stored in the shared memory 23B, and adds these instructions to the input/output instruction. It is noted here that the transferring parameter means an instruction program for transferring to the cluster 20A the data delivered from the input/output device 14B of the cluster 20B in response to the input/output instruction.
The instruction transfer unit 212A transfers the composite instruction in which the input/output instruction and the instruction created by the composite instruction creating unit 212A are combined with each other, to the cluster 20B on the basis of the discrimination result of the cluster discrimination unit 211A. Consequently, the input/output instruction is supplied to the data transfer processing device 25A of the cluster 20B via the local network 12A, the data transfer processing unit 25A and the network 40 interconnecting clusters.
Then, in the cluster 20B, the data transfer processing device 25B stores the received instruction in the instruction storage unit 251B. The instruction decoding unit 252B reads out and decodes the instruction stored in the instruction storage unit 251B, and gives an instruction of necessary processing to the transfer control unit 253B. In this case, in order to shift the transferring parameter stored in the shared memory 13A of the cluster 20A to the shared memory ~17~970 13B of the cluster 20B, the instruction decoding unit 252B
gives an instruction to the transfer control unit 254B so as to read out the aimed transferring parameter from the shared memory 13Aofthecluster20A and write it inthesharedmemory 13B of the present cluster 2OB.
Accordingtotheinstruction,thetransfercontrol unit254B gives aninstructionto thedatatransferunit256B
soastosupplyanoperationalinstructiontowardthetransfer control unit 254A of the cluster 20A (such as a reading instruction from the shared memory 22, a reading starting address, a transfer length and so on) and the cluster identifier of the destination cluster 20B to the cluster 20A
via the network 40 interconnecting clusters. The data transfer unit 256B supplies the operational instruction and the cluster identifier to the cluster 20A according to the instruction of the transfer control unit 254B.
Next, the transfer control unit 254A, on receipt of the operational instruction and the like by the data transfer processing device 25A of the cluster 20A, controls the shared memory access unit 253A so as to read out the transferring parameter from the shared memory 13, and transmits the transferring parameter to the cluster 20B.
Whenthecluster20B receivesthe transferringparameter, the transfer control unit 254B of the data transfer processing device 25B controls the shared memory access unit 253B so as to write the transferring parameter in the shared memory 13B.

217597~

In this way, the processing for shifting the transferringparameterfortransferringthedataenteredfrom the input/output device 14B of the cluster 20B to the cluster 20A according to the input/output instruction from the cluster 20A, is completed.
Then, the instruction decoding unit 252B of the cluster20Bsendstothetransfercontrolunit254Bthecontrol information such as a device number (identification data) of the input/output device 14Bwhichcarries outtheprocessing, an address of the input data, a length of the data, a reading startingaddressonthesharedmemory 13B andsoon, depending on the result of decoding the instruction stored in the instructionstorageunit251B. Theinstructiondecodingunit 252B gives an instruction to the transfer control unit 254B
so as to enter the data from the input/output device 14B and write the entered data in the shared memory 13B.
Accordingtotheinstruction,thetransfercontrol unit 254B gives an instruction to the data transfer unit 256 so as to read out the data from the specified input/output device14Bandtodeliverthereadoutdatatothesharedmemory access unit 253B. The transfer control unit 254B also gtves an instruction to the shared memory access unit 253B so as to write the data sent from the data transfer unit 256B in the shared memory 13B.
According to the instruction of the transfer control unit 254B, the data transfer unit 256B reads out the ~17S97U

data fromthespecified input/outputdevice 14B, deliversthe read out data to the shared memory access unit 253B, and notifies the transfer control unit 154B of the reading completion. The shared memory access unit 253B writes the data received from the data transfer unit 256B in the shared memory 13B according to the instruction of the transfer controlunit254B,andnotifiesthetransfercontrolunit254B
of the writing completion.
The data input processing by the input/output instructions from the cluster 20A is thus finished.
Thereafter, the entered data is transferred to the cluster 20A through a processing similar to the normal data transfer processing between the shared memories of the clusters.
More specifically, first, in accordance with the transferring parameter stored in the shared memory 13, the instruction decoding unit 252B gives an instruction to the transfer control unit 254B so as to read out the entered data from the input buffer in the shared memory 13B to transfer the same to the shared memory 13A of the cluster 20A.
Accordingtotheinstruction,thetransfercontrol unit 254B receives information such as a reading starting address fromtheinstructiondecodingunit252B,adatalength of the transfer data and a writing starting address into the shared memory13Aofthecluster20A, andgives aninstruction to the shared memory access unit 253B so as to read out the data from the shared memory 13B in units of transfer for the data transfer processing.
The shared memory access unit 253B delivers the data read out from the shared memory 13B to the data transfer unit 256B and notifies the transfer control unit 254B of the reading completion.
The transfer control unit 254B, on receipt of the noticeofthereadingcompletionfromthesharedmemoryaccess unit 153B, givesan instructiontothe datatransferunit256B
so as tosend the data delivered from the shared memory access unit253Btothenetwork40interconnectingclusters. Atthis time, the cluster identifier of the cluster 20A, a writing address into the shared memory 13A of the cluster 20A, a data length of the transfer data and operational instructions to the data transfer processing device 25A of the cluster 20A
are added to the transfer data.
Thedatatransferunit256Btransfersthetransfer data which is entered in response to the input/output instruction from the cluster 20A and stored in the shared memory 13B to the cluster 20A via the network 40 interconnectingclusters,accordingtotheinstructionofthe transfer control unit 254B.
Next! in the cluster 20A, the data transfer unit 256A of the data transfer processing device 25A separates the additional information such as the operational instructions from the data received via the network 40 interconnecting clusters and delivers it to the transfer control unit 254A.

The transfer control unit 254A gives an instruction to the data transfer unit 256A and the shared memory access unit 254A So as to write the data within the data transfer unit 254A into the shared memory 13A, on the basis of the additional information received.
The data transfer unit 256A delivers the received data to the shared memory access unit 253A according to the instruction of the data control unit 254A.
The shared memory access unit 253A writes the received data delivered from the data transfer unit 256A into the shared memory 13A, and notifies the transfer control unit 254A of the writing completion.
Meanwhile, when the transfer of all data stored in the transfer buffer 257 is finished, the transfer control unit 254B of the cluster 20B sends the cluster number (identification data) of the cluster 20A and the processor number (identification data) of the processor 21A which has issued the input/output instruction to the completion notifying unit 255B, where the completion notice of the data transfer is executed.
The completion notifying unit 255B transfers the-cluster number of the cluster 20A, the processor number of the processor 21A which has issued the input/output instruction and the completion notice of the data transfer to the cluster 20A via the data transfer unit.
As described above, according to the information ~17597~

processing system of the second embodiment, the processor 21 is provided with the composite instruction creating unit 212 which creates the transfer instructions for returning the data acquired by executing the input/output instruction when the processor 21 issues the input/output instruction for controllingthe input/output device 14Ofanothercluster20, and which adds the transfer instruction to the input/output instruction, after the data is acquired by the cluster 20 having executed the input/output instruction, the data transfer processing is automatically performed between the clusters 20, so that the acquired data can be returned to the cluster having issued the input/output instruction.
Accordingly, the input/output processing and the data transferprocessingcan be directlycarriedout inaccordance with the input/output instruction received from another cluster 10 without using the processor 11 mounted on the present cluster 10.
As set forth so far, according to the information processing system of the present invention, it is possible ~to perform input/output of data by controlling an input/output device of another cluster from a predetermined cluster without requiring the input/output processing by the processor of another cluster.
Therefore, in the case where one of a plurality of clusters is regarded as a front end cluster and others are regarded as backend clusters and input/output devices of the ', ~17~g7~

respective clusters are concentrically controlled by the front end cluster, the load Df the back end clusters can be reduced and the overall performance of the information processing system can be prevented from being deteriorated.
Although the invention has been illustrated and described with respect to exemplary embodiment thereof, it should be understood by those skilled in the art that the foregoing and various other changes, omissions and additions may be made therein and thereto, without departing from the spirit and scope of the present invention. Therefore, the present invention should not be understood as limited to the specific embodiment set out above but to include all possible embodiments which can be embodies within a scope encompassed and equivalents thereof with respect to the feature set out in the appended claims.

Claims (12)

1. An information processing system including a plurality of clusters connected through a network interconnecting clusters, each of said clusters comprising a plurality of processors for performing various processing, a shared memory for being shared among the processors, a local network connecting the processors and shared memory, and a data transfer processing device, which is connected with the local network, for controlling input/output devices and data transfer between another cluster and this one via the network interconnecting clusters, comprising:
a first cluster which issues a control instruction for controlling said input/output device of another cluster and a second cluster which executes processing by said input/output device according to the control instruction, wherein said processor mounted on said first cluster comprising:
a cluster discrimination means for discriminating a cluster which executes a control instruction when the control instruction is issued;
an instruction transfer means for transferring the control instruction to said corresponding second cluster according to the judgment of said cluster discrimination means;

said data transfer processing device mounted on said second cluster comprising:
a data transfer means for executing data transfer between said network interconnecting clusters and the input/output device;
a transfer data storage means for temporally storing the data to be transferred to another cluster;
a transfer data reading and writing control means for controlling reading and writing of the data from and into said transfer data storage means;
a transfer control means for controlling said data transfer means, said transfer data reading and writing control means; and a completion notifying means for detecting completion of the transfer and notifying the data destination of the transfer completion.
2. An information processing system as set forth in Claim 1, wherein said cluster discrimination means judges whether the control instruction issued by said processor is directed toward an input/output device of the same cluster, or it is directed to an input/output device of another cluster, and said instruction transfer means performs transfer control for transferring the input/output instruction to said corresponding second cluster when the control instruction is an input/output instruction toward the input/output device of another cluster.
3. An information processing system as set forth in Claim 1, wherein when said transfer control means and said data transfer means execute the data input by means of the input/output device according to the control instruction issued from said first cluster, said transfer data reading and writing control means carries out reading and writing of the input data from and into said transfer data storage means according to the control of said transfer control means.
4. An information processing system as set forth in Claim 1, wherein said cluster discrimination means of said first cluster judges whether the control instruction issued by said processor is directed to an input/output device of the same cluster, or it is directed to an input/output device of another cluster, and said instruction transfer means of said first cluster performs transfer control for transferring the input/output instruction to said corresponding second cluster when the control instruction is an input/output instruction toward the input/output device of another cluster, and when said transfer control means and said data transfer means execute the data input by means of the input/output device according to the control instruction issued from said first cluster, said transfer data reading and writing control means of said second cluster carries out reading and writing of the input data from and into said transfer data storage means according to the control of said transfer control means.
5. An information processing system as set forth in Claim 1, wherein all the clusters constituting said information processing system serve as both parts of said first cluster and said second cluster.
6. An information processing system including a plurality of clusters connected through a network interconnecting clusters, each of said clusters comprising a plurality of processors for performing various processing, a shared memory for being shared among the processors, a local network connecting the processors and shared memory, and a data transfer processing device, which is connected with the local network, for controlling input/output devices and data transfer between another cluster and this one via the network interconnecting clusters, comprising:

a first cluster which issues a control instruction for controlling said input/output device of another cluster and a second cluster which executes processing by said input/output device according to the control instruction, wherein said processor mounted on said first cluster comprising:
a cluster discrimination means for discriminating a cluster which executes a control instruction when the control instruction is issued;
a composite instruction creating means for creating a transfer instruction for transferring the processing result by the control instruction from said second cluster to said first cluster, so as to add the transfer instruction to the control instruction, depending on the judgment of said cluster discrimination means;
an instruction transfer means for transferring the control instruction to said corresponding second cluster according to the judgment of said cluster discrimination means;
said data transfer processing device mounted on said second cluster comprising:
a data transfer means for executing data transfer between said network interconnecting clusters and the input/output device;
a transfer control means for controlling said data transfer means, said transfer data reading and writing control means, and a completion notifying means for detecting completion of the transfer and notifying the data destination of the transfer completion.
7. An information processing system as set forth in Claim 6, wherein said composite instruction creating means creates instructions for shifting the transferring parameter specified by the control instruction from the shared memory of said first cluster to a buffer on the shared memory of said corresponding second cluster as well as instructions for transferring the data entered by the input/output device of said second cluster to a buffer on the shared memory of said first cluster, so as to add these instructions to the control instruction.
8. An information processing system as set forth in Claim 6, wherein all the clusters constituting said information processing system serve as both parts of said first cluster and said second cluster.
9. A cluster including a plurality of processors for performing various processing, a shared memory for being shared among the processors, a local network connecting the processors and the shared memory, and a data transfer processing device, which is connected with the local network, for controlling input/output devices and data transfer between another cluster and this one via a network interconnecting clusters, said cluster being connected to another cluster via the network interconnecting clusters, in which said processor comprising:
a cluster discrimination means for discriminating a cluster which executes the control instruction when the control instruction is issued;
an instruction transfer means for transferring the control instruction to another corresponding cluster according to the judgment of said cluster discrimination means; and said data transfer processing device comprising:
a data transfer means for executing data transfer between said network interconnecting clusters and the input/output device;
a transfer data storage means for temporally storing the data to be transferred to another cluster;
a transfer data reading and writing control means for controlling reading and writing of the data from and into said transfer data storage means;
a transfer control means for controlling said data transfer means and said transfer data reading and writing control means; and a completion notifying means for detecting completion of the transfer and notifying the data destination of the transfer completion.
10. A cluster as set forth in Claim 9, wherein said cluster discrimination means discriminates whether the control instruction issued by said processor is directed toward an input/output device of the same cluster or it is directed toward an input/output device of another cluster, and said instruction transfer means performs transfer control for transferring the input/output instruction to another cluster when the control instruction is an input/output instruction toward the input/output device of another cluster, and when said transfer control means and said data transfer means execute the data input by means of the input/output device according to the control instruction issued from another cluster, said transfer data reading and writing control means carries out reading and writing of the input data from and into said transfer data storage means according to the control of said transfer control means.
11. A cluster including a plurality of processors for performing various processing, a shared memory for being shared among the processors, a local network connecting the processors and the shared memory, and a data transfer processing device, which is connected with the local network, for controlling input/output devices and data transfer between another cluster and this one via a network interconnecting clusters, said cluster being connected to another cluster via the network interconnecting clusters, in which said processor comprising:
a cluster discrimination means for discriminating a cluster which executes the control instruction when the control instruction is issued;
a composite instruction creating means for creating a transfer instruction for transferring the processing result by the control instruction from said second cluster to said first cluster, so as to add the transfer instruction to the control instruction, depending on the judgment of said cluster discrimination means;
an instruction transfer means for transferring the control instruction to another corresponding cluster according to the judgment of said cluster discrimination means; and said data transfer processing device comprising:
a data transfer means for executing data transfer between said network interconnecting clusters and the input/output device;
a transfer data storage means for temporally storing the data to be transferred to another cluster;

a transfer data reading and writing control means for controlling reading and writing of the data from and into said transfer data storage means;
a transfer control means for controlling said data transfer means and said transfer data reading and writing control means; and a completion notifying means for detecting completion of the transfer and notifying the data destination of the transfer completion.
12. A cluster as set forth in Claim 11, wherein said composite instruction creating means creates instructions for shifting the transferring parameter specified by the control instruction from the shared memory of the same cluster to a buffer on the shared memory of another cluster as well as instructions for transferring the data entered by the input/output device of another cluster to a buffer on the shared memory of the same cluster, so as to add these instructions to the control instruction, on the basis of the discrimination result of said cluster discrimination means.
CA002175970A 1995-05-08 1996-05-07 Information processing system for performing mutual control of input/output devices among a plurality of clusters Expired - Fee Related CA2175970C (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP7109422A JP2766216B2 (en) 1995-05-08 1995-05-08 Information processing device
JP7-109422 1995-05-08

Publications (2)

Publication Number Publication Date
CA2175970A1 CA2175970A1 (en) 1996-11-09
CA2175970C true CA2175970C (en) 2000-02-08

Family

ID=14509847

Family Applications (1)

Application Number Title Priority Date Filing Date
CA002175970A Expired - Fee Related CA2175970C (en) 1995-05-08 1996-05-07 Information processing system for performing mutual control of input/output devices among a plurality of clusters

Country Status (4)

Country Link
US (1) US5860026A (en)
EP (1) EP0742520A3 (en)
JP (1) JP2766216B2 (en)
CA (1) CA2175970C (en)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6154765A (en) 1998-03-18 2000-11-28 Pasocs Llc Distributed digital rule processor for single system image on a clustered network and method
JP3866426B2 (en) 1998-11-05 2007-01-10 日本電気株式会社 Memory fault processing method in cluster computer and cluster computer
US8225002B2 (en) 1999-01-22 2012-07-17 Network Disk, Inc. Data storage and data sharing in a network of heterogeneous computers
US6549988B1 (en) 1999-01-22 2003-04-15 Ilya Gertner Data storage system comprising a network of PCs and method using same
US6516343B1 (en) * 2000-04-24 2003-02-04 Fong Pong Computer system and method for enhancing memory-to-memory copy transactions by utilizing multiple system control units
JP2005149082A (en) * 2003-11-14 2005-06-09 Hitachi Ltd Storage controller and method for controlling it
JP2012256087A (en) * 2009-09-10 2012-12-27 Hitachi Ltd Data processing device and data processing method
US8504780B2 (en) * 2011-04-08 2013-08-06 Hitachi, Ltd. Computer, computer system, and data communication method

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4780808A (en) * 1981-11-27 1988-10-25 Storage Technology Corporation Control of cache buffer for memory subsystem
US4476526A (en) * 1981-11-27 1984-10-09 Storage Technology Corporation Cache buffered memory subsystem
US4607346A (en) * 1983-03-28 1986-08-19 International Business Machines Corporation Apparatus and method for placing data on a partitioned direct access storage device
US5212773A (en) * 1983-05-31 1993-05-18 Thinking Machines Corporation Wormhole communications arrangement for massively parallel processor
JPH07122868B2 (en) * 1988-11-29 1995-12-25 日本電気株式会社 Information processing equipment
US5218677A (en) * 1989-05-30 1993-06-08 International Business Machines Corporation Computer system high speed link method and means
US5133060A (en) * 1989-06-05 1992-07-21 Compuadd Corporation Disk controller includes cache memory and a local processor which limits data transfers from memory to cache in accordance with a maximum look ahead parameter
JP2780821B2 (en) * 1989-09-22 1998-07-30 株式会社日立製作所 Online dump method and disk subsystem
US5214768A (en) * 1989-11-01 1993-05-25 E-Systems, Inc. Mass data storage library
US5165038A (en) * 1989-12-29 1992-11-17 Supercomputer Systems Limited Partnership Global registers for a multiprocessor system
US5289470A (en) * 1992-12-14 1994-02-22 International Business Machines Corp. Flexible scheme for buffer space allocation in networking devices
WO1994027216A1 (en) * 1993-05-14 1994-11-24 Massachusetts Institute Of Technology Multiprocessor coupling system with integrated compile and run time scheduling for parallelism

Also Published As

Publication number Publication date
JP2766216B2 (en) 1998-06-18
JPH08305677A (en) 1996-11-22
EP0742520A3 (en) 1999-09-01
EP0742520A2 (en) 1996-11-13
US5860026A (en) 1999-01-12
CA2175970A1 (en) 1996-11-09

Similar Documents

Publication Publication Date Title
KR100279784B1 (en) Processing unit
US5140682A (en) Storage control apparatus
EP0330475A2 (en) Configuration control system
US20030177288A1 (en) Multiprocessor system
CA2175970C (en) Information processing system for performing mutual control of input/output devices among a plurality of clusters
JP2793517B2 (en) Data transfer control device
CN101198940A (en) External device access device
US5685010A (en) Data transfer control device for controlling data transfer between shared memories of network clusters
KR100357284B1 (en) The one chip asynchronous microprocessor Inter Processor Communication circuit
US6223196B1 (en) Shared mac (multiply accumulate) system and method
US5107416A (en) Arrangement for simultaneously dealing with transfer requests produced by central, arithmetic and input-output processors of a super computer
JPH08106443A (en) Data processing system and parallel computer
US5185879A (en) Cache system and control method therefor
EP0169909B1 (en) Auxiliary memory device
US20030026249A1 (en) Inter-nodal data transfer system and data transfer apparatus
JPH08212178A (en) Parallel computer
CN100449514C (en) Method and memory controller for scalable multi-channel memory access
JPH05101109A (en) Data base arithmetic processing unit
JPH11184761A (en) Read modify write control system
JPH0895928A (en) Memory sharing system
US6085297A (en) Single-chip memory system including buffer
JP2005285042A (en) Data batch transfer method and apparatus
JPH0944438A (en) Multiplex processing method for synchronous type input/ output instruction
JPH0833869B2 (en) Data processing device
JP2752834B2 (en) Data transfer device

Legal Events

Date Code Title Description
EEER Examination request
MKLA Lapsed