mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2025-02-01 05:01:59 +01:00
X86 machine model: reduce SandyBridge and Haswell ILPWindow.
The initial values were arbitrary. I want them to be more conservative. This represents the number of latency cycles hidden by OOO execution. In practice, I think it should be within a small factor of the complex floating point operation latency so the scheduler can make some attempt to hide latency even for smallish blocks. These are by no means the best values, just a starting point for tuning heuristics. Some benchmarks such as TSVC run faster with this lower value for SandyBridge. I haven't run anything on Haswell, but it's shouldn't be 2x SB. llvm-svn: 179450
This commit is contained in:
parent
861493bc4f
commit
835ac00f78
@ -18,7 +18,7 @@ def HaswellModel : SchedMachineModel {
|
||||
let IssueWidth = 4;
|
||||
let MinLatency = 0; // 0 = Out-of-order execution.
|
||||
let LoadLatency = 4;
|
||||
let ILPWindow = 40;
|
||||
let ILPWindow = 30;
|
||||
let MispredictPenalty = 16;
|
||||
}
|
||||
|
||||
|
@ -19,7 +19,7 @@ def SandyBridgeModel : SchedMachineModel {
|
||||
let IssueWidth = 4;
|
||||
let MinLatency = 0; // 0 = Out-of-order execution.
|
||||
let LoadLatency = 4;
|
||||
let ILPWindow = 30;
|
||||
let ILPWindow = 20;
|
||||
let MispredictPenalty = 16;
|
||||
}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user