[Info-vax] Emulation Performance
glen herrmannsfeldt
gah at ugcs.caltech.edu
Thu Jan 17 16:54:01 EST 2013
David Froble <davef at tsoft-inc.com> wrote:
> Stephen Hoffman wrote:
>> TL;DR: very little performance data is around; I haven't seen any
>> published list. I wouldn't expect the performance of even the best
>> available emulator to excel.
(snip)
>>> Is that kind of performance degradation (vs the same workload on
>>> antique native hardware) to be expected?
>> For instruction emulation, that's surprisingly good.
(snip)
> First understand, I know nothing ....
> Consider (as far as I know) what an emulator does. We throw around the
> phrase "emulate an Alpha" or whatever. But is it really emulating an
> Alpha? Now I'm guessing, and would enjoy reading any corrections, that
> the hardware is NOT emulated.
Yes, it is usual to do it from the specification the Instruction
Set Architecture (ISA). While things like pipelining might
influence the ISA, in most cases they are not actually part of
the ISA. Still, the ability to overlap instructions is an important
part of many RISC ISAs, and, as you note, often not emulated.
> What's happening is that the instructions are emulated to give the
> same result, from the instructions, that the hardware would give.
> But what about Out of Order, pipelines, and some
> of the rather esoteric stuff done in CPUs.
> It's my guess none of this is present, so the performance from
> such features is lost even before getting into the overhead of
> emulating the instructions.
Maybe not so bad for Alpha, but consider Itanium.
The whole idea behind VLIW, even more than RISC, is that the compiler
packs the operations for optimal execution overlap. It is likely
that an emulator can't take advantage of that. Even more, it may
not help so much in future generations of the actual hardware.
On the other hand, it many cases I/O isn't truly emulated.
It is possible in some cases to write a device driver for the guest
(emulated system) that directly goes to the host I/O system, without
emulating all the I/O instructions.
-- glen
More information about the Info-vax
mailing list