Cache-based communication between execution threads of a data processing system
Abstract
A virtual link buffer provides communication between processing threads or cores. A first cache is accessible by a first processing device and a second cache accessible by a second processing device. An interconnect structure couples between the first and second caches and includes a link controller. A producer cache line in the first cache stores data produced by the first processing device and the link controller transfers data in the producer cache line to a consumer cache line in the second cache. Each new data element is stored at a location in the producer cache line indicated by a store position or tail indicator that is stored at a predetermined location in the same cache line. Transferred data are loaded from a location in the consumer cache line indicated by a load position or head indicator that is stored at a predetermined location in the same consumer cache line.
- Inventors:
- Issue Date:
- Research Org.:
- Arm Ltd., Cambridge (United Kingdom)
- Sponsoring Org.:
- USDOE
- OSTI Identifier:
- 1600279
- Patent Number(s):
- 10474575
- Application Number:
- 15/483,036
- Assignee:
- Arm Limited (Cambridge, GB)
- Patent Classifications (CPCs):
-
G - PHYSICS G06 - COMPUTING G06F - ELECTRIC DIGITAL DATA PROCESSING
- Resource Type:
- Patent
- Resource Relation:
- Patent File Date: 04/10/2017
- Country of Publication:
- United States
- Language:
- English
Citation Formats
Beard, Jonathan Curtis, and Van Hensbergen, Eric V. Cache-based communication between execution threads of a data processing system. United States: N. p., 2019.
Web.
Beard, Jonathan Curtis, & Van Hensbergen, Eric V. Cache-based communication between execution threads of a data processing system. United States.
Beard, Jonathan Curtis, and Van Hensbergen, Eric V. Tue .
"Cache-based communication between execution threads of a data processing system". United States. https://www.osti.gov/servlets/purl/1600279.
@article{osti_1600279,
title = {Cache-based communication between execution threads of a data processing system},
author = {Beard, Jonathan Curtis and Van Hensbergen, Eric V.},
abstractNote = {A virtual link buffer provides communication between processing threads or cores. A first cache is accessible by a first processing device and a second cache accessible by a second processing device. An interconnect structure couples between the first and second caches and includes a link controller. A producer cache line in the first cache stores data produced by the first processing device and the link controller transfers data in the producer cache line to a consumer cache line in the second cache. Each new data element is stored at a location in the producer cache line indicated by a store position or tail indicator that is stored at a predetermined location in the same cache line. Transferred data are loaded from a location in the consumer cache line indicated by a load position or head indicator that is stored at a predetermined location in the same consumer cache line.},
doi = {},
journal = {},
number = ,
volume = ,
place = {United States},
year = {Tue Nov 12 00:00:00 EST 2019},
month = {Tue Nov 12 00:00:00 EST 2019}
}
Works referenced in this record:
Encoded Data
patent-application, July 2005
- Lesartre, Gregg Bernard; Gostin, Gary Belgrave
- US Patent Application 10/756600; 20050152435
Method and System for Caching Address Translations from Multiple Address Spaces in Virtual Machines
patent-application, November 2006
- Sheu, John Te-Jui; Bailey, David S.; Traut, Eric P.
- US Patent Application 11/128982; 20060259734
Apparatus and Method for Memory-Hierarchy Aware Producer-Consumer Instructions
patent-application, July 2014
- Raikin, Shlomo; Valentine, Robert; Sade, Raanan
- US Patent Application 13/994724; 20140208031
Hardware Accelerated Machine Learning
patent-application, July 2017
- Bruestle, Jeremy; Ng, Choong
- US Patent Application 15/399714; 20170200094
Ring Management
patent-application, October 2006
- Narad, Charles; Rosenbluth, Mark
- US Patent Application 11/021178; 20060236011
Reducing data read latency in a network communications processor architecture
patent, August 2013
- Pollock, Steven J.; Burroughs, William; Mital, Deepak
- US Patent Document 8,505,013
Predicting a Result of a Dependency-Checking Instruction when Processing Vector Instructions
patent-application, July 2012
- Gonion, Jeffry E.
- US Patent Application 13/090001; 20120191949
Combined store queue for a master-slave cache system
patent, July 1997
- Cohen, Earl T.; Tilleman, Russell W.; Pattin, Jay C.
- US Patent Document 5,644,752
Changing an Event Identifier of a Transient Event in an Event Notification System
patent-application, May 2012
- Jennings, Cheryl L.; Mishra, Rajeev; Nayar, Trishali
- US Patent Application 12/940137; 20120117223
Processing Accelerator with Queue Threads and Methods Therefor
patent-application, October 2015
- Murphy, Nicholas J.
- US Patent Application 14/253279; 20150293785
Monitoring Vector Lane Duty Cycle for Dynamic Optimization
patent-application, August 2015
- Kim, Daehyun; Park, Jong Soo; Woo, Dong Hyuk
- US Patent Application 14/190404; 20150242210
Processor-Based Apparatus and Method for Processing Bit Streams
patent-application, December 2013
- Gopal, Vinodh; Guilford, James D.; Wolrich, Gilbert M.
- US Patent Application 13/995494; 20130326201
Computer system with coherent interconnection
patent, December 2014
- Schlansker, Michael; Ang, Boon Seong; Oertli, Erwin
- US Patent Document 8,909,872