Speed of RR vs SuperCard

Richard Gaskin ambassador at fourthworld.com
Wed Apr 9 11:55:01 CDT 2003


livfoss at blueyonder.co.uk wrote:

> Folks,  I am not looking for any kind of controversy or X-talk war, but I
> would like to know if anyone has done any speed comparisons between Revolution
> and SuperCard (on Mac platforms of course). I'd always believed that Revo
> would be faster, since it's more thoroughly compiled than SC, but recently
> I've re-written one of my SC apps in Revo, and a tester reports that it runs
> 'like treacle' on an old Mac (pre-G3, running MacOS8.6). Of course I will
> investigate this further myself, and may well find horrendouse coding mistakes
> or whatever, but I wondered if anyone else has done any recent work on this.
> Personally I am very fond of SuperCard and will still use it for Mac-only
> projects, but equally I am highly impressed by Runtime Revolution and am very
> happy with its cross-plaftorm capabilities. Just need some objective
> comparisons for different styles of app.

I do a lot of conversions, almost equally split between moving from SC to MC
and moving from HC to MC, and in most cases MC is many times faster for most
operations running the same code.  When you optimize to take advantage of
MetaTalk/Transcript's unique language features (e.g., "repeat for each"),
the speed difference bumps up to orders of magnitude.

Both MC's Scott Raney and SC's Mark Lucas are excellent programmers, so this
is less a result of prowess necessarily than an architectural decision in
each of the respective interpreters:  SC and HC do everything related to
interpretation in one pass when running a script; MC/Rev (and ToolBook,
which has comperable performance) does a lot of the interpretation long
before they are executed, tokenizing the script into a bytecode said to be
far more efficient than methods used by systems like Java.

Other architectural differences include efforts to keep the token lookup
table as streamlined as possible.  For example, in SC and HC you can
override built-in functions, which is not allowed in Rev/MC.  While I can
appreciate the flexibility in allowing it, in practice I've never missed not
being able to in more than five years with MC.

You can run tests to compare specific language features with these
benchmarking tools:

<http://www.fourthworld.com/rev/channel/4W_RevBench.rev>
<http://www.fourthworld.com/supercard/channel/4W_SuperBench.sit>

Historically, my biggest challenge with speed in conversions is that it's
too fast -- this has come up with path animations and other such cases where
I had to add extra code to slow things down to get a spped more like the
original.

Thus far, the only operation I've come across that stands out as
consistently faster in another xTalk is HC's find command and some
operations dealing with field access which favor HC (though not by much
since MC optimized its core field access routines a few versions back).

I'd be interested in hearing what lies at the heart of your user's report.

PS: For extra bonus points, try running a set of tests in RevBench on both
your Mac and Windows machines.  I was very surprised by the results.....

-- 
 Richard Gaskin 
 Fourth World Media Corporation
 Developer of WebMerge 2.2: Publish any database on any site
 ___________________________________________________________
 Ambassador at FourthWorld.com       http://www.FourthWorld.com
 Tel: 323-225-3717                       AIM: FourthWorldInc




More information about the use-livecode mailing list