IP Library Granted Patent US 7,546,438
Granted Patent B2
US 7,546,438 · App. 11/175,559 · Granted Jun 9, 2009

Algorithm mapping, specialized instructions and architecture features for smart memory computing

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 7,546,438
App. No.
11/175,559
Granted
Jun 9, 2009
Kind
B2
Abstract

A smart memory computing system that uses smart memory for massive data storage as well as for massive parallel execution is disclosed. The data stored in the smart memory can be accessed just like the conventional main memory, but the smart memory also has many execution units to process data in situ. The smart memory computing system offers improved performance and reduced costs for those programs having massive data-level parallelism. This smart memory computing system is able to take advantage of data-level parallelism to improve execution speed by, for example, use of inventive aspects such as algorithm mapping, compiler techniques, architecture features, and specialized instruction sets.

Claims (30)

1. A smart memory computing system, comprising:

a user space wherein data within has data-level parallelism;

a smart memory having multiple execution units wherein data can be processed in parallel and in situ;

a graphical representation describing data in said user space and interactions therewith; and

a compiler mapping data from said user space to said smart memory space and generating executable codes in accordance with said graphical representation,

wherein said graphical representation comprises:

objects containing said data within the said user space;

object boundary conditions containing boundaries between objects or between objects and a boundary of said user space; and

equations governing interactions between said data within the said user space, and

wherein said boundary conditions are specified as fixed values for variables, fixed values for derivatives of variables, equations containing arithmetic expressions of the variables and their derivatives, or combinations of the above.

2. A smart memory computing system, comprising:

a user space wherein data within has data-level parallelism;

a smart memory having multiple execution units wherein data can be processed in parallel and in situ;

a graphical representation describing data in said user space and interactions therewith; and

a compiler mapping data from said user space to said smart memory space and generating executable codes in accordance with said graphical representation,

wherein said graphical representation comprises:

objects containing said data within the said user space;

objects boundary conditions containing boundaries between objects or between objects and a boundary of said user space; and

equations governing interactions between said data within the said user space, and

wherein said compiler generates codes for said parallel processing based on:

accepting outputs from said graphical representation to obtain said objects, said boundary conditions, and said equations;

mapping data within said user space to the data within said smart memory space; and

applying a parallel instruction set to processing data within the said smart memory space.

3. The smart memory computing system as recited in claim 2 , wherein said mapping preserves the physical location of the data in said user space to said data in the said smart memory space.

4. The smart memory computing system as recited in claim 2 , wherein said parallel instruction set allows a single instruction code to be applied to P processors for processing data in the said smart memory space in parallel, wherein said P processors are indexed numerically.

5. The smart memory computing system as recited in claim 4 , wherein said instruction code comprises fields of input operands from a multiple-port register file associated with each said processors, wherein said register files are indexed numerically.

6. The smart memory computing system as recited in claim 4 , wherein said instruction code comprises fields of input operands from a common multiple-port register file not associated with any said P processors.

7. The smart memory computing system as recited in claim 4 , wherein said instruction code comprises fields of input operands from processor-associated multiple-port register files, wherein said register files are indexed with a fixed offset to said processors.

8. The smart memory computing system as recited in claim 4 , wherein said instruction code comprises fields of input operands from processor-associated multiple-port register files, wherein said register files are indexed in circular to said processors.

9. The smart memory computing system as recited in claim 4 , wherein said instruction code comprises fields of input operands from processor-associated multiple-port register files, wherein said register files are input from all P processors to generate a single result.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 2, 2021
From: CRIA, INC.
To: STRIPE, INC.
Reel/Frame 057044/0753 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 10, 2017
From: IP3, SERIES 100 OF ALLIED SECURITY TRUST I
To: CRIA, INC.
Reel/Frame 042201/0252 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 27, 2016
From: CHUNG, SHINE
To: IP3, SERIES 100 OF ALLIED SECURITY TRUST I
Reel/Frame 039560/0381 →