Slow LC 9 Performance - Test Stack, Video, QA Report

Curry Kenworthy curry at pair.com
Wed Sep 5 17:52:49 EDT 2018


Tom:

 > Thanks again for the efforts.

You're welcome! Glad you liked it.

I guess I should have mentioned that the big slowdown in LC 9 is not 
something that people will notice with extremely short code like go next 
card or put 12 into field 1. This is about substantial code (loops or 
many operations) or working with data. The speed of the code!

Here is a complete table of my test results:

http://curryk.com/lc-version-showdown-results.png

Some highlights:

LC 9 is 3x slower than LC 6 (and 49 times slower than JS) on a loop with 
math.

LC 9 is 2x to 4.5x slower than LC 6 on reading comma-delimited items and 
appending them to a text.

LC 9 is 2.4x slower than LC 6 (and 106x slower than JS) on accessing 
array elements and appending them to a text.

LC 9 holds its own against LC 6 (but is 4x slower than JS) on most 
big-text case-insensitive operations.

LC trumps JS on big-text replace with one-char search string.

Remember, we don't want to go back to LC 6. That's not the idea. We want 
progress. We want to go forward effectively into the bright future of 
LC, and that future should include good performance! Much brighter.

LC 6 comes into the picture for my testing because to measure 
performance, we must have a reference point. Anything divided by itself 
= 1. :)

So LC 6 is a useful speed reference. It also represents the actual speed 
my own code attained previously. Yes, I like speed. Hate to lose it. I'm 
using 9 every day now, and that's why I have all this test data. That's 
why I've noticed the issues. Significantly slower is usually not a good 
thing. Progress is, and optimization is too! Optimization is an 
important component of progress.

(The JS is thrown in as additional reference, and may suggest 
opportunities for further improvement in some of those areas, but my 
main concern right now is keeping LC running at least as fast as it has 
been, which currently boils down to 9 vs 6.)

Hope this info was useful!

Best wishes,

Curry Kenworthy

Custom Software Development
LiveCode Training and Consulting
http://livecodeconsulting.com/





More information about the use-livecode mailing list