US20040172628A1 - Method and system for installing program in parallel computer system - Google Patents

Method and system for installing program in parallel computer system Download PDF

Info

Publication number
US20040172628A1
US20040172628A1 US10/795,304 US79530404A US2004172628A1 US 20040172628 A1 US20040172628 A1 US 20040172628A1 US 79530404 A US79530404 A US 79530404A US 2004172628 A1 US2004172628 A1 US 2004172628A1
Authority
US
United States
Prior art keywords
program
buffer
node
receiving
nodes
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.)
Abandoned
Application number
US10/795,304
Inventor
Hiromitsu Aramaki
Hiroyuki Takatsu
Akio Tatsumi
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.)
Hitachi Ltd
Original Assignee
Hitachi 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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to US10/795,304 priority Critical patent/US20040172628A1/en
Publication of US20040172628A1 publication Critical patent/US20040172628A1/en
Abandoned legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/61Installation
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99951File or database maintenance
    • Y10S707/99952Coherency, e.g. same view to multiple users

Definitions

  • the present invention relates to installation of a program into nodes independent of one another in a parallel computer system including plural nodes.
  • An installing method for use in a parallel computer system is disclosed, for example, in JP-A-11-296349, wherein upon completion of installation into a particular node, this node serves as a server machine to sequentially install software into different nodes to reduce time required for the installation in the overall system.
  • JP-A-6-309261 discloses a method including a step of sending an install instruction from a server machine, a step of requesting required software from client machines to the server machine, and a step of starting installation of the software into plural client machines.
  • JP-A-6-59994 discloses a method including a step of sending an install start instruction and install information from a primary station computer device to plural secondary station computer devices to install a program into plural client machines.
  • a parallel computer system may include a number of nodes ranging from several tens to several thousands or more because of requirements imposed thereto to execute a large scale of computations.
  • N the number of nodes in a system
  • T time required for installation per node
  • the present invention is characterized by simultaneously performing install processing in plural nodes by simultaneously transferring data on a program to be installed, utilizing communication means interconnecting the respective nodes.
  • An arbitrary node in a parallel computer system reads every predefined amount of programs from a storage medium which stores the programs, and delivers program data to all nodes, into which the programs are to be installed, through the communication means. Each node receives the data and writes the data into a storage device of the node itself to install the same program in parallel.
  • a master install control program for distributing a program is executed by one node or an install device in the parallel computer system.
  • the master install control program reads a program from a storage medium which stores programs, and transfers the read program.
  • plural buffers are used for communication of data associated with the reading and transferring of the program.
  • a node receiving the program executes an install control program for receiving the distributed data.
  • the install control program receives data on the program, which is to be executed in the node, from the distribution node, and writes the received data into a storage device of the node itself.
  • Plural buffers are utilized for communication of data during the reception of data and the writing into the storage device.
  • the master install control program and the install control program rely on the buffers to process in parallel the reading of the program from the recording medium, the delivery of the read program, the reception of the program, and the writing of the program into the storage device, to reduce time required for installing the program into plural nodes.
  • transfer time is calculated as follows. Assuming for example that the number of nodes is N; a total data size of a program to be distributed is A; a predefined amount of data size for distribution is B; time required for reading the predefined amount of data is C; time required for transferring the predefined amount of data to all nodes is D; time required for receiving the predefined amount of data is E; and time required for writing the predefined amount of data into an external storage device is F, time required for installing the program into all nodes is expressed by ((A/B) ⁇ F)+(C+D+E).
  • (C+D+E) is time taken for transferring the first predefined amount of data in the processing for writing the predefined amount of data into the external storage device. Subsequently, the data read processing, the transfer-to-node processing and the data reception processing are performed in parallel through the buffers, so that time required for the processing is included in time required for writing data into the storage device.
  • FIG. 1 is a block diagram illustrating the configuration of a parallel computer system
  • FIG. 2 is a diagram illustrating a data flow during installation of a program
  • FIG. 3 is a block diagram illustrating the configuration of a master install control program
  • FIG. 4 is a block diagram illustrating the configuration of an install control program
  • FIG. 5 is a flow chart illustrating the flow of processing executed by the master install control program
  • FIG. 6 is a flow chart illustrating data read processing in the master install control program
  • FIG. 7 is a flow chart illustrating data transfer processing in the master install control program
  • FIG. 8 is a flow chart illustrating the flow of processing executed by the install control program
  • FIG. 9 is a flow chart illustrating data reception processing in the install control program.
  • FIG. 10 is a flow chart illustrating disk write processing in the install control program.
  • FIG. 1 illustrates the configuration of a parallel computer system.
  • plural nodes each including a CPU, a memory and a disk drive, are interconnected through an internal network 11 .
  • a node ( 1 ) 2 includes a computation unit ( 1 ) 21 having a CPU and a memory; a disk 22 ; and an install device 23 such as a hard disk or a magnetic tape.
  • the node ( 1 ) 2 is connected to the internal network 11 through a communication device 12 which has a broadcast or multicast transfer function.
  • all nodes i.e., node ( 1 ) 2 , node ( 2 ) 3 , node ( 3 ) 4 , node ( 4 ) 5 , . . . , node (n- 1 ) 6 and node (n) 7 ) are interconnected to the internal network 11 .
  • FIG. 2 is a block diagram illustrating an example in which a program to be distributed is read from the install device 23 and installed into all the nodes through the internal network 11 .
  • Data read processing 81 at the node ( 1 ) 2 reads every predefined amount of the program to be distributed, to data dividing buffers 90 from the install device 23 storing the program to be distributed.
  • Data transfer processing 82 transfers the data read into the buffers to all the nodes to which the program is to be distributed, through the internal network 11 .
  • One of all the nodes is represented by the node ( 2 ) 3 .
  • data reception processing 111 remains in a data waiting state, for waiting data from the network 11 .
  • the data reception processing 111 initiates to read the transferred data into data dividing buffers 120 .
  • Disk write processing 112 writes the data read into the buffers into a disk 33 of the node ( 2 ) 3 .
  • a master install control program 80 including the data read processing 81 and the data transfer processing 82 , and an install control program 120 including the data reception processing 111 and the disk write processing 112 are stored in the storage device of each node.
  • the install control program 120 and the master install control program 80 may be stored in a storage device of a distributing node, such that the distributing node distributes the install control program 120 to receiving nodes when the parallel computer system is powered on. In this event, the distributing node sequentially transfers the install control program to the receiving nodes.
  • FIG. 3 illustrates the configuration of the master install control program 80 .
  • the master install control program 80 transfers every predefined amount of data read from the install device 23 to all of the node ( 1 ) 2 , node ( 2 ) 3 , node ( 3 ) 4 , node ( 4 ) 5 , . . . , node (n ⁇ 1) 6 and node (n) 7 to which the program is distributed.
  • the master install control program 80 will be described in detail.
  • the master install control program 80 includes the data read processing 81 for reading data from the install device 23 which stores programs; the data transfer processing 82 for transferring the data read in the data read processing 81 to all the nodes; data dividing buffers 90 each of which stores the predefined amount of data read from the install device 23 which stores programs; and buffer management tables 100 for managing the data dividing buffers 90 .
  • Each buffer in the data dividing buffers 90 has a size equivalent to that of the predefined amount read from the install device 23 .
  • the buffer management tables 100 store information indicative of the states of the associated buffers to control the data dividing buffers 90 used in the data read processing 81 and the data transfer processing 82 .
  • the buffer management tables 100 include table ( 1 ) 101 , table ( 2 ) 102 , . . . , table (m ⁇ 1) 103 and table (m) 104 corresponding to buffer ( 1 ) 91 , buffer ( 2 ) 92 , . . . , buffer (m ⁇ 1) 93 and buffer (m) 94 in the data dividing buffers 90 .
  • FIG. 4 illustrates the configuration of the install control program 110 .
  • the install control program 110 in each of the node ( 1 ) 2 , node ( 2 ) 3 , node ( 3 ) 4 , node ( 4 ) 5 , node (n ⁇ 1) 6 and node (n) 7 is initiated by the master install control program 80 .
  • the install control program 110 includes data reception processing 111 for receiving data transferred from the master install control program 80 ; disk write processing 112 for writing data read in the data reception processing 111 into a disk; data dividing buffers 120 for storing every predefined amount of data transferred from the master install control program 80 and received in the data reception processing 111 ; and buffer management tables 130 for managing the data dividing buffers 120 .
  • Each buffer in the data dividing buffers 120 has a size equivalent to that of the predefined amount read from the install device 23 .
  • the flow chart in FIG. 5 illustrates the flow of processing executed by the master install control program 80 .
  • the master install control program 80 reserves a region in the data dividing buffers 90 for storing data read from the install device 23 , and a region in the buffer management tables 100 for managing the data dividing buffers 90 (F 50 ), and initializes the data division management tables 100 to an initial state (F 51 ).
  • the program 80 initiates the install control programs 110 in all the nodes (F 52 ).
  • the program 80 initiates the data read processing 81 and the data transfer processing 82 in the master install control program 80 (F 53 ). In this event, the install control programs 110 in all the nodes are sequentially initiated in each of the nodes (F 52 ).
  • Each of the receiving nodes is additionally provided with confirmation means for confirming whether a node power source is ON or OFF, and notification means for notifying a distributing node of the power-source state of the node itself.
  • the distributing node may identify receiving nodes in which the power source is in ON state, before initiating the install control program 110 in all the nodes (F 52 ), to initiate the install control programs 110 in the operable receiving nodes (F 52 ).
  • FIG. 6 is a flow chart illustrating the data read processing 81 .
  • the data read processing 81 is the processing for sequentially reading the predefined amount of data from the install device 23 into buffer ( 1 ) 91 , buffer ( 2 ) 92 , . . . , buffer (m ⁇ 1) 93 and buffer (m) 94 .
  • the data read processing 81 stores the location of the buffer ( 1 ) 91 which is the head of the data dividing buffers 90 (F 60 ). Next, the data read processing 81 finds a corresponding table in the buffer management tables 100 from the stored buffer location (F 61 ), and checks the state of the buffer from the found table (F 62 ).
  • a buffer may take one of the following four states: a state (a reading-in-progress state) in which the predefined amount of data is being read from the install device 23 into the buffer; a state (a reading-completion state) in which the data has been completely read into the buffer; a state (a transfer-completion state) in which the data has been completely transferred to all the nodes; and a state in which a program has been fully read from the install device 23 (End of File). These states are represented by numerical values 0, 1, 0, ⁇ 1 from the first state. It should be noted that the reading-in-progress state and the transfer-completion state are synonym. When the buffer is in the state “1,” the processing 81 waits for an event (F 63 ).
  • the processing 81 checks whether or not data still remains in the install device 23 (F 64 ). If data remains, the predefined amount of data is read from the install device 23 into the buffer (F 65 ). Then, the processing 81 transitions the state of the buffer to the reading-completion state (F 66 ). The processing 81 finds and stores the location of the next buffer (F 67 ), and returns to F 61 . If no data remains in the install device 23 , the processing 81 sets a table corresponding to the buffer location to “ ⁇ 1” (F 68 ), followed by termination of the flow. The correspondence between the buffers and the tables is made by reserving arrays of the same length.
  • the head of the array is pointed. Also, when the state of the buffer is set to “1” (F 66 ), and when the data transfer processing 82 is waiting for an event when the state of the buffer is set to “ ⁇ 1” (F 68 ), the data transfer processing 82 is released from the event waiting state, and forced to continue the processing.
  • FIG. 7 is a flow chart illustrating the data transfer processing 82 .
  • the data transfer processing 82 is the processing for transferring data read into the data dividing buffers 90 in the data read processing 81 to the install control program 110 in each of the nodes.
  • the data transfer processing 82 stores the location of the buffer ( 1 ) 91 which is the head of the data dividing buffers 90 (F 70 ).
  • the processing 82 finds a corresponding table in the buffer management tables 100 from the stored buffer location (F 71 ), and checks the state of the buffer from the found table (F 72 , F 74 ).
  • the buffer may take one of the four states similar to the foregoing.
  • the processing 82 waits for an event (F 73 ).
  • the processing 82 notifies all the nodes that the data has been fully read (the end of data is reached) (F 75 ), followed by termination of the flow.
  • the processing 82 transfers the data in the buffer to all the nodes (F 76 ).
  • the processing 82 transitions the state of the buffer to the transfer-completion state (F 77 ), stores the location of the next buffer (F 78 ), and returns to F 71 . If the end location of the array is reached in determining the next location, the head of the array is pointed in a manner similar to the foregoing. Also, when the data read processing 81 is waiting for an event when the state of the buffer is set to “0” (F 77 ), the data read processing 81 is released from the event waiting state, and forced to continue the processing.
  • the flow chart in FIG. 8 illustrates the flow of processing executed by the install control program 110 .
  • the program 110 reserves a region in the data dividing buffers 120 for storing data transferred from the data transfer processing 82 in the master install control program 80 , and a region in the buffer management tables 130 for managing the data dividing buffers 120 (F 80 ), and initializes the data-division management tables 130 (F 81 ) into the initial state.
  • the program 110 initiates the data reception processing 111 and the disk write processing 112 in the install control program 110 (F 82 ).
  • FIG. 9 is a flow chart illustrating the data reception processing 111 .
  • the data reception processing 111 is the processing for sequentially receiving the predefined amount of data from the data transfer processing 82 in the master install control program 80 in buffer ( 1 ) 121 , buffer ( 2 ) 122 , buffer (m ⁇ 1) 123 and buffer (m) 124 .
  • the data reception processing 111 stores the location of the buffer ( 1 ) 121 which is the head of the data dividing buffers 120 (F 90 ).
  • the processing 111 finds a corresponding table in the buffer management tables 130 from the stored buffer location (F 91 ), and checks the state of the buffer from the table (F 92 ).
  • the buffer may take one of the following four states: a state (a reception-in-progress state) in which data is being received from the data transfer processing 82 ; a state (a receiving-completion state) in which data has been completely received; a state (a writing-completion state) in which data has been completely written into a disk, and a state in which the end of data has been reached.
  • the respective states are represented by numerical values 0, 1, 0, ⁇ 1 from the first one. It should be noted that the reception-in-progress state and the writing-completion state are synonym.
  • the processing 111 waits for an event (F 93 ).
  • the processing 111 checks whether or not data to be transferred from the data transfer processing 82 still remains (F 94 ). If data remains, data transferred from the data transfer processing 82 is read into the buffer (F 95 ). Then, the processing 111 transitions the state of the buffer to the receiving-completion state (F 96 ). The processing 111 finds and stores the location of the next buffer (F 97 ), and returns to F 91 . If no data remains, the processing 111 sets a table corresponding to the buffer location to “ ⁇ 1” (F 98 ), followed by termination of the flow.
  • the correspondence between the buffers and the tables is made by reserving arrays of the same length. If the end location of the array is reached in determining the next location, the head of the array is pointed. Also, when the state of the buffer is set to “ ⁇ 1” (F 96 ), and when the data write processing 112 is waiting for an event when the state of the buffer is set to “ ⁇ 1” (F 98 ), the data write processing 112 is released from the event waiting state, and forced to continue the processing.
  • FIG. 10 is a flow chart illustrating the disk write processing 112 .
  • the disk write processing 112 is the processing for writing data read into the data dividing buffers in the data reception processing 111 into a disk connected to the node.
  • the disk write processing 112 stores the location of the buffer ( 1 ) 121 which is the head of the data dividing buffers 120 (F 100 ).
  • the processing 112 finds a corresponding table in the buffer management tables 130 from the stored buffer location (F 101 ), and checks the state of the buffer from the found table (F 102 , F 104 ).
  • the buffer may take one of the four states similar to the foregoing.
  • the processing 112 waits for an event (F 103 ).
  • the processing 112 writes the data in the buffer into a disk (Fl 05 ).
  • the processing 112 transitions the state of the buffer to the writing-completion state (F 106 ), finds and stores the location of the next buffer (F 107 ), and returns to F 101 . If the end location of the array is reached in determining the next location, the head of the array is pointed in a manner similar to the foregoing. Also, when the data reception processing 111 is waiting for an event when the state of the buffer is set to “0” (F 106 ), the data reception processing 111 is released from the event waiting state, and forced to continue the processing.

Abstract

A distributing node initiates an install control program in receiving nodes, and then broadcasts or multicasts program data to the receiving nodes. Thereby, the installation of the program into the nodes is carried out in shorter time. In this event, the distributing node and the receiving nodes buffer the program data in units of data block sizes of storage devices associated therewith. The distributing node executes in parallel the processing for storing data read from the storage device in a buffer, and the processing for reading the data from the buffer and broadcasting or multicasting the read data to the receiving node. The receiving node executes in parallel the processing for storing the data received from the distributing node in a buffer, and the processing for reading the program data from the buffer and storing the program data in the storage device thereof.

Description

    BACKGROUND OF THE INVENTION
  • The present invention relates to installation of a program into nodes independent of one another in a parallel computer system including plural nodes. [0001]
  • An installing method for use in a parallel computer system is disclosed, for example, in JP-A-11-296349, wherein upon completion of installation into a particular node, this node serves as a server machine to sequentially install software into different nodes to reduce time required for the installation in the overall system. [0002]
  • Also, JP-A-6-309261 discloses a method including a step of sending an install instruction from a server machine, a step of requesting required software from client machines to the server machine, and a step of starting installation of the software into plural client machines. [0003]
  • Further, JP-A-6-59994 discloses a method including a step of sending an install start instruction and install information from a primary station computer device to plural secondary station computer devices to install a program into plural client machines. [0004]
  • A parallel computer system may include a number of nodes ranging from several tens to several thousands or more because of requirements imposed thereto to execute a large scale of computations. When the same programs are incorporated into these nodes, it is necessary to reduce time required for installing the programs. In the prior art JP-A-11-296349, assuming that the number of nodes in a system is N, and time required for installation per node is T, time required for the installation into all nodes is expressed by (log[0005] 2N)×T.
  • SUMMARY OF THE INVENTION
  • It is an object of the present invention to further reduce the above installation time (log[0006] 2N)×T required for installing into plural nodes.
  • The present invention is characterized by simultaneously performing install processing in plural nodes by simultaneously transferring data on a program to be installed, utilizing communication means interconnecting the respective nodes. [0007]
  • An arbitrary node in a parallel computer system reads every predefined amount of programs from a storage medium which stores the programs, and delivers program data to all nodes, into which the programs are to be installed, through the communication means. Each node receives the data and writes the data into a storage device of the node itself to install the same program in parallel. [0008]
  • Also, a master install control program for distributing a program is executed by one node or an install device in the parallel computer system. The master install control program reads a program from a storage medium which stores programs, and transfers the read program. In this event, plural buffers are used for communication of data associated with the reading and transferring of the program. [0009]
  • A node receiving the program executes an install control program for receiving the distributed data. The install control program receives data on the program, which is to be executed in the node, from the distribution node, and writes the received data into a storage device of the node itself. Plural buffers are utilized for communication of data during the reception of data and the writing into the storage device. [0010]
  • The master install control program and the install control program rely on the buffers to process in parallel the reading of the program from the recording medium, the delivery of the read program, the reception of the program, and the writing of the program into the storage device, to reduce time required for installing the program into plural nodes. [0011]
  • In an environment in which the present invention is implemented under the best condition, transfer time is calculated as follows. Assuming for example that the number of nodes is N; a total data size of a program to be distributed is A; a predefined amount of data size for distribution is B; time required for reading the predefined amount of data is C; time required for transferring the predefined amount of data to all nodes is D; time required for receiving the predefined amount of data is E; and time required for writing the predefined amount of data into an external storage device is F, time required for installing the program into all nodes is expressed by ((A/B)×F)+(C+D+E). (C+D+E) is time taken for transferring the first predefined amount of data in the processing for writing the predefined amount of data into the external storage device. Subsequently, the data read processing, the transfer-to-node processing and the data reception processing are performed in parallel through the buffers, so that time required for the processing is included in time required for writing data into the storage device. [0012]
  • As described above, since a program is distributed to all nodes at one time, time required for installing the program into all the nodes does not depend on the number of nodes N.[0013]
  • BRIEF DESCRIPTION OF THE DRAWINGS
  • FIG. 1 is a block diagram illustrating the configuration of a parallel computer system; [0014]
  • FIG. 2 is a diagram illustrating a data flow during installation of a program; [0015]
  • FIG. 3 is a block diagram illustrating the configuration of a master install control program; [0016]
  • FIG. 4 is a block diagram illustrating the configuration of an install control program; [0017]
  • FIG. 5 is a flow chart illustrating the flow of processing executed by the master install control program; [0018]
  • FIG. 6 is a flow chart illustrating data read processing in the master install control program; [0019]
  • FIG. 7 is a flow chart illustrating data transfer processing in the master install control program; [0020]
  • FIG. 8 is a flow chart illustrating the flow of processing executed by the install control program; [0021]
  • FIG. 9 is a flow chart illustrating data reception processing in the install control program; and [0022]
  • FIG. 10 is a flow chart illustrating disk write processing in the install control program.[0023]
  • DETAILED DESCRIPTION OF THE EMBODIMENTS
  • FIG. 1 illustrates the configuration of a parallel computer system. In a [0024] parallel computer system 1, plural nodes, each including a CPU, a memory and a disk drive, are interconnected through an internal network 11.
  • For example, a node ([0025] 1) 2 includes a computation unit (1) 21 having a CPU and a memory; a disk 22; and an install device 23 such as a hard disk or a magnetic tape. The node (1) 2 is connected to the internal network 11 through a communication device 12 which has a broadcast or multicast transfer function. In this way, all nodes (i.e., node (1) 2, node (2) 3, node (3) 4, node (4) 5, . . . , node (n-1) 6 and node (n) 7) are interconnected to the internal network 11.
  • The [0026] disk 22 is an external storage device for storing a distributed program, and may be implemented by a hard disk or the like. The install device 23 is an external storage device for storing programs to be distributed, and may be implemented by a hard disk, a magnetic tape, an optical disk or the like. Alternatively, instead of the external storage device connected to each node, a storage region may be reserved on a memory in each node, or a program may be directly stored in a work region.
  • FIG. 2 is a block diagram illustrating an example in which a program to be distributed is read from the [0027] install device 23 and installed into all the nodes through the internal network 11. Data read processing 81 at the node (1) 2 reads every predefined amount of the program to be distributed, to data dividing buffers 90 from the install device 23 storing the program to be distributed. Data transfer processing 82 transfers the data read into the buffers to all the nodes to which the program is to be distributed, through the internal network 11. One of all the nodes is represented by the node (2) 3. In the node (2) 3, data reception processing 111 remains in a data waiting state, for waiting data from the network 11. As the program data is delivered by the data transfer processing 82, the data reception processing 111 initiates to read the transferred data into data dividing buffers 120. Disk write processing 112 writes the data read into the buffers into a disk 33 of the node (2) 3.
  • A master [0028] install control program 80 including the data read processing 81 and the data transfer processing 82, and an install control program 120 including the data reception processing 111 and the disk write processing 112 are stored in the storage device of each node. Alternatively, the install control program 120 and the master install control program 80 may be stored in a storage device of a distributing node, such that the distributing node distributes the install control program 120 to receiving nodes when the parallel computer system is powered on. In this event, the distributing node sequentially transfers the install control program to the receiving nodes.
  • FIG. 3 illustrates the configuration of the master [0029] install control program 80. In the node (1) 2 to which the install device 23 storing the program to be distributed is connected, the master install control program 80 transfers every predefined amount of data read from the install device 23 to all of the node (1) 2, node (2) 3, node (3) 4, node (4) 5, . . . , node (n−1) 6 and node (n) 7 to which the program is distributed. In the following, the master install control program 80 will be described in detail.
  • The master [0030] install control program 80 includes the data read processing 81 for reading data from the install device 23 which stores programs; the data transfer processing 82 for transferring the data read in the data read processing 81 to all the nodes; data dividing buffers 90 each of which stores the predefined amount of data read from the install device 23 which stores programs; and buffer management tables 100 for managing the data dividing buffers 90. Each buffer in the data dividing buffers 90 has a size equivalent to that of the predefined amount read from the install device 23.
  • The buffer management tables [0031] 100 store information indicative of the states of the associated buffers to control the data dividing buffers 90 used in the data read processing 81 and the data transfer processing 82. The buffer management tables 100 include table (1) 101, table (2) 102, . . . , table (m−1) 103 and table (m) 104 corresponding to buffer (1) 91, buffer (2) 92, . . . , buffer (m−1) 93 and buffer (m) 94 in the data dividing buffers 90.
  • FIG. 4 illustrates the configuration of the [0032] install control program 110.
  • The [0033] install control program 110 in each of the node (1) 2, node (2) 3, node (3) 4, node (4)5, node (n−1) 6 and node (n) 7 is initiated by the master install control program 80.
  • The [0034] install control program 110 includes data reception processing 111 for receiving data transferred from the master install control program 80; disk write processing 112 for writing data read in the data reception processing 111 into a disk; data dividing buffers 120 for storing every predefined amount of data transferred from the master install control program 80 and received in the data reception processing 111; and buffer management tables 130 for managing the data dividing buffers 120. Each buffer in the data dividing buffers 120 has a size equivalent to that of the predefined amount read from the install device 23.
  • The operation of the master install [0035] control program 80 in the configuration of FIG. 3 will be described along flow charts illustrated in FIGS. 5, 6 and 7
  • The flow chart in FIG. 5 illustrates the flow of processing executed by the master install [0036] control program 80. First, the master install control program 80 reserves a region in the data dividing buffers 90 for storing data read from the install device 23, and a region in the buffer management tables 100 for managing the data dividing buffers 90 (F50), and initializes the data division management tables 100 to an initial state (F51). Next, the program 80 initiates the install control programs 110 in all the nodes (F52). Finally, the program 80 initiates the data read processing 81 and the data transfer processing 82 in the master install control program 80 (F53). In this event, the install control programs 110 in all the nodes are sequentially initiated in each of the nodes (F52).
  • Each of the receiving nodes is additionally provided with confirmation means for confirming whether a node power source is ON or OFF, and notification means for notifying a distributing node of the power-source state of the node itself. The distributing node may identify receiving nodes in which the power source is in ON state, before initiating the install [0037] control program 110 in all the nodes (F52), to initiate the install control programs 110 in the operable receiving nodes (F52).
  • FIG. 6 is a flow chart illustrating the data read [0038] processing 81. The data read processing 81 is the processing for sequentially reading the predefined amount of data from the install device 23 into buffer (1) 91, buffer (2) 92, . . . , buffer (m−1) 93 and buffer (m) 94.
  • The data read processing [0039] 81 stores the location of the buffer (1) 91 which is the head of the data dividing buffers 90 (F60). Next, the data read processing 81 finds a corresponding table in the buffer management tables 100 from the stored buffer location (F61), and checks the state of the buffer from the found table (F62). A buffer may take one of the following four states: a state (a reading-in-progress state) in which the predefined amount of data is being read from the install device 23 into the buffer; a state (a reading-completion state) in which the data has been completely read into the buffer; a state (a transfer-completion state) in which the data has been completely transferred to all the nodes; and a state in which a program has been fully read from the install device 23 (End of File). These states are represented by numerical values 0, 1, 0, −1 from the first state. It should be noted that the reading-in-progress state and the transfer-completion state are synonym. When the buffer is in the state “1,” the processing 81 waits for an event (F63). When the buffer is in the state “0” the processing 81 checks whether or not data still remains in the install device 23 (F64). If data remains, the predefined amount of data is read from the install device 23 into the buffer (F65). Then, the processing 81 transitions the state of the buffer to the reading-completion state (F66). The processing 81 finds and stores the location of the next buffer (F67), and returns to F61. If no data remains in the install device 23, the processing 81 sets a table corresponding to the buffer location to “−1” (F68), followed by termination of the flow. The correspondence between the buffers and the tables is made by reserving arrays of the same length. If the end location of the array is reached in determining the next location, the head of the array is pointed. Also, when the state of the buffer is set to “1” (F66), and when the data transfer processing 82 is waiting for an event when the state of the buffer is set to “−1” (F68), the data transfer processing 82 is released from the event waiting state, and forced to continue the processing.
  • FIG. 7 is a flow chart illustrating the [0040] data transfer processing 82. The data transfer processing 82 is the processing for transferring data read into the data dividing buffers 90 in the data read processing 81 to the install control program 110 in each of the nodes. The data transfer processing 82 stores the location of the buffer (1) 91 which is the head of the data dividing buffers 90 (F70).
  • Next, the [0041] processing 82 finds a corresponding table in the buffer management tables 100 from the stored buffer location (F71), and checks the state of the buffer from the found table (F72, F74). The buffer may take one of the four states similar to the foregoing. When the buffer is in the state “0” the processing 82 waits for an event (F73). When the buffer is in the state “−1,” the processing 82 notifies all the nodes that the data has been fully read (the end of data is reached) (F75), followed by termination of the flow. When the buffer is in the state “1,” the processing 82 transfers the data in the buffer to all the nodes (F76). Then, the processing 82 transitions the state of the buffer to the transfer-completion state (F77), stores the location of the next buffer (F78), and returns to F71. If the end location of the array is reached in determining the next location, the head of the array is pointed in a manner similar to the foregoing. Also, when the data read processing 81 is waiting for an event when the state of the buffer is set to “0” (F77), the data read processing 81 is released from the event waiting state, and forced to continue the processing.
  • Next, the operation of the install [0042] control program 110 in the configuration of FIG. 4 will be described along flow charts illustrated in FIGS. 8, 9 and 10.
  • The flow chart in FIG. 8 illustrates the flow of processing executed by the install [0043] control program 110. First, the program 110 reserves a region in the data dividing buffers 120 for storing data transferred from the data transfer processing 82 in the master install control program 80, and a region in the buffer management tables 130 for managing the data dividing buffers 120 (F80), and initializes the data-division management tables 130 (F81) into the initial state. Finally, the program 110 initiates the data reception processing 111 and the disk write processing 112 in the install control program 110 (F82).
  • FIG. 9 is a flow chart illustrating the [0044] data reception processing 111. The data reception processing 111 is the processing for sequentially receiving the predefined amount of data from the data transfer processing 82 in the master install control program 80 in buffer (1) 121, buffer (2) 122, buffer (m−1) 123 and buffer (m) 124.
  • The [0045] data reception processing 111 stores the location of the buffer (1) 121 which is the head of the data dividing buffers 120 (F90).
  • Next, the [0046] processing 111 finds a corresponding table in the buffer management tables 130 from the stored buffer location (F91), and checks the state of the buffer from the table (F92). The buffer may take one of the following four states: a state (a reception-in-progress state) in which data is being received from the data transfer processing 82; a state (a receiving-completion state) in which data has been completely received; a state (a writing-completion state) in which data has been completely written into a disk, and a state in which the end of data has been reached. The respective states are represented by numerical values 0, 1, 0, −1 from the first one. It should be noted that the reception-in-progress state and the writing-completion state are synonym. When the buffer is in the state “1,” the processing 111 waits for an event (F93). When the buffer is in the state “0,” the processing 111 checks whether or not data to be transferred from the data transfer processing 82 still remains (F94). If data remains, data transferred from the data transfer processing 82 is read into the buffer (F95). Then, the processing 111 transitions the state of the buffer to the receiving-completion state (F96). The processing 111 finds and stores the location of the next buffer (F97), and returns to F91. If no data remains, the processing 111 sets a table corresponding to the buffer location to “−1” (F98), followed by termination of the flow. The correspondence between the buffers and the tables is made by reserving arrays of the same length. If the end location of the array is reached in determining the next location, the head of the array is pointed. Also, when the state of the buffer is set to “−1” (F96), and when the data write processing 112 is waiting for an event when the state of the buffer is set to “−1” (F98), the data write processing 112 is released from the event waiting state, and forced to continue the processing.
  • FIG. 10 is a flow chart illustrating the [0047] disk write processing 112. The disk write processing 112 is the processing for writing data read into the data dividing buffers in the data reception processing 111 into a disk connected to the node. The disk write processing 112 stores the location of the buffer (1) 121 which is the head of the data dividing buffers 120 (F100).
  • Next, the [0048] processing 112 finds a corresponding table in the buffer management tables 130 from the stored buffer location (F101), and checks the state of the buffer from the found table (F102, F104). The buffer may take one of the four states similar to the foregoing. When the buffer is in the state “0,” the processing 112 waits for an event (F103). When the buffer is in the state “−1” the flow is terminated. When the buffer is in the state “1,” the processing 112 writes the data in the buffer into a disk (Fl05). Then, the processing 112 transitions the state of the buffer to the writing-completion state (F106), finds and stores the location of the next buffer (F107), and returns to F101. If the end location of the array is reached in determining the next location, the head of the array is pointed in a manner similar to the foregoing. Also, when the data reception processing 111 is waiting for an event when the state of the buffer is set to “0” (F106), the data reception processing 111 is released from the event waiting state, and forced to continue the processing.
  • The foregoing description has been made for the embodiment according to the present invention which distributes the executed-in-parallel program in the parallel computer system including plural nodes interconnected through the internal network. It goes without saying, however, that the present invention can be applied to a system which has plural computers connected to a network and executed in parallel by multicasting program data from a distributing node to receiving nodes. [0049]

Claims (17)

1. A method of installing a program in a parallel computer system including plural nodes comprising:
selecting one of said plural nodes as a distributing node for delivering to remaining nodes of said plural nodes a program to be executed in parallel in said parallel computer system, and selecting said remaining nodes as receiving nodes;
providing each of said receiving nodes with an install control program which receives and stores a program from said distributing node;
causing said distributing node to initiate said install control program in each of said receiving nodes; and
broadcasting said program to be executed in parallel, from said distributing node to said receiving nodes, and causing said receiving nodes to simultaneously receive said program.
2. An installing method according to claim 1, wherein:
said distributing node confirms whether or not each of said receiving nodes is powered on before initiating said install control program in each of said receiving nodes, and broadcasts said program to receiving nodes which are powered on.
3. An installing method according to claim 1, further comprising:
notifying all said receiving nodes that said program to be executed in parallel has been delivered, after completing the delivery of said program.
4. An installing method according to claim 1, wherein in broadcasting said program to be executed in parallel, following four steps are executed in parallel:
a step of causing said distributing node to read said program from a storage device, and to store the read program in a first buffer;
a step of causing said distributing node to read said program from said first buffer, and to send the read program to said receiving nodes;
a step of causing said receiving node to store said received program in a second buffer; and
a step of causing said receiving node to read a program distributed from said second buffer, and to store the distributed program in a storage device.
5. An installing method according to claim 4, wherein said distributing node reads a program distributed in data block units of said storage device, and stores the read program in said first buffer.
6. An installing method according to claim 4., wherein said receiving node reads said received program from said second buffer in data block units of said storage device of said receiving node itself, and stores the read program in said storage device of said receiving node itself.
7. An installing method according to claim 4, wherein said distributing node divides said first buffer by a block size of a data block in said storage device, and manages said first buffer as a ring buffer using a first buffer management table.
8. An installing method according to claim 7, wherein
said first buffer management table stores a three-value buffer state indicative of a state in which a data block is being read or has been completely transmitted to said receiving nodes, a state in which said data block has been completely read, or a state in which all data has been fully read, to manage said first buffer in blocks.
9. An installing method according to claim 4, wherein said receiving node divides said second buffer by a block size of a data block in the storage device to manages said second buffer as a ring buffer using a second buffer management table.
10. An installing method according to claim 9, wherein
said second buffer management table stores a three-value buffer state indicative of a state in which data is being received or has been completely written into a disk, or a state in which said data has been completely received, or a state in which all data has been completely written, to manage said second buffer in blocks.
11. A parallel computer system including plural nodes, comprising:
a storage device for storing a program which is executed in parallel in said plural nodes of said parallel computer system;
a distributing node being one of said plural nodes, and for delivering said program to remaining nodes of said plural nodes; and
receiving nodes for receiving said program delivered from said distributing node,
wherein said distributing node includes a master install control unit, said master install control unit notifying said receiving nodes, which receive said program, of delivery of said program before delivering said program, reading said program to be delivered from said storage device, and delivering said program simultaneously to said receiving nodes; and
said receiving node includes an install control unit, said install control unit receiving said program from said distributing node, and storing said program in a storage device of said receiving node itself.
12. A parallel computer system according to claim 11, wherein
said master install control unit includes a first buffer, said first buffer temporarily holding said program to be delivered which is read from said storage device; and
said master install control unit performs in parallel an operation involved in reading said program to be delivered from said storage device and writing said program to be delivered in said first buffer, and an operation involved in reading said program to be delivered from said first buffer and transferring data to said receiving nodes.
13. A parallel computer system according to claim 12, wherein
said master install control unit includes a first buffer management table, said first buffer management table managing said first buffer for each data block size of said storage unit; and
said first buffer management table stores a three-value buffer state indicative of a state in which a data block is being read or has been completely transmitted to said receiving nodes, a state in which said data block has been completely read, or a state in which all data has been completely read.
14. A parallel computer system according to claim 11, wherein
said install control unit includes a second buffer, said second buffer temporarily buffering said program delivered from said distributing node; and
said install control unit performs in parallel an operation involved in receiving said program from said distributing node and writing said program in said second buffer, and an operation involved in reading said program delivered from said second buffer and writing said program in said storage device of said receiving node itself.
15. A parallel computer system according to claim 14, wherein
said install control unit includes a second buffer management table, said second buffer management table managing said second buffer for each data block size of said storage unit; and
said second buffer management table stores a three-value buffer state indicative of a state in which said program to be delivered is being received or has been completely written into said disk, a state in which said program to be delivered has been completely received, or a state in which all data has been completely written.
16. A parallel computer system according to claim 11, wherein
said master install control unit includes a power source control unit, said power source control unit checking whether or not said receiving node is powered on before delivering said program.
17. A medium storing a computer executable installing program for a parallel computer system, said computer executable installing program comprising:
a step of causing a distributing node to initiate an install control program in plural receiving nodes which receive a program;
a step of causing said distributing node to read a program to be delivered in order to be executed in each node, from a storage device of said distributing node itself, and to store the read program in a first buffer;
a step of causing said distributing node to read said program from said first buffer, and to send the read program to said receiving nodes;
a step of causing said receiving node to store a received program in a second buffer;
a step of causing said receiving node to read a distributed program from said second buffer, and to store the read program in a storage device of said receiving node itself; and
a step of causing said distributing node to notify all said receiving nodes of completion of program delivery after completing delivery of said program.
US10/795,304 2000-03-23 2004-03-09 Method and system for installing program in parallel computer system Abandoned US20040172628A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US10/795,304 US20040172628A1 (en) 2000-03-23 2004-03-09 Method and system for installing program in parallel computer system

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP2000087064A JP2001273122A (en) 2000-03-23 2000-03-23 Method and device for installing program of parallel computing system
JP2000-087064 2000-03-23
US09/791,698 US6721612B2 (en) 2000-03-23 2001-02-26 Method and system for installing program in parallel computer system
US10/795,304 US20040172628A1 (en) 2000-03-23 2004-03-09 Method and system for installing program in parallel computer system

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
US09/791,698 Continuation US6721612B2 (en) 2000-03-23 2001-02-26 Method and system for installing program in parallel computer system

Publications (1)

Publication Number Publication Date
US20040172628A1 true US20040172628A1 (en) 2004-09-02

Family

ID=18603136

Family Applications (2)

Application Number Title Priority Date Filing Date
US09/791,698 Expired - Fee Related US6721612B2 (en) 2000-03-23 2001-02-26 Method and system for installing program in parallel computer system
US10/795,304 Abandoned US20040172628A1 (en) 2000-03-23 2004-03-09 Method and system for installing program in parallel computer system

Family Applications Before (1)

Application Number Title Priority Date Filing Date
US09/791,698 Expired - Fee Related US6721612B2 (en) 2000-03-23 2001-02-26 Method and system for installing program in parallel computer system

Country Status (2)

Country Link
US (2) US6721612B2 (en)
JP (1) JP2001273122A (en)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060136526A1 (en) * 2004-12-16 2006-06-22 Childress Rhonda L Rapid provisioning of a computer into a homogenized resource pool
US20070260835A1 (en) * 2005-02-08 2007-11-08 Fujitsu Limited Storage controlling device of disk array device and redundancy restoring method
US20070294684A1 (en) * 2006-06-15 2007-12-20 Fujitsu Limited Computer program and apparatus for updating installed software programs
US20080281887A1 (en) * 2007-05-10 2008-11-13 Nokia Corporation Application specific garbage collection system
US7689702B1 (en) * 2003-10-31 2010-03-30 Sun Microsystems, Inc. Methods and apparatus for coordinating processing of network connections between two network protocol stacks
CN104503797A (en) * 2014-12-29 2015-04-08 浪潮电子信息产业股份有限公司 Module and method for parallel installation of operation system based on wave Tissot K1

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002318666A (en) * 2001-04-20 2002-10-31 Hitachi Ltd Update method of firmware of hard disk unit mounted on disk array device and disk array device with function for performing the updating method
US20050216910A1 (en) * 2002-05-23 2005-09-29 Benoit Marchand Increasing fault-tolerance and minimizing network bandwidth requirements in software installation modules
US7305272B2 (en) * 2002-12-16 2007-12-04 Rockwell Automation Technologies, Inc. Controller with agent functionality
US20040225382A1 (en) * 2003-05-09 2004-11-11 Phil Brown Jerk profile, vector motion control and real time position capture in motion control systems
US20060239195A1 (en) * 2005-04-26 2006-10-26 Martin Camins Method and apparatus for dual-mode application update protocol
JP5073929B2 (en) * 2005-08-03 2012-11-14 株式会社イマジオム PC cluster installer, recording medium storing the same, and installation method
JP5342302B2 (en) * 2009-03-30 2013-11-13 株式会社日立ソリューションズ Firmware update system, firmware distribution server, and program
CN103493016B (en) * 2011-04-21 2017-06-06 惠普发展公司,有限责任合伙企业 Electronic equipment and the method being installed to application program in virtualized environment
JP5547701B2 (en) * 2011-09-21 2014-07-16 日立オートモティブシステムズ株式会社 Electronic control unit for automobile
CN105993147B (en) * 2014-07-23 2019-03-05 华为技术有限公司 A kind of terminal staging method and relevant device
US10360044B2 (en) * 2016-09-13 2019-07-23 Nutanix, Inc. Massively parallel autonomous reimaging of nodes in a computing cluster

Citations (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5046039A (en) * 1987-05-25 1991-09-03 Hitachi, Ltd. Buffer management system
US5297257A (en) * 1991-04-15 1994-03-22 Allen-Bradley Company, Inc. Distributing a real-time control program to a plurality of input/output nodes
US5390297A (en) * 1987-11-10 1995-02-14 Auto-Trol Technology Corporation System for controlling the number of concurrent copies of a program in a network based on the number of available licenses
US5421009A (en) * 1993-12-22 1995-05-30 Hewlett-Packard Company Method of remotely installing software directly from a central computer
US5553083A (en) * 1995-01-19 1996-09-03 Starburst Communications Corporation Method for quickly and reliably transmitting frames of data over communications links
US5603323A (en) * 1996-02-27 1997-02-18 Advanced Technology Laboratories, Inc. Medical ultrasonic diagnostic system with upgradeable transducer probes and other features
US5630139A (en) * 1994-02-10 1997-05-13 Nec Corporation Program download type information processor
US5787309A (en) * 1996-05-23 1998-07-28 International Business Machines Corporation Apparatus for protecting storage blocks from being accessed by unwanted I/O programs using I/O program keys and I/O storage keys having M number of bits
US5860012A (en) * 1993-09-30 1999-01-12 Intel Corporation Installation of application software through a network from a source computer system on to a target computer system
US5903566A (en) * 1994-06-24 1999-05-11 Metricom, Inc. Method for distributing program code to intelligent nodes in a wireless mesh data communication network
US6049853A (en) * 1997-08-29 2000-04-11 Sequent Computer Systems, Inc. Data replication across nodes of a multiprocessor computer system
US6070203A (en) * 1995-12-22 2000-05-30 Cypress Semiconductor Corp. Circuit for generating almost full and almost empty flags in response to sum and carry outputs in asynchronous and synchronous FIFOS
US6144992A (en) * 1997-05-09 2000-11-07 Altiris, Inc. Method and system for client/server and peer-to-peer disk imaging
US6202206B1 (en) * 1998-05-14 2001-03-13 International Business Machines Corporation Simultaneous installation and configuration of programs and components into a network of server and client computers
US6434642B1 (en) * 1999-10-07 2002-08-13 Xilinx, Inc. FIFO memory system and method with improved determination of full and empty conditions and amount of data stored
US6476931B1 (en) * 1998-07-06 2002-11-05 Creoscitex Corporation Ltd. System and method for efficient printing of variable information documents

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0659994A (en) 1992-08-10 1994-03-04 Fuji Xerox Co Ltd Remote installation system
JPH06309261A (en) 1993-04-22 1994-11-04 Mitsubishi Electric Corp Automatic installing and version-up method for software
JPH11296349A (en) 1998-04-08 1999-10-29 Hitachi Ltd Parallel installation system of parallel computer

Patent Citations (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5046039A (en) * 1987-05-25 1991-09-03 Hitachi, Ltd. Buffer management system
US5390297A (en) * 1987-11-10 1995-02-14 Auto-Trol Technology Corporation System for controlling the number of concurrent copies of a program in a network based on the number of available licenses
US5297257A (en) * 1991-04-15 1994-03-22 Allen-Bradley Company, Inc. Distributing a real-time control program to a plurality of input/output nodes
US5860012A (en) * 1993-09-30 1999-01-12 Intel Corporation Installation of application software through a network from a source computer system on to a target computer system
US5421009A (en) * 1993-12-22 1995-05-30 Hewlett-Packard Company Method of remotely installing software directly from a central computer
US5630139A (en) * 1994-02-10 1997-05-13 Nec Corporation Program download type information processor
US5903566A (en) * 1994-06-24 1999-05-11 Metricom, Inc. Method for distributing program code to intelligent nodes in a wireless mesh data communication network
US5553083A (en) * 1995-01-19 1996-09-03 Starburst Communications Corporation Method for quickly and reliably transmitting frames of data over communications links
US5553083B1 (en) * 1995-01-19 2000-05-16 Starburst Comm Corp Method for quickly and reliably transmitting frames of data over communications links
US6070203A (en) * 1995-12-22 2000-05-30 Cypress Semiconductor Corp. Circuit for generating almost full and almost empty flags in response to sum and carry outputs in asynchronous and synchronous FIFOS
US5603323A (en) * 1996-02-27 1997-02-18 Advanced Technology Laboratories, Inc. Medical ultrasonic diagnostic system with upgradeable transducer probes and other features
US5787309A (en) * 1996-05-23 1998-07-28 International Business Machines Corporation Apparatus for protecting storage blocks from being accessed by unwanted I/O programs using I/O program keys and I/O storage keys having M number of bits
US6144992A (en) * 1997-05-09 2000-11-07 Altiris, Inc. Method and system for client/server and peer-to-peer disk imaging
US6049853A (en) * 1997-08-29 2000-04-11 Sequent Computer Systems, Inc. Data replication across nodes of a multiprocessor computer system
US6202206B1 (en) * 1998-05-14 2001-03-13 International Business Machines Corporation Simultaneous installation and configuration of programs and components into a network of server and client computers
US6476931B1 (en) * 1998-07-06 2002-11-05 Creoscitex Corporation Ltd. System and method for efficient printing of variable information documents
US6434642B1 (en) * 1999-10-07 2002-08-13 Xilinx, Inc. FIFO memory system and method with improved determination of full and empty conditions and amount of data stored

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7689702B1 (en) * 2003-10-31 2010-03-30 Sun Microsystems, Inc. Methods and apparatus for coordinating processing of network connections between two network protocol stacks
US20060136526A1 (en) * 2004-12-16 2006-06-22 Childress Rhonda L Rapid provisioning of a computer into a homogenized resource pool
US20070260835A1 (en) * 2005-02-08 2007-11-08 Fujitsu Limited Storage controlling device of disk array device and redundancy restoring method
US20070294684A1 (en) * 2006-06-15 2007-12-20 Fujitsu Limited Computer program and apparatus for updating installed software programs
US7840957B2 (en) * 2006-06-15 2010-11-23 Fujitsu Limited Computer program and apparatus for updating installed software programs by comparing update times
US20080281887A1 (en) * 2007-05-10 2008-11-13 Nokia Corporation Application specific garbage collection system
CN104503797A (en) * 2014-12-29 2015-04-08 浪潮电子信息产业股份有限公司 Module and method for parallel installation of operation system based on wave Tissot K1

Also Published As

Publication number Publication date
US6721612B2 (en) 2004-04-13
US20010025200A1 (en) 2001-09-27
JP2001273122A (en) 2001-10-05

Similar Documents

Publication Publication Date Title
US6721612B2 (en) Method and system for installing program in parallel computer system
US6526434B1 (en) System and method for efficient transfer of data blocks from client to server
US6003044A (en) Method and apparatus for efficiently backing up files using multiple computer systems
CN100442238C (en) Method and apparatus for asynchronous replication of data
CN1321365C (en) Data storage system and method for storing data in it
CN101753936B (en) Configuration method of storage space and video server for video monitoring system
US6609152B1 (en) System for avoiding the assignment of duplicate MAC addresses to network interface devices
CN102306115A (en) Asynchronous remote copying method, system and equipment
US7069305B2 (en) Computer system and a data transfer method thereof using remote direct memory access
JPH06301594A (en) Equipment and method for managing memory in copying machine
US20050193230A1 (en) Metadata access during error handling routines
US6636940B1 (en) Task control for high level commands in disk drives
CN110445580B (en) Data transmission method and device, storage medium, and electronic device
US20020073175A1 (en) Updating world wide web pages in a storage area network environment
JP3284864B2 (en) File delivery method
CN109343928B (en) Virtual memory file redirection method and system for virtual machine in virtualization cluster
CN101908114A (en) Method and system for processing digital copyright assignment, copyright control system and terminal equipment
JPH11510631A (en) Advanced data server with I / O ring coupled to disk array ring
JP3370024B2 (en) How to send a program file
JPH10222456A (en) Data transfer device
JP2815716B2 (en) Message transmission processing method
JP2570134B2 (en) Data broadcast transfer method
JP3001430B2 (en) Fast saving method
KR20120048460A (en) Log management method
JP2752922B2 (en) Transfer path payout control method for file transfer

Legal Events

Date Code Title Description
STCB Information on status: application discontinuation

Free format text: EXPRESSLY ABANDONED -- DURING EXAMINATION