diff --git a/projects/rocprofiler-compute/src/omniperf_soc/soc_base.py b/projects/rocprofiler-compute/src/omniperf_soc/soc_base.py index b0d335b810..d0b01cbfda 100644 --- a/projects/rocprofiler-compute/src/omniperf_soc/soc_base.py +++ b/projects/rocprofiler-compute/src/omniperf_soc/soc_base.py @@ -194,6 +194,12 @@ class OmniSoC_Base: or "MI300X" in self.check_arch_override() ): self._mspec.gpu_model = "MI300X_A1" + # We need to distinguish MI308X by peeking reported num CUs + elif( + self._mspec.cu_per_gpu == "80" + or "MI308X" in self.check_arch_override() + ): + self._mspec.gpu_model = "MI308X" else: console_error( "Cannot parse MI300 details from rocminfo. Please verify output or set the arch using (e.g.,) " diff --git a/projects/rocprofiler-compute/src/omniperf_soc/soc_gfx942.py b/projects/rocprofiler-compute/src/omniperf_soc/soc_gfx942.py index 7b69c74193..88aeda39e9 100644 --- a/projects/rocprofiler-compute/src/omniperf_soc/soc_gfx942.py +++ b/projects/rocprofiler-compute/src/omniperf_soc/soc_gfx942.py @@ -69,6 +69,11 @@ class gfx942_soc(OmniSoC_Base): ) # self.roofline_obj = Roofline(args, self._mspec) + # --showmclkrange is broken in MI308X, hardcode freq + if self._mspec.gpu_model == "MI308X": + self._mspec.max_mclk = 1300 + self._mspec.cur_mclk = 1300 + # Set arch specific specs self._mspec._l2_banks = 16 self._mspec.lds_banks_per_cu = 32