Back to home page

DOS ain't dead

Forum index page

Log in | Register

Back to the forum
Board view  Mix view

CMOV (Developers)

posted by marcov, 22.03.2020, 18:32

>
> > (I came across this
> thread involving Linus Torvalds which indicates that the conditional
> jump solution may actually be better or no worse than cmov. Make of that
> what you will.)

Still, one of the other links says that VS2010 in 64-bit mode does generate cmov more. And that is from after Linus Torvalds analysis.

My own experiences (as a non-compiler dev) are a bit less hard cut. When cmov generation was added, FPC self compiled faster on 32-bit windows, afaik in Core2 times. (before that there was few processor specific optimization)

On the one hand that is a real, and not a micro benchmark, on the other hand it is possible that the result is one code-path vs the other and that other factors (like Pascal boolean handling with 1=true, 0=false) factor in and the whole codepath with cmov turned out to be faster, not just cmov itself.

I've also seen references that the preference for CMOV is avoid pollution the TLB with unneeded branch addresses, and let the register rename stage handle it. (and with uop caches of Sandy Bridge, the same branch miss latency now hurts more)

Maybe it is safest to conclude that it is undecided since all hunches and feelings are old (Core2 period), and we are now 10 generations "Core" architecture and an AMD resurgence further along.

> Note that CMOVcc has its own CPUID support bit. A processor being a 686+
> class does not necessarily mean it has CMOVcc.

I know, to my own detriment . I had a Via based firewall that didn't, and when the Smooth Wall went to a newer kernel version, it suddenly failed because the kernel was compiled with P6 compat. But that was like 8 years ago.

The oldest PC I still use (home+work) is a low power E-350 work server, but that is up for replacement this year (probably by a Ryzen based Athlon 200).

So then a mix of Ivy Bridges and one Sandy Bridge i5-2500 will be the eldest. Though that is partially bad luck since we had quite a big batch of 2nd generation Core2's, but the used mainboard of that generation had caps that weren't very durable. So they retired themselves basically :-P

Many linux distros are already phasing out 32-bit versions....

 

Complete thread:

Back to the forum
Board view  Mix view
22049 Postings in 2034 Threads, 396 registered users, 251 users online (1 registered, 250 guests)
DOS ain't dead | Admin contact
RSS Feed
powered by my little forum