Answer by Danny for Why isn't RDTSC a serializing instruction?
If you are trying to use rdtsc to see if a branch mispredicts, the non-serializing version is what you want.//math hererdtscbranch if zero to done//do some work that always takes 1 cycledone: rdtscIf...
View ArticleAnswer by Andy Ross for Why isn't RDTSC a serializing instruction?
As paxdiably explains, RDTSC predates the concept of "serializing" instructions because it was implemented on an in-order CPU. Adding that behavior later would change the memory access behavior of code...
View ArticleAnswer by paxdiablo for Why isn't RDTSC a serializing instruction?
The time stamp counter was introduced on the Pentium microarchitecture. Out-of-order execution didn't show up until the Pentium Pro. Intel could have made rdtsc serializing (architecturally or...
View ArticleAnswer by Brian Cain for Why isn't RDTSC a serializing instruction?
why didn't they make RDTSC serializing? The entire point of it appears to be to get cycle accurate timingsWell, most of the time it's to get high-resolution timestamps. At least some of the time, these...
View ArticleWhy isn't RDTSC a serializing instruction?
The Intel manuals for the RDTSC instruction warn that out of order execution can change when RDTSC is actually executed, so they recommend inserting a CPUID instruction in front of it because CPUID...
View Article
More Pages to Explore .....