Buffered freepointer management memory system
Abstract
A system and method of buffered freepointer management to handle burst traffic to fixed size structures in an external memory system. A circular queue stores implicitly linked free memory locations, along with an explicitly linked list in memory. The queue is updated at the head with newly released locations, and new locations from memory are added at the tail. When a freed location in the queue is reused, external memory need not be updated. When the queue is full, the system attempts to release some of the freepointers such as by dropping them if they are already linked, updating the linked list in memory only if those dropped are not already linked. Latency can be further reduced by loading new locations from memory when the queue is nearly empty, rather than waiting for empty condition, and by writing unlinked locations to memory when the queue is nearly full.
- Inventors:
- Issue Date:
- Research Org.:
- International Business Machines Corp., Armonk, NY (United States)
- Sponsoring Org.:
- USDOE
- OSTI Identifier:
- 1805431
- Patent Number(s):
- 10901887
- Application Number:
- 15/982,792
- Assignee:
- International Business Machines Corporation (Armonk, NY)
- Patent Classifications (CPCs):
-
G - PHYSICS G06 - COMPUTING G06F - ELECTRIC DIGITAL DATA PROCESSING
- DOE Contract Number:
- B621073
- Resource Type:
- Patent
- Resource Relation:
- Patent File Date: 05/17/2018
- Country of Publication:
- United States
- Language:
- English
Citation Formats
Jacob, Philip, and Strenski, Philip N. Buffered freepointer management memory system. United States: N. p., 2021.
Web.
Jacob, Philip, & Strenski, Philip N. Buffered freepointer management memory system. United States.
Jacob, Philip, and Strenski, Philip N. Tue .
"Buffered freepointer management memory system". United States. https://www.osti.gov/servlets/purl/1805431.
@article{osti_1805431,
title = {Buffered freepointer management memory system},
author = {Jacob, Philip and Strenski, Philip N.},
abstractNote = {A system and method of buffered freepointer management to handle burst traffic to fixed size structures in an external memory system. A circular queue stores implicitly linked free memory locations, along with an explicitly linked list in memory. The queue is updated at the head with newly released locations, and new locations from memory are added at the tail. When a freed location in the queue is reused, external memory need not be updated. When the queue is full, the system attempts to release some of the freepointers such as by dropping them if they are already linked, updating the linked list in memory only if those dropped are not already linked. Latency can be further reduced by loading new locations from memory when the queue is nearly empty, rather than waiting for empty condition, and by writing unlinked locations to memory when the queue is nearly full.},
doi = {},
journal = {},
number = ,
volume = ,
place = {United States},
year = {2021},
month = {1}
}
Works referenced in this record:
Garbage collection implemented in hardware
patent, October 2014
- Bacon, David F.; Cheng, Perry S.; Shukla, Sunil K.
- US Patent Document 8,856,491
General and automatic approach to incrementally computing sliding window aggregates in streaming applications
patent-application, January 2016
- Hirzel, Martin J.; Schneider, Scott A.; Tangwongsan, Kanat
- US Patent Application 14/325568; 20160012110
Method and apparatus for data access
patent-application, June 2018
- Zhou, Qiaosheng; Zhao, Junping; Xu, Xinlei
- US Patent Application 15/848451; 20180173638
Switching node with load balancing of bursts of packets
patent, March 2016
- Testa, Patrizia; Germoni, Angelo; Listanti, Marco
- US Patent Document 9,276,870
Managing the capture of packets in a computing system
patent-application, December 2013
- Moriarty, Michael; Veteikis, Mark; Stroud, Jonathan
- US Patent Application 13/530094; 20130343390
Modified buddy system memory allocation
patent-application, May 2008
- Madisetti, Prashanth
- US Patent Application 11/553444; 20080104353
Memory shared between processing threads
patent-application, February 2004
- Wolrich, Gilbert; Adiletta, Matthew J.; Wheeler, William
- US Patent Application 10/644337; 20040039895
Managing burst transmit times for a buffered data stream over bonded upstream channels
patent-application, August 2017
- Hanna, Charaf; Darby, Benjamin Nelson; Ni, Zhifang J.
- US Patent Application 15/049296; 20170244539
Garbage Collection Implemented in Hardware
patent-application, November 2013
- Bacon, David F.; Cheng, Perry S.; Shukla, Sunil K.
- US Patent Application 13/526895; 20130318315
System and method for cache entry aging
patent, July 2016
- Morshed, Abbas; Tsang, Chuan-Wen George; Youngworth, Christopher
- US Patent Document 9,384,147
Quality of service queueing system for a network switch
patent, April 2006
- Pannell, Donald; Walsh, Hugh
- US Patent Document 7,035,273
TCP engine
patent-application, October 2006
- Hussain, Muhammad R.; Badr, Imran; Masood, Faisal
- US Patent Application 11/218727; 20060227811
TCP engine
patent, May 2009
- Hussain, Muhammad Raghib; Badr, Imran; Masood, Faisal
- US Patent Document 7,535,907
System and method for a quality of service in a multi-layer network element
patent, September 2005
- Hoffman, Don
- US Patent Document 6,940,814
Transmission of data bursts on a constant data rate channel
patent, May 2012
- Malleth, Philippe; Tomas, Sebastien; Giani, Mario
- US Patent Document 8,185,672
Management of linked lists within a dynamic queue system
patent, February 2016
- Bailey, Patrick; Liao, Heng
- US Patent Document 9,262,554
Decision tree computation in hardware
patent-application, July 2013
- Oberg, Jason; Eguro, Ken; Tirva, Victor
- US Patent Application 13/344473; 20130179377
Memory management free pointer pool
patent-application, July 2004
- Calderon, Juan-Carlos; Caia, Jean-Michel; Ling, Jing
- US Patent Application 10/337908; 20040131055
Managing the capture of packets in a computing system
patent, November 2014
- Moriarty, Michael; Veteikis, Mark; Stroud, Jonathan
- US Patent Document 8,891,528
Memory shared between processing threads
patent, October 2003
- Wolrich, Gilbert; Adiletta, Matthew J.; Wheeler, William R.
- US Patent Document 6,631,462
Generating a Non-Deterministic Finite Automata (NFA) Graph for Regular Expression Patterns with Advanced Features
patent-application, March 2015
- Goyal, Rajan; Billa, Satyanarayana Lakshmipathi
- US Patent Application 14/186978; 20150066927
Method and apparatus for caching free memory cell pointers
patent, July 2005
- Marchant, Nils Ramon; Cole, Philip David
- US Patent Document 6,918,005
Method and apparatus for using multiple linked memory lists
patent-application, October 2016
- Panchagnula, Vamsi; Patel, Saurin; Han, Keqin
- US Patent Application 14/675450; 20160294735
Modified buddy system memory allocation
patent, October 2009
- Madisetti, Prashanth
- US Patent Document 7,610,468
Free packet buffer allocation
patent, January 2007
- Chandra, Prashant R.; Naik, Uday; Kumar, Alok
- US Patent Document 7,159,051
Switching systems and methods using wildcard searching
patent, August 2010
- Kizhepat, Govind; Teng, Min H.; Choy, Kenneth
- US Patent Document 7,774,374
Garbage Collection Implemented in Hardware
patent-application, November 2013
- Bacon, David F.; Cheng, Perry S.; Shukla, Sunil K.
- US Patent Application 13/478614; 20130318290
Logical output queues linking buffers allocated using free lists of pointer groups of multiple contiguous address space
patent, July 2000
- Bertagna, Drew; Narsinh, Anees
- US Patent Document 6,088,745