diff --git a/cmd/metrics/metadata.go b/cmd/metrics/metadata.go index fd5a3cf7..1a5deb7f 100644 --- a/cmd/metrics/metadata.go +++ b/cmd/metrics/metadata.go @@ -147,7 +147,7 @@ var baseMetadataScripts = []script.ScriptDefinition{ { Name: scriptPerfSupportedEvents, ScriptTemplate: `# Parse perf list JSON output to extract Hardware events and cstate/power events -perf list --json 2>/dev/null | awk ' +timeout 30 perf list --json 2>/dev/null | awk ' BEGIN { in_hardware_event = 0 event_name = "" @@ -192,7 +192,7 @@ BEGIN { { Name: scriptPerfAllSupportedEvents, ScriptTemplate: `# Parse perf list JSON output to extract Hardware events and cstate/power events -perf list --json 2>/dev/null | awk ' +timeout 30 perf list --json 2>/dev/null | awk ' BEGIN { event_name = "" } @@ -226,52 +226,52 @@ BEGIN { }, { Name: scriptPerfStatInstructions, - ScriptTemplate: "perf stat -a -e instructions sleep 1", + ScriptTemplate: "timeout 30 perf stat -a -e instructions sleep 1", Depends: []string{"perf"}, }, { Name: scriptPerfStatRefCycles, - ScriptTemplate: "perf stat -a -e ref-cycles sleep 1", + ScriptTemplate: "timeout 30 perf stat -a -e ref-cycles sleep 1", Depends: []string{"perf"}, }, { Name: scriptPerfStatPEBS, - ScriptTemplate: "perf stat -a -e INT_MISC.UNKNOWN_BRANCH_CYCLES sleep 1", + ScriptTemplate: "timeout 30 perf stat -a -e INT_MISC.UNKNOWN_BRANCH_CYCLES sleep 1", Architectures: []string{cpus.X86Architecture}, Depends: []string{"perf"}, }, { Name: scriptPerfStatOCR, - ScriptTemplate: "perf stat -a -e OCR.READS_TO_CORE.LOCAL_DRAM sleep 1", + ScriptTemplate: "timeout 30 perf stat -a -e OCR.READS_TO_CORE.LOCAL_DRAM sleep 1", Architectures: []string{cpus.X86Architecture}, Depends: []string{"perf"}, }, { Name: scriptPerfStatTMA, - ScriptTemplate: "perf stat -a -e '{topdown.slots, topdown-bad-spec}' sleep 1", + ScriptTemplate: "timeout 30 perf stat -a -e '{topdown.slots, topdown-bad-spec}' sleep 1", Architectures: []string{cpus.X86Architecture}, Depends: []string{"perf"}, }, { Name: scriptPerfStatAMDUncoreProbe, - ScriptTemplate: `perf stat -a -e "l3/event=0x4,umask=0xff,enallcores=0x1,enallslices=0x1,threadmask=0x3,name='l3_lookup_state.all_coherent_accesses_to_l3'/" sleep 1`, + ScriptTemplate: `timeout 30 perf stat -a -e "l3/event=0x4,umask=0xff,enallcores=0x1,enallslices=0x1,threadmask=0x3,name='l3_lookup_state.all_coherent_accesses_to_l3'/" sleep 1`, Architectures: []string{cpus.X86Architecture}, Vendors: []string{cpus.AMDVendor}, Depends: []string{"perf"}, }, { Name: scriptPerfStatFixedInstr, - ScriptTemplate: "perf stat -a -e '{{{.InstructionsList}}}' sleep 1", + ScriptTemplate: "timeout 30 perf stat -a -e '{{{.InstructionsList}}}' sleep 1", Depends: []string{"perf"}, }, { Name: scriptPerfStatFixedCycles, - ScriptTemplate: "perf stat -a -e '{{{.CpuCyclesList}}}' sleep 1", + ScriptTemplate: "timeout 30 perf stat -a -e '{{{.CpuCyclesList}}}' sleep 1", Depends: []string{"perf"}, }, { Name: scriptPerfStatFixedRefCycles, - ScriptTemplate: "perf stat -a -e '{{{.RefCyclesList}}}' sleep 1", + ScriptTemplate: "timeout 30 perf stat -a -e '{{{.RefCyclesList}}}' sleep 1", Depends: []string{"perf"}, }, {