US 12,093,551 B2
Memory unit partitioning solutions for reconfigurable dataflow computing systems
Matthew Feldman, Palo Alto, CA (US); and Yaqi Zhang, Foster City, CA (US)
Assigned to SambaNova Systems, Inc., Palo Alto, CA (US)
Filed by SambaNova Systems, Inc., Palo Alto, CA (US)
Filed on Jun. 12, 2023, as Appl. No. 18/208,343.
Application 18/208,343 is a continuation of application No. 17/878,504, filed on Aug. 1, 2022, granted, now 11,709,611.
Claims priority of provisional application 63/271,906, filed on Oct. 26, 2021.
Prior Publication US 2023/0315322 A1, Oct. 5, 2023
This patent is subject to a terminal disclaimer.
Int. Cl. G06F 3/06 (2006.01); G06F 9/50 (2006.01)
CPC G06F 3/0644 (2013.01) [G06F 3/0604 (2013.01); G06F 3/0683 (2013.01); G06F 9/5077 (2013.01)] 6 Claims
OG exemplary drawing
 
5. A method for determining and using memory unit partitioning solutions for reconfigurable dataflow computing systems, the method comprising:
receiving source code for a reconfigurable dataflow processor that comprises an array of compute units and an array of memory units interconnected with a switching fabric, the source code comprising a plurality of tensor indexing expressions;
converting the plurality of tensor indexing expressions to a plurality of logical memory indexing constraints;
grouping the plurality of logical memory indexing constraints into concurrent access groups;
determining a memory unit partitioning solution for each concurrent access group that supports the plurality of logical memory indexing constraints without concurrent usage conflicts including memory unit and memory port conflicts;
accessing the array of memory units according to the memory unit partitioning solution in conjunction with executing the plurality of tensor indexing expressions with the reconfigurable dataflow processor;
wherein determining the memory unit partitioning solution comprises selecting a set of logical-to-physical mapping parameters;
wherein the set of logical-to-physical mapping parameters comprise a logical memory unit count N, a blocking parameter B, a scaling vector alpha and a packing vector P; and
wherein selecting comprises testing legal combinations of N, B and alpha.