IP Library Granted Patent US 11,954,053
Granted Patent B2
US 11,954,053 · App. 17/965,688 · Granted Apr 9, 2024

Integrating buffer views into buffer access operations in a coarse-grained reconfigurable computing environment

Inventors: Yaqi Zhang (Foster City, CA); Matthew Feldman (Oakland, CA)
Assignee: SambaNova Systems, Inc.
G06F13/1673
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 11,954,053
App. No.
17/965,688
Granted
Apr 9, 2024
Kind
B2
Abstract

A method for integrating buffer views into buffer access operations in a reconfigurable computing environment includes detecting, in an instruction stream for a reconfigurable dataflow unit (RDU), a buffer allocation statement comprising a tensor indexing expression, a buffer view indicator and one or more buffer view parameters. The method also includes lowering the buffer view parameters into the indexing expression according to the buffer view indicator to produce a modified tensor indexing expression, removing the buffer view indicator from the buffer allocation statement to produce a modified buffer allocation statement and allocating a buffer according to the modified buffer allocation statement. The modified buffer allocation statement may include the modified tensor indexing expression. A corresponding system and computer readable medium are also disclosed herein.

Claims (33)

1. A system for integrating buffer views into buffer access operations in a reconfigurable computing environment, the system comprising:

an allocation statement detector configured to detect, in an instruction stream for a reconfigurable dataflow unit (RDU), a buffer allocation statement comprising a tensor indexing expression, a buffer view indicator and one or more buffer view parameters;

an allocation statement modifier configured to lower the buffer view parameters into the tensor indexing expression according to the buffer view indicator to produce a modified tensor indexing expression;

the allocation statement modifier further configured to remove the buffer view indicator from the buffer allocation statement to produce a modified buffer allocation statement comprising the modified tensor indexing expression; and

a buffer allocation module configured to allocate a buffer according to the modified buffer allocation statement.

2. The system of claim 1 , further comprising an RDU for processing data according to the modified buffer allocation statement.

3. The system of claim 2 , further comprising a configuration module for configuring the RDU according to the modified buffer allocation statement.

4. The system of claim 3 , wherein configuring the RDU comprises configuring an address generator to execute the modified tensor indexing expression.

5. The system of claim 1 , wherein the buffer view indicator is selected from the group consisting of a slice view indicator, a repeat view indicator, a temporal tile view indicator, a reshape view indicator, a permute view indicator, a layout view indicator and a roll view indicator.

6. The system of claim 1 , wherein the buffer view indicator is stackable with other buffer view indicators.

7. The system of claim 1 , wherein the buffer allocation statement specifies a buffer read pattern or a buffer write pattern.

8. A method for integrating buffer views into buffer access operations in a reconfigurable computing environment, the method comprising:

detecting, in an instruction stream for a reconfigurable dataflow unit (RDU), a buffer allocation statement comprising a tensor indexing expression, a buffer view indicator and one or more buffer view parameters;

lowering the buffer view parameters into the tensor indexing expression according to the buffer view indicator to produce a modified tensor indexing expression;

removing the buffer view indicator from the buffer allocation statement to produce a modified buffer allocation statement comprising the modified tensor indexing expression; and

allocating a buffer according to the modified buffer allocation statement.

9. The method of claim 8 , further comprising configuring the RDU according to the modified buffer allocation statement.

10. The method of claim 9 , wherein configuring the RDU comprises configuring an address generator to execute the modified tensor indexing expression.

11. The method of claim 8 , further comprising processing data with the RDU according to the modified buffer allocation statement.

12. The method of claim 8 , wherein the buffer view indicator is selected from the group consisting of a slice view indicator, a repeat view indicator, a temporal tile view indicator, a reshape view indicator, a permute view indicator, a layout view indicator and a roll view indicator.

13. The method of claim 8 , wherein the buffer view indicator is stackable with other buffer view indicators.

14. The method of claim 8 , wherein the buffer allocation statement specifies a buffer read pattern or a buffer write pattern.

15. A non-transitory computer readable medium having instructions encoded thereon to execute a method for integrating buffer views into buffer access operations in a reconfigurable computing environment, the method comprising:

detecting, in an instruction stream for a reconfigurable dataflow unit (RDU), a buffer allocation statement comprising a tensor indexing expression, a buffer view indicator and one or more buffer view parameters;

lowering the buffer view parameters into the tensor indexing expression according to the buffer view indicator to produce a modified tensor indexing expression;

removing the buffer view indicator from the buffer allocation statement to produce a modified buffer allocation statement comprising the modified tensor indexing expression; and

allocating a buffer according to the modified buffer allocation statement.

16. The non-transitory computer readable medium of claim 15 , wherein the method further comprises configuring the RDU according to the modified buffer allocation statement.

17. The non-transitory computer readable medium of claim 16 , wherein configuring the RDU comprises configuring an address generator to execute the modified tensor indexing expression.

18. The non-transitory computer readable medium of claim 15 , wherein the method further comprises processing data with the RDU according to the modified buffer allocation statement.

19. The non-transitory computer readable medium of claim 15 , wherein the buffer view indicator is selected from the group consisting of a slice view indicator, a repeat view indicator, a temporal tile view indicator, a reshape view indicator, a permute view indicator, a layout view indicator and a roll view indicator.

20. The non-transitory computer readable medium of claim 15 , wherein the buffer view indicator is stackable with other buffer view indicators.

21. The non-transitory computer readable medium of claim 15 , wherein the buffer allocation statement specifies a buffer read pattern or a buffer write pattern.

Assignments (2)
INTELLECTUAL PROPERTY SECURITY AGREEMENT Recorded Apr 18, 2025
From: SAMBANOVA SYSTEMS, INC.
To: SILICON VALLEY BANK, A DIVISION OF FIRST-CITIZENS BANK & TRUST COMPANY, AS AGENT
Reel/Frame 070892/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 4, 2023
From: ZHANG, YAQI; FELDMAN, MATTHEW
To: SAMBANOVA SYSTEMS, INC.
Reel/Frame 062882/0736 →
Continuity (2)
Provisional Application 63336910 · Apr 29, 2022
Related Publication 20230350822A1 · Nov 2, 2023
Cited By (1)
US 12,475,066