Systems and methods for efficient queue pair number re-use
First Claim
1. In an electronic device, a method comprising the steps of:
- providing an identifier for a queue pair, the queue pair associated with a context, the identifier comprising a first portion and a second portion;
setting the first portion of the identifier to a value, the value taken from a counter, the counter containing a value to be used for a first portion of an identifier associated with the context; and
setting a value of a reference counter to indicate one or more identifiers are associated with the context.
2 Assignments
0 Petitions
Accused Products
Abstract
Systems and methods are described for providing queue pair numbers for a queue pair to more effectively track and manage the frequency of use and re-use of queue pair numbers on a queue pair context basis in an InfiniBand™ device. The present invention uses a counter for each queue pair context to set the changeable portion of the queue pair number. A reference count for each queue pair context is also used to track the quantity of queue pair numbers currently allocated to a queue pair context. The present invention sets, tracks and manages the values of the counter and the reference count for each queue pair context in conjunction with queue pair operations to provide a systematic queue pair numbering scheme. By tracking and/or setting values of the counter and reference count for a queue pair context, the present invention re-uses queue pair numbers efficiently and in a predictable and repeatable manner.
13 Citations
20 Claims
-
1. In an electronic device, a method comprising the steps of:
-
providing an identifier for a queue pair, the queue pair associated with a context, the identifier comprising a first portion and a second portion; setting the first portion of the identifier to a value, the value taken from a counter, the counter containing a value to be used for a first portion of an identifier associated with the context; and setting a value of a reference counter to indicate one or more identifiers are associated with the context. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
-
-
12. A network device comprising
a queue pair used by the network device; -
a context having information associated with the queue pair; a mechanism for assigning an identifier to the queue pair associated with the context, the identifier comprising a first portion and a second portion; a counter containing a value to be used for setting a first portion of an identifier associated with the context; and a reference counter; wherein the mechanism; sets the first portion of the identifier to the value of the counter; and sets a value to the reference counter to indicate one or more identifiers are allocated to the context. - View Dependent Claims (13, 14, 15, 16, 17, 18, 19)
-
-
20. A computer program product, stored on computer readable medium comprising:
-
computer program code for providing an identifier for a queue pair, the queue pair associated with a context, the identifier comprising a first portion and a second portion; computer program code for setting the first portion of the identifier to a value, the value taken from a counter, the counter containing a value to be used for a first portion of an identifier associated with the context; and computer program code for setting a value of a reference counter to indicate one or more identifiers are associated with the context.
-
Specification