Method and apparatus for back end gather/scatter memory coalescing
Abstract
A system for processing gather and scatter instructions can implement a front-end subsystem, a back-end subsystem, or both. The front-end subsystem includes a prediction unit configured to determine a predicted quantity of coalesced memory access operations required by an instruction. A decode unit converts the instruction into a plurality of access operations based on the predicted quantity, and transmits the plurality of access operations and an indication of the predicted quantity to an issue queue. The back-end subsystem includes a load-store unit that receives a plurality of access operations corresponding to an instruction, determines a subset of the plurality of access operations that can be coalesced, and forms a coalesced memory access operation from the subset. A queue stores multiple memory addresses for a given load-store entry to provide for execution of coalesced memory accesses.
- Inventors:
- Issue Date:
- Research Org.:
- Marvell Asia PTE, Ltd. (Singapore); Cray Inc., Seattle, WA (United States); Lawrence Livermore National Laboratory (LLNL), Livermore, CA (United States)
- Sponsoring Org.:
- USDOE
- OSTI Identifier:
- 1987088
- Patent Number(s):
- 11567771
- Application Number:
- 16/944,146
- Assignee:
- Marvell Asia Pte Ltd (Singapore, SG); Cray Inc. (Seattle, WA)
- Patent Classifications (CPCs):
-
G - PHYSICS G06 - COMPUTING G06F - ELECTRIC DIGITAL DATA PROCESSING
- DOE Contract Number:
- AC52-07NA27344; B620872
- Resource Type:
- Patent
- Resource Relation:
- Patent File Date: 07/30/2020
- Country of Publication:
- United States
- Language:
- English
- Subject:
- 97 MATHEMATICS AND COMPUTING
Citation Formats
Cain, III, Harold W., Lakshminarayana, Nagesh Bangalore, Ernst, Daniel Jonathan, and Mehta, Sanyam. Method and apparatus for back end gather/scatter memory coalescing. United States: N. p., 2023.
Web.
Cain, III, Harold W., Lakshminarayana, Nagesh Bangalore, Ernst, Daniel Jonathan, & Mehta, Sanyam. Method and apparatus for back end gather/scatter memory coalescing. United States.
Cain, III, Harold W., Lakshminarayana, Nagesh Bangalore, Ernst, Daniel Jonathan, and Mehta, Sanyam. Tue .
"Method and apparatus for back end gather/scatter memory coalescing". United States. https://www.osti.gov/servlets/purl/1987088.
@article{osti_1987088,
title = {Method and apparatus for back end gather/scatter memory coalescing},
author = {Cain, III, Harold W. and Lakshminarayana, Nagesh Bangalore and Ernst, Daniel Jonathan and Mehta, Sanyam},
abstractNote = {A system for processing gather and scatter instructions can implement a front-end subsystem, a back-end subsystem, or both. The front-end subsystem includes a prediction unit configured to determine a predicted quantity of coalesced memory access operations required by an instruction. A decode unit converts the instruction into a plurality of access operations based on the predicted quantity, and transmits the plurality of access operations and an indication of the predicted quantity to an issue queue. The back-end subsystem includes a load-store unit that receives a plurality of access operations corresponding to an instruction, determines a subset of the plurality of access operations that can be coalesced, and forms a coalesced memory access operation from the subset. A queue stores multiple memory addresses for a given load-store entry to provide for execution of coalesced memory accesses.},
doi = {},
journal = {},
number = ,
volume = ,
place = {United States},
year = {2023},
month = {1}
}
Works referenced in this record:
System and Method for Store Fusion
patent-application, May 2019
- King, John M.
- US Patent Application 15/822515; 20190163475
Tightly Coupled Processor Arrays Using Coarse Grained Reconfigurable Architecture with Iteration Level Commits
patent-application, May 2017
- Chen, Chia-yu; Gopalakrishnan, Kailash; Oh, Jinwook
- US Patent Application 14/932672; 20170123795
Implementing Barriers to Efficiently Support Cumulativity in a Weakly-Ordered Memory System
patent-application, November 2017
- Guthrie, Guy L.; Shen, Hugh; Williams, Derek E.
- US Patent Application 15/141013; 20170315922
Solid State Drive (SSD) Memory Cache Occupancy Prediction
patent-application, May 2016
- Ghosh, Mrinmoy
- US Patent Application 14/813070; 20160147446
Tightly Coupled Processor Arrays Using Coarse Grained Reconfigurable Architecture with Iteration Level Commits
patent-application, May 2017
- Chen, Chia-Yu; Gopalakrishnan, Kailash; Oh, Jinwook
- US Patent Application 14/932629; 20170123794
Method and system for front-end gathering of store instructions within a data-processing system
patent, August 1999
- Arimilli, Ravi Kumar; Dodson, John Steven; Lewis, Jerry Don
- US Patent Document 5,940,611
Technique to Combine Instructions
patent-application, February 2007
- Valentine, Robert; Anati, Ittai; Sperber, Zeev
- US Patent Application 11/200777; 20070038844
Coalescing memory transactions
patent, September 2015
- Busaba, Fadi Y.; Gschwind, Michael K.; Michael, Maged M.
- US Patent Document 9,146,774
Apparatus and Method for Processing Structure of Arrays (SoA) and Array of Structures (AoS) Data
patent-application, March 2020
- Hughes, Christopher J.; Toll, Bret; Heinecke, Alexander
- US Patent Application 16/140294; 20200097298
Code optimization to enable and disable coalescing of memory transactions
patent, May 2016
- Busaba, Fadi Y.; Gschwind, Michael K.; Michael, Maged M.
- US Patent Document 9,348,523
Code optimization to enable and disable coalescing of memory transactions
patent, July 2016
- Busaba, Fadi Y.; Gschwind, Michael K.; Michael, Maged M.
- US Patent Document 9,383,930
Software indications and hints for coalescing memory transactions
patent, May 2016
- Busaba, Fadi Y.; Gschwind, Michael K.; Salapura, Valentina
- US Patent Document 9,348,522
Apparatus and Method for Efficient Gather and Scatter Operations
patent-application, April 2014
- Grochowski, Edward T.; Bradford, Dennis R.; Chrysos, George Z.
- US Patent Application 13/631071; 20140095831
Unordered load/store queue
patent, May 2013
- Burger, Douglas C.; Keckler, Stephen W.; McDonald, Robert Gregory
- US Patent Document 8,447,911
Scatter Using Index Array and Finite State Machine
patent-application, March 2015
- Sperber, Zeev; Valentine, Robert; Raikin, Shlomo
- US Patent Application 13/977727; 20150074373
Instruction Context Switching
patent-application, December 2016
- Yudanov, Dmitri; Blagodurov, Sergey; Basu, Arkaprava
- US Patent Application 14/746601; 20160371082
Processing of Temporary-Register-Using Instruction
patent-application, February 2020
- Shen, Xiaoyang; Martin, Damien Robin; Airaud, Cedric Denis Robert
- US Patent Application 16/524667; 20200065109
Operation Cache Compression
patent-application, March 2021
- Schinzler, Michael Brian; Filippo, Michael
- US Patent Application 16/552001; 20210064533
Dynamic predictor for coalescing memory transactions
patent, April 2017
- Busaba, Fadi Y.; Cain, III, Harold W.; Gschwind, Michael K.
- US Patent Document 9,619,383
Methods and Apparatus for Combining a Plurality of Memory Access Transactions
patent-application, December 2002
- Tremblay, Marc; Keskar, Shrinath
- US Patent Application 09/325625; 20020184460
Apparatus and Method for Tile Gather and Tile Scatter
patent-application, March 2020
- Hughes, Christopher J.; Toll, Bret; Heinecke, Alexander
- US Patent Application 16/140196; 20200097291
Gather Using Index Array and Finite State Machine
patent-application, April 2016
- Sperber, Zeev; Valentine, Robert; Patkin, Guy
- US Patent Application 14/881111; 20160103785
Method and system for front-end and back-end gathering of store instructions within a data-processing system
patent, September 1999
- Arimilli, Ravi Kumar; Dodson, John Steven; Lewis, Jerry Don
- US Patent Document 5,956,503
Methods and apparatus for caching data in a non-blocking manner using a plurality of fill buffers
patent, September 1997
- Akkary, Haitham; Abramson, Jeffrey M.; Glew, Andrew F.
- US Patent Document 5,671,444
Dynamic Predictor for Coalescing Memory Transactions
patent-application, June 2015
- Busaba, Fadi Y.; Cain, III, Harold W.; Gschwind, Michael Karl
- US Patent Application 14/104380; 20150169361
Software indications and hints for coalescing memory transactions
patent, June 2016
- Busaba, Fadi Y.; Gschwind, Michael K.; Salapura, Valentina
- US Patent Document 9,361,031
Dynamic Predictor for Coalescing Memory Transactions
patent-application, December 2015
- Busaba, Fadi Y.; Cain III, Harold W.; Gschwind, Michael Karl
- US Patent Application 14/845403; 20150378907
Coalescing Adjacent Gather/Scatter Operations
patent-application, June 2014
- Forsyth, Andrew T.; Hickmann, Brian J.; Hall, Jonathan C.
- US Patent Application 13/997784; 20140181464
Coalescing memory transactions
patent, August 2016
- Busaba, Fadi Y.; Gschwind, Michael K.; Michael, Maged M.
- US Patent Document 9,430,276
Circuitry and Method
patent-application, January 2021
- Raja, Abhishek; Filippo, Michael; Sanjeliwala, Huzefa Moiz
- US Patent Application 16/521748; 20210026627
Gather Using Index Array and Finite State Machine
patent-application, December 2013
- Sperber, Zeev; Valentine, Robert; Patkin, Guv
- US Patent Application 13/487184; 20130326160
Fused Adjacent Memory Stores
patent-application, April 2018
- Winkel, Sebastian; Collins, Jamison D.; Sondag, Tyler
- US Patent Application 15/281957; 20180095761
Dynamic predictor for coalescing memory transactions
patent, October 2015
- Busaba, Fadi Y.; Cain, III, Harold W.; Gschwind, Michael K.
- US Patent Document 9,158,573
Method and apparatus for processing storage instructions
patent, January 2021
- Lichtenau, Cedric; Altevogt, Peter; Pflueger, Thomas
- US Patent Document 10,901,745
Multi-level store merging in a cache and memory hierarchy
patent, March 2016
- Kruckemyer, David A.; Favor, John G.; Ashcraft, Matthew
- US Patent Document 9,280,479
Aggregate Scatter Instructions
patent-application, June 2017
- Jha, Ashish; Ould-Ahmed-Vall, Elmoustapha; Valentine, Robert
- US Patent Application 14/979047; 20170177543
Aggressive Store Merging in a Processor that Supports Checkpointing
patent-application, December 2009
- Caprioli, Paul; Karlsson, Martin; Levinsky, Gideon N.
- US Patent Application 12/128332; 20090300338
Method and apparatus for improving cache efficiency
patent, January 2015
- Jamil, Sujat; O'Bleness, R. Frank; Robideau, Russell J.
- US Patent Document 8,943,273
Gathering and Scattering Multiple Data Elements
patent-application, November 2014
- Hughes, Christopher J.; Chen, Yen-Kuang (Y. K.); Bomb, Mayank
- US Patent Application 13/898189; 20140344553
Implementing Barriers to Efficiently Support Cumulativity in a Weakly-Ordered Memory System
patent-application, November 2017
- Guthrie, Guy L.; Shen, Hugh; Williams, Derek E.
- US Patent Application 15/141030; 20170315919