4 ms·
It's really not all that bad, there's also the cache coloring and memory ordering stuff, but it's well documented at least. There is a lot more historical baroq
by mzs 11y ago
It's really not all that bad, there's also the cache coloring and memory ordering stuff, but it's well documented at least. There is a lot more historical baroque stuff about x86, like int 80, syscall, or sysenter? For extra credit how do you find-out and are you sure your approach works on Cyrix and Via too?
- JoshTriplett 11y ago> It's really not all that bad, there's also the cache coloring and memory ordering stuff, but it's well documented at least. There is a lot more historical baroque stuff about x86, like int 80, syscall, or sysenter? That's not relevant for current processors; it only matters if you need to support older processors, and in any case you always use the most capable interface provided by your processor. The older interface only matters if you support processors that are well over a decade old. Current processors have to support old software; current software need not support old processors. So unless you're hacking on the guts of the Linux syscall layer... > For extra credit how do you find-out and are you sure your approach works on Cyrix and Via too? Cyrix doesn't exist anymore, and VIA doesn't appear to have any current-generation hardware. So, unless you used to work on them and you have to avoid regressions, you can almost certainly safely ignore legacy hardware, just as you shouldn't optimize code for the Pentium 4 anymore. Especially if you're writing 64-bit code.
- nickpsecurity 11y agoGood points. Important to note that "current generation" hardware means something different to VIA given they focus on low power and embedded. They do plenty with 20-30 watts, though: http://www.via.com.tw/en/products/processors/quadcore/index.jsp http://www.via.com.tw/en/products/processors/quadcore/index....
- JoshTriplett 11y agoBy "current generation", I was going by the fact that Wikipedia shows no new models since 2011. If there's something new since then, great. (And everybody is focusing on low power and embedded these days. Not least of which because "high performance" and "low power" are really two sides of the same coin, since if you use less power you generate less heat, and speed depends heavily on heat dissipation.)
- nickpsecurity 11y agoThat makes more sense. Remember that it's an embedded board company (mainly), so they don't iterate as much on SOC's. The last processor, the quad-core VX11/H, was in 2012 and one of a few on 40nm. Does a lot of stuff for a x86 SOC in 5.8W (max). Their last board design was 2014. So, they're still chugging along. Most likely two things: slowly moving their I.P. to costly 40nm and developing new ones; moving slower in general because of terrible, financial situation IIRC. In long run, they'll probably die because they tried to compete in x86 and even mighty AMD with their volume & engineers haven't pulled that off. Far as low power, not everybody is focusing on x86-compatible, low-power chips these days. I only know three vendors: Intel, AMD, and VIA. So, it's that stuff that's relevant to a VIA comparison if we're talking x86 and legacy software/OS needing it. Students in labs throw together low-power, ARM/MIPS clones as a side effect of their simplicity and process node. x86 is so complicated that it took smart, HW engineers to do that with only a few companies trying and most gone. It's again why I'm anti-x86: entirely too complicated compared to multi-core RISC with hard-wired accelerators. See Cavium's Octeon III for an awesome example of that. http://www.cavium.com/OCTEON-III_CN7XXX.html http://www.cavium.com/OCTEON-III_CN7XXX.html