Skip to content

Commit 7a906bb

Browse files
committed
[frontend,examples] Add example spec for testing
1 parent 2613a08 commit 7a906bb

2 files changed

Lines changed: 65 additions & 2 deletions

File tree

accelforge/frontend/arch.py

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1409,6 +1409,7 @@ def _render_make_children(self) -> list[pydot.Node]:
14091409

14101410

14111411
class Network(Branch, Component):
1412+
topology: str = "Mesh"
14121413
def _flatten(
14131414
self,
14141415
compute_node: str,
@@ -1427,8 +1428,17 @@ def _flatten(
14271428
else:
14281429
return nodes
14291430

1430-
def get_fanout(self):
1431-
return int(math.prod(x.fanout for x in self.spatial))
1431+
def _parent2child_names(self, parent_name: str=None):
1432+
raise NotImplementedError()
1433+
1434+
def _render_node(self):
1435+
raise NotImplementedError()
1436+
1437+
def _render_make_children(self):
1438+
raise NotImplementedError()
1439+
1440+
def render(self) -> str:
1441+
raise NotImplementedError()
14321442

14331443

14341444
class Hierarchical(Branch):

examples/arches/networked.yaml

Lines changed: 53 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,53 @@
1+
arch:
2+
nodes:
3+
- !Memory
4+
name: MainMemory
5+
6+
- !Network
7+
name: NoC
8+
spatial:
9+
- {name: X, fanout: 4}
10+
- {name: Y, fanout: 4}
11+
nodes:
12+
- !Memory
13+
name: GlobalBuffer
14+
tensors: {keep: ~MainMemory, may_keep: All}
15+
actions:
16+
- {name: read, energy: 1, latency: {{GlobalBufferLatency}}}
17+
- {name: write, energy: 1, latency: {{GlobalBufferLatency}}}
18+
19+
- !Memory
20+
name: RowBuffer
21+
tensors: {keep: ~MainMemory, may_keep: All}
22+
actions:
23+
- {name: read, energy: 1, latency: {{GlobalBufferLatency}}}
24+
- {name: write, energy: 1, latency: {{GlobalBufferLatency}}}
25+
spatial:
26+
- {name: X, fanout: 4}
27+
28+
- !Memory
29+
name: ColumnBuffer
30+
tensors: {keep: ~MainMemory, may_keep: All}
31+
actions:
32+
- {name: read, energy: 1, latency: {{GlobalBufferLatency}}}
33+
- {name: write, energy: 1, latency: {{GlobalBufferLatency}}}
34+
spatial:
35+
- {name: Y, fanout: 4}
36+
37+
- !Memory
38+
name: DistributedBuffer
39+
tensors: {keep: ~MainMemory, may_keep: All}
40+
spatial:
41+
- {name: X, fanout: 2}
42+
- {name: Y, fanout: 2}
43+
44+
- !Hierarchy
45+
spatial:
46+
- {name: X, fanout: 4}
47+
- {name: Y, fanout: 4}
48+
nodes:
49+
- !Memory
50+
name: Scratchpad
51+
52+
- !Compute
53+
name: MAC

0 commit comments

Comments
 (0)