9529532

Method and Apparatus for Memory Allocation in a Multi-Node System

PublishedDecember 27, 2016
Assigneenot available in USPTO data we have
Technical Abstract

Patent Claims
26 claims

Legal claims defining the scope of protection, as filed with the USPTO.

1

1. A multi-chip system comprising: multiple chip devices, a first chip device of the multiple chip devices includes a memory allocator (MA) hardware component; and one or more free-pool allocator (FPA) coprocessors, each associated with a corresponding chip device, and each configured to manage a corresponding list of pools of free-buffer pointers, the MA hardware component configured to: allocate a free buffer, associated with a chip device of the multiple chip devices, to data associated with a work item based on the one or more lists of free-buffer pointers managed by the one or more FPA coprocessors.

2

2. The multi-chip system as recited in claim 1 , wherein the MA hardware component is further configured to maintain a list including all pools of free-buffer pointers managed by the one or more FPA coprocessors.

3

3. The multi-chip system as recited in claim 1 , wherein a single FPA coprocessor is configured to manage a single list including all pools of free-buffer pointers associated with buffers in the multiple chip devices.

4

4. The multi-chip system as recited in claim 1 , wherein each chip device includes a corresponding FPA coprocessor.

5

5. The multi-chip system as recited in claim 4 , wherein for each FPA coprocessor, the free-buffer pointers, in the corresponding list of pools, point to buffers residing in the same chip device as the FPA coprocessor.

6

6. The multi-chip system as recited in claim 1 , wherein in allocating a free buffer to the data associated with the work item, the MA hardware component is further configured to: send a request for a free-buffer pointer to a FPA coprocessor of the one or more FPA coprocessors; receive a response including the free-buffer pointer; and cause the data associated with the work item to be stored in a buffer pointed to by the free-buffer pointer received.

7

7. The multi-chip system as recited in claim 6 , wherein the free buffer allocated is freed upon the free-buffer pointer returned to the FPA coprocessor.

8

8. The multi-chip system as recited in claim 6 , wherein the FPA coprocessor of the one or more coprocessors resides in a second chip device, of the multiple chip devices, distinct from the first chip device.

9

9. The multi-chip system as recited in claim 8 , wherein the request for the free-buffer pointer and the response including the free-buffer pointer are exchanged between the first and second chip devices through communication channels designated for cross-chip communications between coprocessors.

10

10. The multi-chip system as recited in claim 1 , wherein the work item is assigned to a second chip device, of the multiple chip device, for processing.

11

11. The multi-chip system as recited in claim 10 , wherein the MA hardware component is further configured to allocate a free buffer, residing in the second chip device, to the data associated with the work item.

12

12. The multi-chip system as recited in claim 1 , wherein the data associated with the work item represents a data packet.

13

13. The multi-chip system as recited in claim 1 , wherein the MA hardware component includes a core processor or a coprocessor.

14

14. A method of memory allocation in a multi-chip system including multiple chip devices, the method comprising: managing, by each of one or more free-pool allocator (FPA) coprocessors in the multi-chip system, a corresponding list of pools of free-buffer pointers; and allocating, by a memory allocator (MA) hardware component, a free buffer, associated with a chip device of the multiple chip devices, to data associated with the work item based on the one or more lists of free-buffer pointers managed by the one or more FPA coprocessors.

15

15. The method as recited in claim 14 further comprising maintaining, by the MA hardware component, a list including all pools of free-buffer pointers managed by the one or more FPA coprocessors.

16

16. The method as recited in claim 14 , wherein a single FPA coprocessor, in the multi-chip system, is managing a single list including all pools of free-buffer pointers associated with buffers in the multiple chip devices.

17

17. The method as recited in claim 14 , wherein each chip device includes a corresponding FPA coprocessor.

18

18. The method as recited in claim 17 , wherein for each FPA coprocessor, the free-buffer pointers, in the corresponding list of pools, point to buffers residing in the same chip device as the FPA coprocessor.

19

19. The method as recited in claim 14 , wherein allocating a free buffer to the data associated with the work item includes: sending a request, by the MA hardware component, for a free-buffer pointer to a FPA coprocessor of the one or more FPA coprocessors; receiving, by the MA hardware component, a response including the free-buffer pointer; and causing, by the MA hardware component, the data associated with the work item to be stored in a buffer pointed to by the free-buffer pointer received.

20

20. The method as recited in claim 19 , wherein the free buffer allocated is freed upon the free-buffer pointer returned to the FPA coprocessor.

21

21. The method as recited in claim 19 , wherein the FPA coprocessor of the one or more coprocessors resides in a second chip device, of the multiple chip devices, distinct from the first chip device.

22

22. The method system as recited in claim 21 , wherein the request for the free-buffer pointer and the response including the free-buffer pointer are exchanged between the first and second chip devices through communication channels designated for cross-chip communications between coprocessors.

23

23. The method as recited in claim 14 , wherein the work item is assigned to a second chip device, of the multiple chip device, for processing.

24

24. The method as recited in claim 23 , wherein allocating a free buffer includes allocating a free buffer, residing in the second chip device, to the data associated with the work item.

25

25. The method as recited in claim 14 , wherein the data associated with the work item represents a data packet.

26

26. The method as recited in claim 14 , wherein the MA hardware component includes a core processor or a coprocessor.

Patent Metadata

Filing Date

Unknown

Publication Date

December 27, 2016

Inventors

Richard E. Kessler
Wilson P. Snyder II

Want to explore more patents?

Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.

Citation & reuse

Analysis on this page is generated by Patentable — an AI-powered patent intelligence platform. AI-generated summaries, explanations, and analysis may be reused with attribution and a visible link back to the canonical URL below. Patent abstracts and claims are USPTO public domain.

Cite as: Patentable. “Method and Apparatus for Memory Allocation in a Multi-Node System” (9529532). https://patentable.app/patents/9529532

© 2026 Patentable. All rights reserved.

Patentable is a research and drafting-assistant tool, not a law firm, and does not provide legal advice. Documents we generate are drafts for review by a licensed patent attorney.