Commit 7ddcda32 authored by gmx's avatar gmx Committed by Commit Bot

Enable profiling for Kabylake and Goldmont

Add Kabylake and Goldmont models to the Intel uarch table and
enable profiling for them.

BUG=b:63543388
TEST=none

Review-Url: https://codereview.chromium.org/2970163002
Cr-Commit-Position: refs/heads/master@{#487181}
parent 1751c38c
...@@ -49,8 +49,13 @@ const IntelUarchTableEntry kIntelUarchTable[] = { ...@@ -49,8 +49,13 @@ const IntelUarchTableEntry kIntelUarchTable[] = {
{"06_4C", "Airmont"}, // Braswell {"06_4C", "Airmont"}, // Braswell
{"06_4D", "Silvermont"}, // Avoton/Rangely {"06_4D", "Silvermont"}, // Avoton/Rangely
{"06_4E", "Skylake"}, {"06_4E", "Skylake"},
{"06_55", "Skylake"}, // Skylake-X
{"06_56", "Broadwell"}, // Broadwell-DE {"06_56", "Broadwell"}, // Broadwell-DE
{"06_5C", "Goldmont"},
{"06_5E", "Skylake"}, {"06_5E", "Skylake"},
{"06_5F", "Goldmont"}, // Denverton
{"06_8E", "Kabylake"},
{"06_9E", "Kabylake"},
{"0F_03", "Prescott"}, {"0F_03", "Prescott"},
{"0F_04", "Prescott"}, {"0F_04", "Prescott"},
{"0F_06", "Presler"}, {"0F_06", "Presler"},
......
...@@ -121,7 +121,8 @@ void ExtractVersionNumbers(const std::string& version, ...@@ -121,7 +121,8 @@ void ExtractVersionNumbers(const std::string& version,
// Returns if a micro-architecture supports LBR callgraph profiling. // Returns if a micro-architecture supports LBR callgraph profiling.
bool MicroarchitectureHasLBRCallgraph(const std::string& uarch) { bool MicroarchitectureHasLBRCallgraph(const std::string& uarch) {
return uarch == "Haswell" || uarch == "Broadwell" || uarch == "Skylake"; return uarch == "Haswell" || uarch == "Broadwell" || uarch == "Skylake" ||
uarch == "Kabylake";
} }
// Returns if a kernel release supports LBR callgraph profiling. // Returns if a kernel release supports LBR callgraph profiling.
...@@ -195,7 +196,8 @@ const std::vector<RandomSelector::WeightAndValue> GetDefaultCommands_x86_64( ...@@ -195,7 +196,8 @@ const std::vector<RandomSelector::WeightAndValue> GetDefaultCommands_x86_64(
cmds.push_back(WeightAndValue(5.0, kPerfRecordCacheMissesCmd)); cmds.push_back(WeightAndValue(5.0, kPerfRecordCacheMissesCmd));
return cmds; return cmds;
} }
if (intel_uarch == "SandyBridge" || intel_uarch == "Skylake") { if (intel_uarch == "SandyBridge" || intel_uarch == "Skylake" ||
intel_uarch == "Kabylake") {
cmds.push_back(WeightAndValue(50.0, kPerfRecordCyclesCmd)); cmds.push_back(WeightAndValue(50.0, kPerfRecordCyclesCmd));
cmds.push_back(WeightAndValue(20.0, callgraph_cmd)); cmds.push_back(WeightAndValue(20.0, callgraph_cmd));
cmds.push_back(WeightAndValue(15.0, kPerfRecordLBRCmd)); cmds.push_back(WeightAndValue(15.0, kPerfRecordLBRCmd));
...@@ -204,7 +206,8 @@ const std::vector<RandomSelector::WeightAndValue> GetDefaultCommands_x86_64( ...@@ -204,7 +206,8 @@ const std::vector<RandomSelector::WeightAndValue> GetDefaultCommands_x86_64(
cmds.push_back(WeightAndValue(5.0, kPerfRecordCacheMissesCmd)); cmds.push_back(WeightAndValue(5.0, kPerfRecordCacheMissesCmd));
return cmds; return cmds;
} }
if (intel_uarch == "Silvermont" || intel_uarch == "Airmont") { if (intel_uarch == "Silvermont" || intel_uarch == "Airmont" ||
intel_uarch == "Goldmont") {
cmds.push_back(WeightAndValue(50.0, kPerfRecordCyclesCmd)); cmds.push_back(WeightAndValue(50.0, kPerfRecordCyclesCmd));
cmds.push_back(WeightAndValue(20.0, callgraph_cmd)); cmds.push_back(WeightAndValue(20.0, callgraph_cmd));
cmds.push_back(WeightAndValue(15.0, kPerfRecordLBRCmdAtom)); cmds.push_back(WeightAndValue(15.0, kPerfRecordLBRCmdAtom));
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment