US2009158276A1PendingUtilityA1

Dynamic distribution of nodes on a multi-node computer system

52
Assignee: BARSNESS ERIC LAWRENCEPriority: Dec 12, 2007Filed: Dec 12, 2007Published: Jun 18, 2009
Est. expiryDec 12, 2027(~1.4 yrs left)· nominal 20-yr term from priority
G06F 15/80G06F 9/5083G06F 9/3885H04L 43/16
52
PatentIndex Score
0
Cited by
0
References
0
Claims

Abstract

A method and apparatus dynamically distribute I/O nodes on a multi-node computing system. An I/O configuration mechanism located in the service node of a multi-node computer system controls the distribution of the I/O nodes. The I/O configuration mechanism uses job information located in a job record to initially configure the I/O node distribution. The I/O configuration mechanism further monitors the I/O performance of the executing job to then dynamically adjusts the I/O node distribution based on the I/O performance of the executing job.

Claims

exact text as granted — not AI-modified
1 . A multi-node computer system comprising:
 a plurality of compute nodes that each comprise a processor and memory;   a plurality of input/output (I/O) nodes connected to the plurality of compute nodes that provide I/O communication to network resources;   a job executing on a set compute nodes from the plurality of compute nodes, wherein the set of compute nodes has a number of associated I/O nodes that form a ratio of I/O nodes to compute nodes; and   an I/O configuration mechanism that dynamically adjusts the ratio of input nodes to compute nodes based on I/O characteristics of the job executing on the set of the plurality of compute nodes.   
     
     
         2 . The multi-node computer system of  claim 1  wherein the multi-node computer system is a massively parallel computer system. 
     
     
         3 . The multi-node computer system of  claim 1  wherein the I/O characteristics of the job are determined by real-time monitoring of the job's I/O characteristics and wherein the I/O configuration mechanism dynamically updates the ratio by suspending the job and re-allocating additional nodes of the plurality of I/O nodes to be associated with the executing job. 
     
     
         4 . The multi-node computer system of  claim 1  wherein the I/O characteristics of the job are determined from information stored in a job record selected from the following: job description, historical I/O utilization, and application control parameters. 
     
     
         5 . The multi-node computer system of  claim 4  wherein the I/O characteristics of the job are used for the initial ratio of input nodes to compute nodes upon beginning execution of the job. 
     
     
         6 . The multi-node computer system of  claim 1  wherein the plurality of compute nodes are arranged in a virtual tree network and further comprising an I/O node that connects to the top of the tree network to allow the compute nodes to communicate with a service node of a massively parallel computer system. 
     
     
         7 . The multi-node computer system of  claim 6  wherein the virtual tree network is determined by a class routing table on the node. 
     
     
         8 . A computer implemented method for an I/O configuration mechanism to distribute I/O nodes in a multi-node computer system, the method comprising the steps of:
 monitoring the I/O characteristics of an executing job on a block of nodes with one or more I/O nodes in multi-node the computer system;   determining whether an I/O demand on the one or more I/O nodes is above a threshold; and   dynamically updating the I/O configuration to adjust a ratio of I/O nodes to compute nodes for the block of nodes.   
     
     
         9 . The computer implemented method of  claim 8  further comprising the steps of:
 suspending the job;   re-allocating the ratio of I/O nodes;   resetting the block structure with a new allocation of I/O nodes that adjusts the ratio; and   resuming the job.   
     
     
         10 . The computer implemented method of  claim 8  further comprising the steps of:
 examining a job record associated with the job for I/O needs of the job; and   dynamically allocating I/O nodes to the job based on the job record.   
     
     
         11 . The computer implemented method of  claim 10  wherein the step of examining the job record further comprises the steps of:
 examining the job description for I/O needs;   examining a job execution history for I/O needs; and   allowing an application to control the I/O configuration with application control parameters.   
     
     
         12 . The computer implemented method of  claim 8  wherein the plurality of compute nodes are arranged in a virtual tree network and further comprising an I/O node that connects to the top of the tree network to allow the compute nodes to communicate with a service node of a massively parallel computer system. 
     
     
         13 . The computer implemented method of  claim 12  wherein the virtual tree network is determined by a class routing table in the node. 
     
     
         14 . A computer implemented method for an I/O configuration mechanism to distribute I/O nodes in a multi-node computer system, the method comprising the steps of:
 examining a job record associated a job for I/O needs of the job; and   dynamically allocating I/O nodes to the job based on the job record   monitoring the I/O characteristics of an executing job on a block of nodes with one or more I/O nodes in multi-node the computer system;   determining whether an I/O demand on the one or more I/O nodes is above a threshold; and   dynamically updating the I/O configuration to adjust a ratio of I/O nodes to compute nodes for the block of nodes by performing the steps of:
 suspending the job; 
 re-allocating the ratio of I/O nodes; 
 resetting the block structure with a new allocation of I/O nodes that adjusts the ratio; and 
 resuming the job. 
   
     
     
         15 . A computer-readable article of manufacture comprising:
 a job for execution on a set compute nodes chosen from a plurality of compute nodes with a plurality of input/output (I/O) nodes connected to the plurality of compute nodes that provide I/O communication to network resources, wherein the set of compute nodes has a number of associated I/O nodes that form a ratio of I/O nodes to compute nodes;   an I/O configuration mechanism that dynamically adjusts the ratio of input nodes to compute nodes based on the I/O characteristics of the job executing on the set of the plurality of compute nodes a plurality of compute nodes that each comprise a processor and memory; and   tangible computer recordable media bearing the job scheduler.   
     
     
         16 . The article of manufacture of  claim 15  wherein the I/O characteristics of the job are determined by real-time monitoring of the job's I/O characteristics and wherein the I/O configuration mechanism dynamically updates the ratio of input nodes by suspending the job and re-allocating additional nodes of the plurality of I/O nodes to be associated with the executing job. 
     
     
         17 . The article of manufacture of  claim 15  wherein the I/O characteristics of the job are determined from information stored in a job record selected from the following: job description, historical I/O utilization, and application I/O control. 
     
     
         18 . The article of manufacture of  claim 17  wherein the I/O characteristics of the job are used for the initial ratio of input nodes to compute nodes upon beginning execution of the job. 
     
     
         19 . The article of manufacture of  claim 15  wherein the plurality of compute nodes are arranged in a virtual tree network and further comprising an I/O node that connects to the top of the tree network to allow the compute nodes to communicate with a service node of a massively parallel computer system. 
     
     
         20 . The article of manufacture of  claim 19  wherein the virtual tree network is determined by a class routing table in the node.

Cited by (0)

No later patents cite this yet.

References (0)

No backward citations on record.