Performance "speed limits"

By: Maynard Handley (, June 12, 2019 10:13 pm
Room: Moderated Discussions
anon ( on June 11, 2019 7:34 pm wrote:
> Travis Downs ( on June 11, 2019 1:23 am wrote:
> > I wrote something about performance speed limits, which is basically a list of things
> > that might limit your code (mostly loops) to a specific level of performance. It's
> > quantitative, in that it tells you exactly how many iterations/cycle you'll get if
> > you hit a particular limit. I've used it in practice and find it effective.
> >
> > Have a read if it interests you. Feedback is welcome - I don't have a comments
> > system set up* but you could reply here or open an issue on github.
> The in-flight branch limit is interesting. It is alleged to be used to roll back architectural
> state in the case of a mispredict, but of course other operations can cause flushes. Loads and
> stores of course, likely other rarer machine state changes as well (e.g., some flags bits).
> I wonder if Intel attaches some kind of flush / rollback data to every one of these kind of instructions
> that may cause a flush. Or of the data contained in branch buffer is specifically more detailed
> and allows faster or more precise recovery as they are the most important case.

The academic state of the art is that you don’t record rollback info for EVERY branch, just for the low-confidence branches. This, of course, gives your ROB a lot more reach.

But it requires tracking branch *prediction confidence*, and it is unclear (at least to me) if any commercial HW is doing that yet.
< Previous Post in ThreadNext Post in Thread >
TopicPosted ByDate
Performance "speed limits"Travis Downs2019/06/11 01:23 AM
  Performance "speed limits"Adrian2019/06/11 03:52 AM
    Performance "speed limits"Travis Downs2019/06/11 09:28 AM
  Performance "speed limits"Paul A. Clayton2019/06/11 05:04 AM
    correction of my corrections!Paul A. Clayton2019/06/11 05:07 AM
    Performance "speed limits"Peter E. Fry2019/06/11 07:19 AM
      Performance "speed limits"Travis Downs2019/06/11 09:36 AM
    Performance "speed limits"Travis Downs2019/06/11 09:26 AM
  Performance "speed limits"Branches2019/06/11 08:04 AM
  Performance "speed limits"anon2019/06/11 07:06 PM
    Performance "speed limits"Travis Downs2019/06/11 07:12 PM
      Thank you, very nice writeup (NT)anon2019/06/11 07:37 PM
  Performance "speed limits"anon2019/06/11 07:34 PM
    Performance "speed limits"Maynard Handley2019/06/12 10:13 PM
    Performance "speed limits"Travis Downs2019/06/13 01:05 PM
Reply to this Topic
Body: No Text
How do you spell purple?