home *** CD-ROM | disk | FTP | other *** search
/ Executor 2.0 / executorv2.0.iso / pc / linux / extra / docs / maillist / text / archive.96 / text0334.txt < prev    next >
Encoding:
Text File  |  1996-07-25  |  3.6 KB  |  73 lines

  1. >>>>> "Mike" == ChessMan  <chessman@voicenet.com> writes:
  2. In article <4e1aoj$ji8@news.voicenet.com> chessman@voicenet.com (ChessMan) writes:
  3.  
  4.  
  5.     Mike> Although Speedometer makes it look like that Executor is
  6.     Mike> running at say -- 25 mhz 68040 speed on a 90 mhz pentium -
  7.     Mike> other CPU intensive programs may not fare as well.  I got
  8.     Mike> MACCHESS 2.0 to run (quite well) on Executor and for the
  9.     Mike> same settings and position, it took MACCHESS almost 3x as
  10.     Mike> long on Executor to arrive at the same result - 124 seconds
  11.     Mike> to 43 seconds for my Daystar accelerated 68040 40 mhz
  12.     Mike> IIvx. Indicating a comparable speed of 14-15 mhz 68040.
  13.     Mike> Still impressive for an emulation program, but not quite as
  14.     Mike> impressive as some of the Speedometer results.
  15.  
  16. You're right in that the Speedometer results will not always scale,
  17. although if you're seeing a 90 MHz Pentium performing at the speed of
  18. a 14-15 MHz 68040, there *may* be more to it than straight CPU
  19. emulation speed differences.
  20.  
  21. The way Executor works (more information provided is provided in
  22. ftp://ftp.ardi.com/pub/SynPaper) is to translate commonly accessed
  23. blocks of m68k instructions into x86 instructions and then execute the
  24. x86 instructions.  This has two side-effects, either of which may be
  25. skewing the results in this case.
  26.  
  27. Because the original m68k and the x86 instructions have to be kept
  28. around, Executor uses more memory than a m68k based Mac uses, which
  29. means sometimes it has to page portions of memory out to disk in order
  30. to not run out of physical memory.  If Executor is doing *any* paging
  31. while computing, it will slow things down dramatically.  *If* you're
  32. running Executor without enough memory to do the computation without
  33. paging, then by trying on another machine with more memory you might
  34. get faster results.
  35.  
  36. In addition, Executor has to be aware of self-modifying code.  After
  37. all, if it memorizes that a particular set of m68k instructions map
  38. into a set of x86 instructions, if the original m68k instructions are
  39. changed then Executor needs to throw away the mapped instructions and
  40. do another recompile.  I don't know how MACCHESS 2.0 works, but if it
  41. dynamically builds board evaluators and then jumps into them, then
  42. Executor's performance will suffer for that.
  43.  
  44. Beyond those two limitations that are a direct result of the technique
  45. that Executor uses, there is also a potential performance hit
  46. associated with our particular implementation, in that in order to
  47. make Executor's synthetic CPU smaller there are some instructions and
  48. addressing modes that we never translate to native code, instead some
  49. m68k code is translated to an intermediate interpretive form which is
  50. what we use for m68k that isn't executed often enough to justify
  51. recompilation into native code.
  52.  
  53. But in general we've found that the Speedometer numbers really are
  54. good predictors of how well Executor will do on integer compute
  55. intensive tests.  We've tried various photoshop plug-ins and also had
  56. customers comment on the speed at which they've gotten various PCs to
  57. run applications like NIH-Image and Stella.
  58.  
  59. Were Executor 2 not so far behind (due to general slippage, holiday
  60. slippage, and MACWORLD Expo slippage), then it would be fun to find
  61. out specifically what's going on with MACCHESS 2.0, but since Mat is
  62. already 75% done on VCPU -- our next generation of synthetic CPU --
  63. which is significantly faster yet, we'll probably wait to look at
  64. MACCHESS 2.0's performance under VCPU, rather than Syn68k.
  65.  
  66. Thanks for the info.  Where are those 200 MHz P6s when you need them?
  67.  
  68.     Mike> Mike B.
  69.  
  70. --Cliff
  71. ctm@ardi.com
  72.  
  73.