MispredictedBranchesTest was used for tests
(random case)
| Counter |
random case |
random % |
predictable case |
predictable % |
| RESOURCE_STALLS.ANY |
822738037 |
100% |
1049479394 |
100% |
| RESOURCE_STALLS.BR_MISS_CLEAR |
200541074 |
24% |
178300913 |
17% |
| RESOURCE_STALLS.ROB_FULL |
362559 |
0% |
358405 |
0% |
| RESOURCE_STALLS.LD_ST |
1196932 |
0% |
182299050 |
17% |
| RESOURCE_STALLS.RS_FULL |
620809986 |
75% |
678978611 |
64% |
(totals compare to 'ANY' within 1%)
And yet, there are MORE stalls for the predictable case, that runs faster...
#!/bin/bash
APP="./br r"
sep -start -c -ec "RESOURCE_STALLS.ANY" -out 1_ANY -app taskset -args "-c 1 $APP"
sep -start -c -ec "RESOURCE_STALLS.BR_MISS_CLEAR" -out 2_BR_MISS -app taskset -args "-c 1 $APP"
sep -start -c -ec "RESOURCE_STALLS.ROB_FULL" -out 3_ROB_FULL -app taskset -args "-c 1 $APP"
sep -start -c -ec "RESOURCE_STALLS.LD_ST" -out 4_LD_ST -app taskset -args "-c 1 $APP"
sep -start -c -ec "RESOURCE_STALLS.RS_FULL" -out 5_RS_FULL -app taskset -args "-c 1 $APP"
--
MattWalsh - 24 Aug 2006