# US 2014/0192652 A1 · Token-based flow control of messages in a parallel computer

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 2014/0192652 A1
- Document ID: US20140192652A1
- Status: Published application
- Kind: A1
- Application number: 13/766,515
- Filed: 2013-02-13
- Published: 2014-07-10
- Earliest claimed: 2013-01-10
- Assignees: International Business Machines Corporation
- Applicants: International Business Machines Corporation
- Inventors: Charles J. ARCHER; James E. CAREY; Philip J. SANDERS; Brian E. SMITH
- Web page: https://patentgrep.com/patent/US20140192652A1

## CPC

- H04L 67/1012: based on compliance of requirements or conditions with available server resources
- H04L 47/215: using token-bucket
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

Token-based flow control of messages in a parallel computer, the parallel computer including a plurality of compute nodes, each compute node including one or more computer processors, including: allocating, by a token administration module to a plurality of the computer processors in the parallel computer, a number of data communications tokens; identifying all communicators executing on each computer processor, where each communicator is participating in a distinct parallel operation executing on the parallel computer; allocating, to the communicators, the data communications tokens; determining, by a communicator attempting to send data to the destination, whether the communicator has enough available data communications tokens to send the data to the destination; and responsive to determining that the communicator has enough available data communications tokens to send the data, sending, by the communicator, the data to the destination.

## Claims

### Claim 1

A method of token-based flow control of messages in a parallel computer executing a plurality of parallel operations, the parallel computer including a plurality of compute nodes operatively coupled for data communications over one or more data communications networks, each compute node including one or more computer processors, the method comprising:
allocating, by a token administration module to a plurality of the computer processors in the parallel computer, a number of data communications tokens, wherein:
each data communications token represents an amount of data that a computer processor may send to a destination; and
the number of data communications tokens allocated to each computer processor is determined in dependence upon token distribution rules;
identifying, by the token administration module for each computer processor, all communicators executing on the computer processor, wherein each communicator is participating in a distinct parallel operation executing on the parallel computer;
allocating, by the token administration module to the communicators, the data communications tokens;
determining, by a communicator attempting to send data to the destination, whether the communicator has enough available data communications tokens to send the data to the destination; and
responsive to determining that the communicator has enough available data communications tokens to send the data, sending, by the communicator, the data to the destination.

### Claim 2 (depends on 1)

The method of claim 1 further comprising responsive to determining that the communicator does not have enough available data communications tokens to send the data to the destination, requesting, by the communicator to an additional communicator executing on the computer processor, additional data communications tokens.

### Claim 3 (depends on 2)

The method of claim 2 further comprising receiving, by the communicator, additional data communications tokens.

### Claim 4 (depends on 3)

The method of claim 3 further comprising returning, from the communicator to the additional communicator, the additional data communications tokens.

### Claim 5 (depends on 3)

The method of claim 3 further comprising returning, from the communicator to the token administration module, the additional data communications tokens.

### Claim 6 (depends on 1)

The method of claim 1 wherein allocating the data communications tokens further comprises allocating the data communications tokens in dependence upon token allocation rules.

### Claim 7 (depends on 1)

The method of claim 1 further comprising maintaining, by each communicator executing on the computer processor, a list of candidate communicators executing on the computer processor that have available data communications tokens.

### Claim at position 8

8-23. (canceled)
