llvm-project/llvm/tools/llvm-mca/lib/HardwareUnits
Matt Davis db834837c2 [llvm-mca] Delay calculation of Cycles per Resources, separate the cycles and resource quantities.
Summary:
This patch removes the storing of accumulated floating point data 
within the llvm-mca library.

This patch splits-up the two quantities: cycles and number of resource units.
By splitting-up these two quantities, we delay the calculation of "cycles per resource unit"
until that value is read, reducing the chance of accumulating floating point error. 

I considered using the APFloat, but after measuring performance, for a large (many iteration)
sample, I decided to go with this faster solution.

Reviewers: andreadb, courbet, RKSimon

Reviewed By: andreadb

Subscribers: llvm-commits, javed.absar, tschuett, gbedwell

Differential Revision: https://reviews.llvm.org/D51903

llvm-svn: 341980
2018-09-11 18:47:48 +00:00
..
HardwareUnit.cpp
LSUnit.cpp
RegisterFile.cpp
ResourceManager.cpp [llvm-mca] Delay calculation of Cycles per Resources, separate the cycles and resource quantities. 2018-09-11 18:47:48 +00:00
RetireControlUnit.cpp
Scheduler.cpp [llvm-mca] Delay calculation of Cycles per Resources, separate the cycles and resource quantities. 2018-09-11 18:47:48 +00:00