Subj : Re: CMPXCHG timing To : comp.programming.threads From : David Schwartz Date : Fri Apr 01 2005 03:59 pm "Michael Pryhodko" wrote in message news:1112399107.865711.5270@f14g2000cwb.googlegroups.com... > Ok. Situation: > - two processors have empy store buffers > - two processor were executing similar code for some time (i.e. > pipeline state should be similar) > - now they execute: > mov mem_addr, value > sfence > For me it is quite logical that they should spend the same amount of > clocks for this operation (suppose that flushing store buffer takes > the same time regardless of mem_addr). I understand that this is only > my assumptions. That's an absurd assumption and in general will not be true. This is *especially* true if they're running similar code because they're contending for resources and each time one CPU will win and one will lose (cachewise). There are so many reasons why this won't be true in the real world and new ones are appearing all the time. What about interrupts? DS .