167 karma · joined May 24, 2020
It's far more common to have problems that are "sometimes easy to solve, sometimes hard to solve, easy to verify". That describes this problem as well as most NP-hard problems that with good heuristic solutions. The problem is those "sometimes easy to solve" cases break your cryptography!
#1 is a big deal though. It's a huge burden to rewrite SIMD code over and over for every new instruction set, so people (and compiler implementers) just don't use it too often. Then you're paying power and die area for completely useless SIMD units.
It wasn't always this way. For example, FF beat Chrome in battery life until a few years ago, and FF extensions used to be superior in functionality Chrome extensions. Chrome eventually caught up in the few areas they were seriously lagging in, or Firefox shot itself in the foot trying to morph itself into a copy of Chrome (eg. multiprocess architecture, WebExtensions).
Today there is little reason to use any browser other than Chrome / Chromium or Safari (which is still superior on Mac / iOS in a few aspects).
- Liquid hydrogen is so cold that many metals weaken
- Exposure to hydrogen itself weakens many metals (hydrogen embrittlement)
- Liquid hydrogen expands rapidly if exposed to heat, so venting is needed
- Hydrogen leaks through the smallest of seams
Now imagine trying to build a tank that prevents all that from happening, and it has to be lightweight for usage on spacecraft / aircraft.
IOMMUs solve this problem by giving hardware devices their own virtual address spaces.