Data identity based caching in a network of computational nodes
AssigneeTenstorrent USA, Inc.
InventorsMatthew Mattina, Syed Gilani, Stanislav Sokorac
Life of this patent
Estimating the term…
Abstract
Systems and methods related to data identity based caching in a network of computational nodes are disclosed herein. A system may include a set of computational nodes, an interconnect fabric that networks the set of computational nodes, and a set of caches. The caches may be uniquely associated with the computational nodes and may store data in the caches based on an identity of the data. For example, the caches may store data based on the data being read-only data, based on the data being in an address range, or based on the data being fixed for a remainder of a complex computation. Basing the storage of data in the caches on the identity of the data may reduce cache coherency issues.
Claims17
A system comprising:
- a set of computational nodes;
- an interconnect fabric that networks the set of computational nodes;
- and
- a set of caches wherein the caches in the set of caches are uniquely associated with the computational nodes in the set of computational nodes and store data in the caches in the set of caches based on an identity of the data;
- wherein the caches in the set of caches store data based on an identity of the data in that:
- the set of computational nodes are configured to execute a complex computation;
- and
- each computational node is configured to, when storing data in memory, determine an identity of the data, determine if a value of the data is fixed for a remainder of the complex computation, and store the data in the cache memory based on the determination that the value is fixed for the remainder of the complex computation.
A method, in which each step is conducted by a set of computational nodes that are networked by an interconnect fabric, comprising:
- determining an identity of a unit of data;
- and
- storing the unit of data in a set of caches, wherein the caches in the set of caches are uniquely associated with the computational nodes in the set of computational nodes, based on the identity of the unit of data;
- wherein determining the identity of the unit of data comprises distinguishing read-only data from other data;
- wherein storing the unit of data comprises storing the read-only data in the set of caches based on the distinction that the unit of data is read-only data;
- and
- wherein distinguishing read-only data from other data comprises determining that the unit of data is read-only data based on a variable of the unit of data appearing in a single assign statement in a source code.
A system, comprising:
- means for determining an identity of a unit of data;
- means for storing the unit of data in a set of caches, wherein the caches in the set of caches are uniquely associated with computational nodes in a set of computational nodes, based on the identity of the unit of data;
- means for executing a first portion of a complex computation;
- and
- means for determining if a value of the unit of data is fixed for a remainder of the complex computation;
- wherein storing the unit of data in the set of caches is based on the determination that the value is fixed for the remainder of the complex computation.
A method, in which each step is conducted by a set of computational nodes that are networked by an interconnect fabric, comprising:
- determining an identity of a unit of data;
- storing the unit of data in a set of caches, wherein the caches in the set of caches are uniquely associated with the computational nodes in the set of computational nodes, based on the identity of the unit of data;
- executing, by the set of computational nodes, a first portion of a complex computation;
- and
- determining if a value of the unit of data is fixed for a remainder of the complex computation;
- wherein storing the unit of data in the set of caches is based on the determination that the value is fixed for the remainder of the complex computation.
Dependencies are inferred from the claim text.