diff options
author | Andrea Di Biagio <Andrea_DiBiagio@sn.scee.net> | 2018-06-18 17:04:56 +0000 |
---|---|---|
committer | Andrea Di Biagio <Andrea_DiBiagio@sn.scee.net> | 2018-06-18 17:04:56 +0000 |
commit | c75619bff71fa8e4e579c5dbd8c844dd3cf9c475 (patch) | |
tree | 044048175c6f51a22533754a7c1a84adccc21871 /tools/llvm-mca | |
parent | 853857830580afedbec1e614cf73bce643bb051e (diff) |
[llvm-mca] Use an ordered map to collect hardware statistics. NFC.
Histogram entries are now ordered by key. This should improves their
readability when statistics are printed.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@334961 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'tools/llvm-mca')
-rw-r--r-- | tools/llvm-mca/DispatchStatistics.h | 4 | ||||
-rw-r--r-- | tools/llvm-mca/RetireControlUnitStatistics.h | 4 | ||||
-rw-r--r-- | tools/llvm-mca/SchedulerStatistics.cpp | 6 | ||||
-rw-r--r-- | tools/llvm-mca/SchedulerStatistics.h | 6 |
4 files changed, 11 insertions, 9 deletions
diff --git a/tools/llvm-mca/DispatchStatistics.h b/tools/llvm-mca/DispatchStatistics.h index 3b735a16266..7b98a848df6 100644 --- a/tools/llvm-mca/DispatchStatistics.h +++ b/tools/llvm-mca/DispatchStatistics.h @@ -35,9 +35,9 @@ #define LLVM_TOOLS_LLVM_MCA_DISPATCHVIEW_H #include "View.h" -#include "llvm/ADT/DenseMap.h" #include "llvm/ADT/SmallVector.h" #include "llvm/MC/MCSubtargetInfo.h" +#include <map> namespace mca { @@ -49,7 +49,7 @@ class DispatchStatistics : public View { // is one counter for every generic stall kind (see class HWStallEvent). llvm::SmallVector<unsigned, 8> HWStalls; - using Histogram = llvm::DenseMap<unsigned, unsigned>; + using Histogram = std::map<unsigned, unsigned>; Histogram DispatchGroupSizePerCycle; void updateHistograms() { diff --git a/tools/llvm-mca/RetireControlUnitStatistics.h b/tools/llvm-mca/RetireControlUnitStatistics.h index e10c6626ee9..5c91af532ec 100644 --- a/tools/llvm-mca/RetireControlUnitStatistics.h +++ b/tools/llvm-mca/RetireControlUnitStatistics.h @@ -27,13 +27,13 @@ #define LLVM_TOOLS_LLVM_MCA_RETIRECONTROLUNITSTATISTICS_H #include "View.h" -#include "llvm/ADT/DenseMap.h" #include "llvm/MC/MCSubtargetInfo.h" +#include <map> namespace mca { class RetireControlUnitStatistics : public View { - using Histogram = llvm::DenseMap<unsigned, unsigned>; + using Histogram = std::map<unsigned, unsigned>; Histogram RetiredPerCycle; unsigned NumRetired; diff --git a/tools/llvm-mca/SchedulerStatistics.cpp b/tools/llvm-mca/SchedulerStatistics.cpp index 128bb8f4466..dc38f6889c9 100644 --- a/tools/llvm-mca/SchedulerStatistics.cpp +++ b/tools/llvm-mca/SchedulerStatistics.cpp @@ -81,8 +81,10 @@ void SchedulerStatistics::printSchedulerUsage(raw_ostream &OS) const { if (ProcResource.BufferSize <= 0) continue; - const BufferUsage &BU = BufferedResources.lookup(I); - TempStream << ProcResource.Name << ", " << BU.MaxUsedSlots << '/' + const auto It = BufferedResources.find(I); + unsigned MaxUsedSlots = + It == BufferedResources.end() ? 0 : It->second.MaxUsedSlots; + TempStream << ProcResource.Name << ", " << MaxUsedSlots << '/' << ProcResource.BufferSize << '\n'; } diff --git a/tools/llvm-mca/SchedulerStatistics.h b/tools/llvm-mca/SchedulerStatistics.h index bbb7535bdaf..08d8a349437 100644 --- a/tools/llvm-mca/SchedulerStatistics.h +++ b/tools/llvm-mca/SchedulerStatistics.h @@ -33,15 +33,15 @@ #include "View.h" #include "llvm/ADT/SmallVector.h" -#include "llvm/ADT/DenseMap.h" #include "llvm/MC/MCSubtargetInfo.h" +#include <map> namespace mca { class SchedulerStatistics : public View { const llvm::MCSchedModel &SM; - using Histogram = llvm::DenseMap<unsigned, unsigned>; + using Histogram = std::map<unsigned, unsigned>; Histogram IssuedPerCycle; unsigned NumIssued; @@ -53,7 +53,7 @@ class SchedulerStatistics : public View { unsigned MaxUsedSlots; }; - llvm::DenseMap<unsigned, BufferUsage> BufferedResources; + std::map<unsigned, BufferUsage> BufferedResources; void updateHistograms() { IssuedPerCycle[NumIssued]++; |