Create dedicated subdirectory in perfmon configs for archs supporting roofline
Separate subdirs allows us to target different roofline counters for different archs (i.e. MI300 vs MI200) Signed-off-by: coleramos425 <colramos@amd.com>
Bu işleme şunda yer alıyor:
işlemeyi yapan:
Cole Ramos
ebeveyn
7a01f499d7
işleme
49371cacec
@@ -0,0 +1,9 @@
|
||||
pmc: SQ_INSTS_VALU_ADD_F16 SQ_INSTS_VALU_MUL_F16 SQ_INSTS_VALU_FMA_F16 SQ_INSTS_VALU_TRANS_F16 SQ_INSTS_VALU_ADD_F32 SQ_INSTS_VALU_MUL_F32 SQ_INSTS_VALU_FMA_F32 SQ_INSTS_VALU_TRANS_F32
|
||||
|
||||
pmc: SQ_INSTS_VALU_ADD_F64 SQ_INSTS_VALU_MUL_F64 SQ_INSTS_VALU_FMA_F64 SQ_INSTS_VALU_TRANS_F64 SQ_INSTS_VALU_MFMA_MOPS_F16 SQ_INSTS_VALU_MFMA_MOPS_BF16 SQ_INSTS_VALU_MFMA_MOPS_F32 SQ_INSTS_VALU_MFMA_MOPS_F64 TCP_TCC_READ_REQ_sum TCC_EA0_RDREQ_32B_sum TCC_EA0_RDREQ_sum TCC_EA0_WRREQ_64B_sum TCC_EA0_WRREQ_sum
|
||||
|
||||
pmc: SQ_LDS_IDX_ACTIVE SQ_LDS_BANK_CONFLICT TCP_TOTAL_CACHE_ACCESSES_sum TCP_TCC_WRITE_REQ_sum TCP_TCC_ATOMIC_WITH_RET_REQ_sum TCP_TCC_ATOMIC_WITHOUT_RET_REQ_sum
|
||||
|
||||
range:
|
||||
gpu:
|
||||
kernels:
|
||||
@@ -39,6 +39,7 @@ class gfx90a_soc(OmniSoC_Base):
|
||||
str(config.omniperf_home),
|
||||
"omniperf_soc",
|
||||
"profile_configs",
|
||||
self.get_arch(),
|
||||
"roofline",
|
||||
)
|
||||
)
|
||||
|
||||
@@ -25,7 +25,7 @@
|
||||
import os
|
||||
import config
|
||||
from omniperf_soc.soc_base import OmniSoC_Base
|
||||
from utils.utils import demarcate, mibench, console_log
|
||||
from utils.utils import demarcate, mibench, console_log, console_error
|
||||
from roofline import Roofline
|
||||
|
||||
|
||||
@@ -39,6 +39,7 @@ class gfx940_soc(OmniSoC_Base):
|
||||
str(config.omniperf_home),
|
||||
"omniperf_soc",
|
||||
"profile_configs",
|
||||
"gfx940",
|
||||
"roofline",
|
||||
)
|
||||
)
|
||||
@@ -80,6 +81,8 @@ class gfx940_soc(OmniSoC_Base):
|
||||
def profiling_setup(self):
|
||||
"""Perform any SoC-specific setup prior to profiling."""
|
||||
super().profiling_setup()
|
||||
if self.get_args().roof_only:
|
||||
console_error("Roofline temporarily disabled in MI300")
|
||||
# Performance counter filtering
|
||||
self.perfmon_filter(self.get_args().roof_only)
|
||||
|
||||
@@ -88,7 +91,7 @@ class gfx940_soc(OmniSoC_Base):
|
||||
"""Perform any SoC-specific post profiling activities."""
|
||||
super().post_profiling()
|
||||
|
||||
console_log("roofline", "Roofline temporarily disabled in Mi300")
|
||||
console_log("roofline", "Roofline temporarily disabled in MI300")
|
||||
# if not self.get_args().no_roof:
|
||||
# logging.info("[roofline] Checking for roofline.csv in " + str(self.get_args().path))
|
||||
# if not os.path.isfile(os.path.join(self.get_args().path, "roofline.csv")):
|
||||
|
||||
@@ -25,7 +25,7 @@
|
||||
import os
|
||||
import config
|
||||
from omniperf_soc.soc_base import OmniSoC_Base
|
||||
from utils.utils import demarcate, mibench, console_log
|
||||
from utils.utils import demarcate, mibench, console_log, console_error
|
||||
from roofline import Roofline
|
||||
|
||||
|
||||
@@ -39,6 +39,7 @@ class gfx941_soc(OmniSoC_Base):
|
||||
str(config.omniperf_home),
|
||||
"omniperf_soc",
|
||||
"profile_configs",
|
||||
"gfx940",
|
||||
"roofline",
|
||||
)
|
||||
)
|
||||
@@ -80,6 +81,8 @@ class gfx941_soc(OmniSoC_Base):
|
||||
def profiling_setup(self):
|
||||
"""Perform any SoC-specific setup prior to profiling."""
|
||||
super().profiling_setup()
|
||||
if self.get_args().roof_only:
|
||||
console_error("Roofline temporarily disabled in MI300")
|
||||
# Performance counter filtering
|
||||
self.perfmon_filter(self.get_args().roof_only)
|
||||
|
||||
@@ -88,7 +91,7 @@ class gfx941_soc(OmniSoC_Base):
|
||||
"""Perform any SoC-specific post profiling activities."""
|
||||
super().post_profiling()
|
||||
|
||||
console_log("roofline", "Roofline temporarily disabled in Mi300")
|
||||
console_log("roofline", "Roofline temporarily disabled in MI300")
|
||||
# if not self.get_args().no_roof:
|
||||
# logging.info("[roofline] Checking for roofline.csv in " + str(self.get_args().path))
|
||||
# if not os.path.isfile(os.path.join(self.get_args().path, "roofline.csv")):
|
||||
|
||||
@@ -25,7 +25,7 @@
|
||||
import os
|
||||
import config
|
||||
from omniperf_soc.soc_base import OmniSoC_Base
|
||||
from utils.utils import demarcate, mibench, console_log
|
||||
from utils.utils import demarcate, mibench, console_log, console_error
|
||||
from roofline import Roofline
|
||||
|
||||
|
||||
@@ -39,6 +39,7 @@ class gfx942_soc(OmniSoC_Base):
|
||||
str(config.omniperf_home),
|
||||
"omniperf_soc",
|
||||
"profile_configs",
|
||||
"gfx940",
|
||||
"roofline",
|
||||
)
|
||||
)
|
||||
@@ -80,6 +81,8 @@ class gfx942_soc(OmniSoC_Base):
|
||||
def profiling_setup(self):
|
||||
"""Perform any SoC-specific setup prior to profiling."""
|
||||
super().profiling_setup()
|
||||
if self.get_args().roof_only:
|
||||
console_error("Roofline temporarily disabled in MI300")
|
||||
# Performance counter filtering
|
||||
self.perfmon_filter(self.get_args().roof_only)
|
||||
|
||||
@@ -88,7 +91,7 @@ class gfx942_soc(OmniSoC_Base):
|
||||
"""Perform any SoC-specific post profiling activities."""
|
||||
super().post_profiling()
|
||||
|
||||
console_log("roofline", "Roofline temporarily disabled in Mi300")
|
||||
console_log("roofline", "Roofline temporarily disabled in MI300")
|
||||
# if not self.get_args().no_roof:
|
||||
# logging.info("[roofline] Checking for roofline.csv in " + str(self.get_args().path))
|
||||
# if not os.path.isfile(os.path.join(self.get_args().path, "roofline.csv")):
|
||||
|
||||
Yeni konuda referans
Bir kullanıcı engelle