Skip to content

Commit fe924e8

Browse files
committed
[RISCV] Update MicroOpBufferSize in P400 & P600 scheduling models
TBA...
1 parent 789bfdc commit fe924e8

File tree

5 files changed

+10
-10
lines changed

5 files changed

+10
-10
lines changed

llvm/lib/Target/RISCV/RISCVSchedSiFiveP400.td

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -119,7 +119,7 @@ class SiFiveP400VSM3CCycles<string mx> {
119119

120120
def SiFiveP400Model : SchedMachineModel {
121121
let IssueWidth = 3; // 3 micro-ops are dispatched per cycle.
122-
let MicroOpBufferSize = 56; // Max micro-ops that can be buffered.
122+
let MicroOpBufferSize = 96; // Max micro-ops that can be buffered.
123123
let LoadLatency = 4; // Cycles for loads to access the cache.
124124
let MispredictPenalty = 9; // Extra cycles for a mispredicted branch.
125125
let UnsupportedFeatures = [HasStdExtZbkb, HasStdExtZbkc, HasStdExtZbkx,

llvm/lib/Target/RISCV/RISCVSchedSiFiveP600.td

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -286,10 +286,10 @@ class SiFiveP600VSHA2MSCycles<string mx, int sew> {
286286

287287
// SiFiveP600 machine model for scheduling and other instruction cost heuristics.
288288
def SiFiveP600Model : SchedMachineModel {
289-
let IssueWidth = 4; // 4 micro-ops are dispatched per cycle.
290-
let MicroOpBufferSize = 160; // Max micro-ops that can be buffered.
291-
let LoadLatency = 4; // Cycles for loads to access the cache.
292-
let MispredictPenalty = 9; // Extra cycles for a mispredicted branch.
289+
let IssueWidth = 4; // 4 micro-ops are dispatched per cycle.
290+
let MicroOpBufferSize = 192; // Max micro-ops that can be buffered.
291+
let LoadLatency = 4; // Cycles for loads to access the cache.
292+
let MispredictPenalty = 9; // Extra cycles for a mispredicted branch.
293293
let UnsupportedFeatures = [HasStdExtZbkb, HasStdExtZbkc, HasStdExtZbkx,
294294
HasStdExtZknd, HasStdExtZkne, HasStdExtZknh,
295295
HasStdExtZksed, HasStdExtZksh, HasStdExtZkr,

llvm/test/tools/llvm-mca/RISCV/SiFiveP400/div.s

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -328,12 +328,12 @@ vfsqrt.v v8, v16
328328

329329
# CHECK: Iterations: 1
330330
# CHECK-NEXT: Instructions: 320
331-
# CHECK-NEXT: Total Cycles: 22358
331+
# CHECK-NEXT: Total Cycles: 19388
332332
# CHECK-NEXT: Total uOps: 320
333333

334334
# CHECK: Dispatch Width: 3
335-
# CHECK-NEXT: uOps Per Cycle: 0.01
336-
# CHECK-NEXT: IPC: 0.01
335+
# CHECK-NEXT: uOps Per Cycle: 0.02
336+
# CHECK-NEXT: IPC: 0.02
337337
# CHECK-NEXT: Block RThroughput: 14361.0
338338

339339
# CHECK: Instruction Info:

llvm/test/tools/llvm-mca/RISCV/SiFiveP400/vlseg-vsseg.s

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1606,7 +1606,7 @@ vsoxseg8ei64.v v8, (a0), v16
16061606

16071607
# CHECK: Iterations: 1
16081608
# CHECK-NEXT: Instructions: 1540
1609-
# CHECK-NEXT: Total Cycles: 29967
1609+
# CHECK-NEXT: Total Cycles: 28335
16101610
# CHECK-NEXT: Total uOps: 1540
16111611

16121612
# CHECK: Dispatch Width: 3

llvm/test/tools/llvm-mca/RISCV/SiFiveP600/div.s

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -328,7 +328,7 @@ vfsqrt.v v8, v16
328328

329329
# CHECK: Iterations: 1
330330
# CHECK-NEXT: Instructions: 320
331-
# CHECK-NEXT: Total Cycles: 14613
331+
# CHECK-NEXT: Total Cycles: 14397
332332
# CHECK-NEXT: Total uOps: 320
333333

334334
# CHECK: Dispatch Width: 4

0 commit comments

Comments
 (0)