home *** CD-ROM | disk | FTP | other *** search
- >Does executor store the native code
- >it generates on disk or does it regenerate on every restart of the
- >program?
-
- It generates native code every time the program is run. 68k code is
- only dynamically compiled as it is first executed, which is why you
- don't notice a huge lag on program start-up.
-
- >It seems to me that such a comparison (say 486/66 running
- >the synthetic benchmarks vs IBM code on same benchmarks) would show
- >how much farther the synthetic CPU has to go before matching the
- >performance of compiled code for the IBM.
-
- We don't have the source code to Speedometer, so we can't recompile it
- native for the x86. Although the ratio of emulated speed to native
- speed is certainly an interesting number for me (the emulator author),
- absolute performance is what matters to the end user. We can give
- people near-Quadra performance on a 486 DX/2 66, and that's good
- enough for most people. For programs that spend time in the "ROMs",
- our performance is even better than these numbers indicate.
-
- >In theory, it seems to me
- >that the synthetic CPU should be able to match the real one (it would
- >take alot of analysis... data flow and control flow analysis just like
- >in a real compiler/optimizer). Am I way off base here? Or is such
- >analysis too complicated for now?
-
- "In theory" much is possible, but the analysis would be too extensive
- to perform at runtime. Remember, we're emulating a big endian
- processor with 16 registers on a little endian processor with 8
- registers. Maintaining a big endian memory image necessitates extra
- work, and full inter-block register allocation would (probably) be too
- slow to do at runtime. A fair comparison might be an x86 version of
- the same benchmark coded in such a way as to maintain a big endian
- memory image.
-
- >Are there reaons besides time
- >constraints that heavy optimization isn't performed and then the
- >results stored on disk?
-
- No. Dynamic compilation is responsive enough and our performance is
- good enough that we haven't allocated resources to opening this can of
- worms. We *could* do this someday to augment our emulator's
- performance, and I would personally find such a project interesting,
- but for now that's low priority.
-
- -Mat
- mat@ardi.com
-
-