The Performance Cost Of Spectre/Meltdown/Foreshadow Mitigations On Linux
phoronix.com
phoronix.com
For example 90% of the JavaScript I run is for advertizing purposes. The pragmatic solution would be that either everybody moves to self-hosting ads, or that the neccessary telemetry for third parties is moved into a browser function. Web pages (that are not applications) should not need a "turing complete" language (in the vulgar sense of the term).
If you have real applications - like GMail or Facebook - you should run them in a sandbox, but they should not be treated differently from native apps. Yes, a native app could use Meltdown etc. to attack other apps, but usually it can compromize you even simpler since most desktop apps are not sandboxed. It can just open the memory of other apps or abuse accessibility functions. My point is, I don't expect MS Word or Photoshop to be perfectly sandboxed. I explicity trust the vendor when I install their app. If we would really trust what we trust, and really distrust what whe don't, a lot would be won.
Of course, I know that the world is not set up rationally and we'll continue to be compelled to trust untrustworthy code on our PCs, so for the time being it looks like we're stuck with the mitigations.
Care to elaborate? What about process isolation?
I assert that AMD is competitive [1] [2] and is definitely cutting into Intel sales [3] [4]. Even Intel's CEO thinks so [5].
Care to back up your claims with well known, respected, repeatable benchmarks?
[1] https://www.anandtech.com/show/11544/intel-skylake-ep-vs-amd...
[2] https://www.anandtech.com/show/12084/epyc-benchmarks-by-inte...
[3] https://www.forbes.com/sites/patrickmoorhead/2018/06/20/how-...
[4] https://www.fool.com/investing/2018/05/29/amd-keeps-chipping...
[5] https://www.cnbc.com/2018/06/11/amd-will-create-stiff-compet...
Even Greg-KH warns about Intel's performance due to these exploits: http://www.eweek.com/security/linux-kernel-developer-critici...
Ex-CEO.
The first is that your working set won't fit in the processor caches and has regular cache misses into main memory -- but most of the Epyc line has 64MB of L3 cache.
Then the access pattern has to be random rather than sequential, which knocks out a major class of the applications satisfying the first criteria (all the ones that process big files in sequential order).
Then the operating system scheduler has to fail to schedule the process on a core in the same node as its data, most commonly because you have a process with more active threads than there are threads per node.
What you're left with is, basically, large databases. But large databases also benefit significantly from more cores, memory channels and I/O. Which factor dominates is going to depend on specific usage, e.g. a database with randomly accessed individual bits will be more sensitive to latency whereas one containing pictures or other medium-large blocks of data will be more sensitive to memory bandwidth.
You can certainly find a worst-case usage pattern for one or the other but in general they're going to counterbalance each other.
Most working sets fit in even 8MB (or less) -- the reason for 64MB is to provide for multiple threads. In which case if one thread isn't using its proportionate share there are seven others that can use it. Sharing with sixty-three instead would be "better" but at some point it's diminishing returns.
I think you know that "total disaster" is pretty much hyperbole.
This is probably why AMD CPUs do not have as big of a drop; KPTI is not (urgently) necessary on AMD CPUs.
Sounds like a good way to remain insecure to all other types of vulnerabilities.
https://wiki.ubuntu.com/SecurityTeam/KnowledgeBase/SpectreAn...