77from Deeploy .DeeployTypes import CodeGenVerbosity , CodeTransformationPass , ExecutionBlock , NetworkContext , _NoVerbosity
88from Deeploy .TilingExtension .AsyncDma import AsyncDma
99from Deeploy .TilingExtension .CodeTransformationPasses .DoubleBufferingTilingCodeGeneration import \
10- DoubleBufferingTilingCodeGeneration , PerfCounterDoubleBufferingTilingMixIn , ProfilingDoubleBufferingTilingMixIn
10+ DoubleBufferingTilingCodeGeneration , ProfilingDoubleBufferingTilingMixIn
1111from Deeploy .TilingExtension .CodeTransformationPasses .SingleBufferingTilingCodeGeneration import \
12- PerfCounterSingleBufferingTilingMixIn , ProfilingSingleBufferingTilingMixIn , SingleBufferingTilingCodeGeneration
12+ ProfilingSingleBufferingTilingMixIn , SingleBufferingTilingCodeGeneration
1313
1414
1515class PULPClusterTilingGenerationSB (SingleBufferingTilingCodeGeneration ):
@@ -28,55 +28,24 @@ class ProfilingPULPClusterTilingGenerationDB(DoubleBufferingTilingCodeGeneration
2828 pass
2929
3030
31- class PerfCounterPULPClusterTilingGenerationSB (SingleBufferingTilingCodeGeneration , PerfCounterSingleBufferingTilingMixIn ):
32- """Single buffering with performance counter profiling"""
33- pass
34-
35-
36- class PerfCounterPULPClusterTilingGenerationDB (DoubleBufferingTilingCodeGeneration , PerfCounterDoubleBufferingTilingMixIn ):
37- """Double buffering with performance counter profiling"""
38- pass
39-
40-
41- class CombinedProfilingPULPClusterTilingGenerationSB (SingleBufferingTilingCodeGeneration , ProfilingSingleBufferingTilingMixIn , PerfCounterSingleBufferingTilingMixIn ):
42- """Single buffering with both cycle profiling and performance counter profiling"""
43- pass
44-
45-
46- class CombinedProfilingPULPClusterTilingGenerationDB (DoubleBufferingTilingCodeGeneration , ProfilingDoubleBufferingTilingMixIn , PerfCounterDoubleBufferingTilingMixIn ):
47- """Double buffering with both cycle profiling and performance counter profiling"""
48- pass
49-
50-
5131class PULPClusterTiling (CodeTransformationPass ):
5232
53- def __init__ (self , externalMemory : str , localMemory : str , dma : AsyncDma , usePerfCounters : bool = False ):
54- self .usePerfCounters = usePerfCounters
33+ def __init__ (self , externalMemory : str , localMemory : str , dma : AsyncDma ):
5534 self .SB = PULPClusterTilingGenerationSB (externalMemory , localMemory , dma )
5635 self .profilingSB = ProfilingPULPClusterTilingGenerationSB (externalMemory , localMemory , dma )
57- self .perfCounterSB = PerfCounterPULPClusterTilingGenerationSB (externalMemory , localMemory , dma )
58- self .combinedProfilingSB = CombinedProfilingPULPClusterTilingGenerationSB (externalMemory , localMemory , dma )
5936 self .DB = PULPClusterTilingGenerationDB (externalMemory , localMemory , dma )
6037 self .profilingDB = ProfilingPULPClusterTilingGenerationDB (externalMemory , localMemory , dma )
61- self .perfCounterDB = PerfCounterPULPClusterTilingGenerationDB (externalMemory , localMemory , dma )
62- self .combinedProfilingDB = CombinedProfilingPULPClusterTilingGenerationDB (externalMemory , localMemory , dma )
6338
6439 def apply (self ,
6540 ctxt : NetworkContext ,
6641 executionBlock : ExecutionBlock ,
6742 name : str ,
6843 verbose : CodeGenVerbosity = _NoVerbosity ) -> Tuple [NetworkContext , ExecutionBlock ]:
6944
70- if self .usePerfCounters and verbose .tilingProfiling :
71- # Use combined profiling: cycle measurements + performance counter stats
72- ctxt , executionBlock = self .combinedProfilingSB .apply (ctxt , executionBlock , name )
73- ctxt , executionBlock = self .combinedProfilingDB .apply (ctxt , executionBlock , name )
74- elif verbose .tilingProfiling :
75- # Use cycle profiling only (basic cycle measurements)
45+ if verbose .tilingProfiling :
7646 ctxt , executionBlock = self .profilingSB .apply (ctxt , executionBlock , name )
7747 ctxt , executionBlock = self .profilingDB .apply (ctxt , executionBlock , name )
7848 else :
79- # No profiling
8049 ctxt , executionBlock = self .SB .apply (ctxt , executionBlock , name )
8150 ctxt , executionBlock = self .DB .apply (ctxt , executionBlock , name )
8251
0 commit comments