[SATLUG] Filesystem/RAID advice

Brad Knowles brad at shub-internet.org
Sun Oct 24 18:28:28 CDT 2010

On Oct 24, 2010, at 5:45 PM, travis+ml-satlug at subspacefield.org wrote:

> It's a simple fact that emulating something in software takes longer
> than doing the native operation in hardware.

Actually, it depends on the hardware and software.  If the hardware is slow enough and the software is fast enough, it may actually be faster to emulate it in software than to run it in hardware.

> Given the above, I think the burden of proof is on you to make the
> case that trap-and-emulate can be faster than running the exact same
> operations natively.

If you're talking about the same operations on the same hardware, versus being emulated in software and run on the same hardware, I'll agree with you there.

But the big trick to a lot of emulation is that you're not actually emulating the hardware itself, you're emulating many layers of software that is running on top of the hardware.  If you can translate those layers of software and intercept the calls earlier in the stack and replace the layers underneath with other software that has been tuned to execute faster, then you can make it seem like emulating hardware in software on the same machine is actually faster than running the software on the bare hardware -- what you've really done is cut out many layers of crappy software and replaced them with more efficient software that runs faster.

> I'm not arguing that NTFS isn't a lousy file system, or that Windows
> doesn't suck, I'm just saying that adding a layer of virtualization is
> unlikely to _increase_ speed, except in certain cases where you're
> somehow improving performance "below" the guest compared to raw
> hardware (for example, giving the guest a larger disk buffer than it
> could keep natively).

See above.  There are plenty of cases where Microsoft has shipped really, really crappy software, and by chopping out many of the layers of crappy software that Microsoft has shipped, it is quite possible that you can make the same code run faster in a "virtual machine".

However, beyond that possibility, there is still a lot of work that needs to be done to prove that the implementation inside the virtual machine is actually faster.

Brad Knowles <brad at shub-internet.org>
LinkedIn Profile: <http://tinyurl.com/y8kpxu>

More information about the SATLUG mailing list