|
5 | 5 | from functools import partial |
6 | 6 |
|
7 | 7 | from Deeploy.AbstractDataTypes import PointerClass |
8 | | -from Deeploy.CommonExtensions.CodeTransformationPasses.Closure import ClosureGeneration |
9 | | -from Deeploy.CommonExtensions.CodeTransformationPasses.Closure import MemoryAwareClosureGeneration |
10 | | -from Deeploy.CommonExtensions.CodeTransformationPasses.MemoryAllocation import ArgumentStructGeneration |
11 | | -from Deeploy.CommonExtensions.CodeTransformationPasses.MemoryAllocation import MemoryManagementGeneration |
12 | | -from Deeploy.CommonExtensions.DataTypes import float32_t |
13 | | -from Deeploy.CommonExtensions.DataTypes import int8_t |
14 | | -from Deeploy.CommonExtensions.DataTypes import int32_t |
15 | | -from Deeploy.CommonExtensions.DataTypes import uint8_t |
16 | | -from Deeploy.DeeployTypes import CodeTransformation |
17 | | -from Deeploy.DeeployTypes import NodeBinding |
| 8 | +from Deeploy.CommonExtensions.CodeTransformationPasses.Closure import ClosureGeneration, MemoryAwareClosureGeneration |
| 9 | +from Deeploy.CommonExtensions.CodeTransformationPasses.MemoryAllocation import ArgumentStructGeneration, \ |
| 10 | + MemoryManagementGeneration |
| 11 | +from Deeploy.CommonExtensions.DataTypes import float32_t, int8_t, int32_t, uint8_t |
| 12 | +from Deeploy.DeeployTypes import CodeTransformation, NodeBinding |
18 | 13 | from Deeploy.FutureExtension.CodeTransformationPasses.FutureCodeTransformation import FutureGeneration |
19 | | -from Deeploy.Targets.Generic.Templates import ConcatTemplate |
20 | | -from Deeploy.Targets.Generic.Templates import iNoNormTemplate |
21 | | -from Deeploy.Targets.Generic.TypeCheckers import AddChecker |
22 | | -from Deeploy.Targets.Generic.TypeCheckers import ConcatChecker |
23 | | -from Deeploy.Targets.Generic.TypeCheckers import DivChecker |
24 | | -from Deeploy.Targets.Generic.TypeCheckers import GatherChecker |
25 | | -from Deeploy.Targets.Generic.TypeCheckers import GEMMChecker |
26 | | -from Deeploy.Targets.Generic.TypeCheckers import HardSwishChecker |
27 | | -from Deeploy.Targets.Generic.TypeCheckers import iNoNormChecker |
28 | | -from Deeploy.Targets.Generic.TypeCheckers import MatMulChecker |
29 | | -from Deeploy.Targets.Generic.TypeCheckers import MulChecker |
30 | | -from Deeploy.Targets.Generic.TypeCheckers import ReshapeChecker |
31 | | -from Deeploy.Targets.Generic.TypeCheckers import RMSNormChecker |
32 | | -from Deeploy.Targets.Generic.TypeCheckers import RQAddChecker |
33 | | -from Deeploy.Targets.Generic.TypeCheckers import SoftmaxChecker |
34 | | -from Deeploy.Targets.Generic.TypeCheckers import TransposeChecker |
35 | | -from Deeploy.Targets.Snitch.CodeTransformationPasses import SnitchClusterTiling |
36 | | -from Deeploy.Targets.Snitch.CodeTransformationPasses import SnitchCoreFilterPass |
37 | | -from Deeploy.Targets.Snitch.CodeTransformationPasses import SnitchSynchCoresPass |
| 14 | +from Deeploy.Targets.Generic.Templates import ConcatTemplate, iNoNormTemplate |
| 15 | +from Deeploy.Targets.Generic.TypeCheckers import AddChecker, ConcatChecker, DivChecker, GatherChecker, GEMMChecker, \ |
| 16 | + HardSwishChecker, MatMulChecker, MulChecker, ReshapeChecker, RMSNormChecker, RQAddChecker, SoftmaxChecker, \ |
| 17 | + TransposeChecker, iNoNormChecker |
| 18 | +from Deeploy.Targets.Snitch.CodeTransformationPasses import SnitchClusterTiling, SnitchCoreFilterPass, \ |
| 19 | + SnitchSynchCoresPass |
38 | 20 | from Deeploy.Targets.Snitch.DMA.SnitchDma import SnitchDma |
39 | | -from Deeploy.Targets.Snitch.Templates import AddTemplate |
40 | | -from Deeploy.Targets.Snitch.Templates import FloatGemmTemplate |
41 | | -from Deeploy.Targets.Snitch.Templates import FloatMatMulTemplate |
42 | | -from Deeploy.Targets.Snitch.Templates import GatherTemplate |
43 | | -from Deeploy.Targets.Snitch.Templates import iSoftmaxTemplate |
44 | | -from Deeploy.Targets.Snitch.Templates import MatMulTemplate |
45 | | -from Deeploy.Targets.Snitch.Templates import ReshapeTemplate |
46 | | -from Deeploy.Targets.Snitch.Templates import RQAddTemplate |
47 | | -from Deeploy.Targets.Snitch.Templates import TransposeTemplate |
| 21 | +from Deeploy.Targets.Snitch.Templates import AddTemplate, FloatGemmTemplate, FloatMatMulTemplate, GatherTemplate, \ |
| 22 | + MatMulTemplate, ReshapeTemplate, RQAddTemplate, TransposeTemplate, iSoftmaxTemplate |
48 | 23 | from Deeploy.Targets.Snitch.Templates.FloatAddTemplate import referenceTemplate as FloatAddTemplate |
49 | 24 | from Deeploy.Targets.Snitch.Templates.FloatDivTemplate import referenceTemplate as FloatDivTemplate |
50 | 25 | from Deeploy.Targets.Snitch.Templates.FloatHardSwishTemplate import referenceTemplate as FloatHardSwishTemplate |
|
53 | 28 | from Deeploy.Targets.Snitch.Templates.FloatSoftmaxTemplate import FloatSoftmax_Template |
54 | 29 | from Deeploy.Targets.Snitch.Templates.GemmTemplate import SnitchGemm_Template |
55 | 30 | from Deeploy.Targets.Snitch.Templates.RqGemmTemplate import SnitchRqGemm_Template |
56 | | -from Deeploy.TilingExtension.CodeTransformationPasses.TilingVariableReplacement import TilingVariableReplacement |
57 | | -from Deeploy.TilingExtension.CodeTransformationPasses.TilingVariableReplacement import TilingVariableReplacementUpdate |
| 31 | +from Deeploy.TilingExtension.CodeTransformationPasses.TilingVariableReplacement import TilingVariableReplacement, \ |
| 32 | + TilingVariableReplacementUpdate |
58 | 33 |
|
59 | | -TilingCallClosure = partial(ClosureGeneration, closureSuffix = "_tiling_closure") |
| 34 | +TilingCallClosure = partial(ClosureGeneration, closureSuffix="_tiling_closure") |
60 | 35 | MemoryAwareFunctionCallClosure = partial(MemoryAwareClosureGeneration, |
61 | | - closureSuffix = "_closure", |
62 | | - startRegion = "L2", |
63 | | - endRegion = "L1") |
| 36 | + closureSuffix="_closure", |
| 37 | + startRegion="L2", |
| 38 | + endRegion="L1") |
64 | 39 |
|
65 | 40 | BasicTransformer = CodeTransformation( |
66 | 41 | [SnitchSynchCoresPass(), |
|
71 | 46 | TiledTransformer = CodeTransformation([ |
72 | 47 | SnitchCoreFilterPass("compute"), |
73 | 48 | TilingVariableReplacement("L1"), |
74 | | - TilingCallClosure(writeback = False), |
| 49 | + TilingCallClosure(writeback=False), |
75 | 50 | SnitchSynchCoresPass(), |
76 | 51 | TilingVariableReplacementUpdate("L1"), |
77 | 52 | SnitchClusterTiling("L2", "L1", SnitchDma()), |
78 | 53 | ArgumentStructGeneration(), |
79 | 54 | MemoryManagementGeneration("L1"), |
80 | | - MemoryAwareFunctionCallClosure(writeback = False, generateStruct = True), |
| 55 | + MemoryAwareFunctionCallClosure(writeback=False, generateStruct=True), |
81 | 56 | MemoryManagementGeneration("L2"), |
82 | 57 | MemoryManagementGeneration() |
83 | 58 | ]) |
|
0 commit comments