I have benchmarked one thing, if you use variables in the loop computation rather than numbers or strings i.e.
a=1 b=0 repeat with i = 1 to 100000000 b = a + a end repeat You get a slight improvement 5-6%, I guess that's to do with the fact that Director's variables are all of a "variant" type so it has to guess each time even what a number 1 means, but if it's already declared it sort of helps...still it's all bloody slow -----Original Message----- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Tim Welford Sent: 06 January 2005 16:29 To: Lingo programming discussion list Subject: RE: <lingo-l> Lingo repeat loop versus other languages So, after more than 10 versions, does anybody have any idea why the backend is still so inefficient? -----Original Message----- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Valentin Schmidt Sent: 06 January 2005 13:13 To: Lingo programming discussion list Subject: Re: <lingo-l> Lingo repeat loop versus other languages I had already tested this as well, changes the ratio a bit, but no big difference, in lingo I get 22700 ms (instead of 27000), in c it's the same as before (arround 240 ms), so the ratio is then 95:1 Valentin Mark Whybird wrote: > What if you leave out the j=1? > > (i.e., just test an empty repeat loop) > > The test given could equally be proving only that the command "j=1" is > 100 times slower in lingo than VC++. > > I expect the real answer is somewhere in between. > > On my machine: (DMX04) > > -- "With j=1: 14923" > -- "Without j=1: 10614" > > but I don't have C++ to test how that goes without anything actually > happening in the loop. A guess at extrapolation from your figures and > mine would suggest lingo is about 60 or 70 times slower (which is > still lots slower, as you would expect). > > -- Mark Whybird > > my code: > > on dotests > > ms0 = the milliseconds > repeat with i = 1 to 100000000 > j=1 > end repeat > ms1 = the milliseconds > put "With j=1: " & (ms1-ms0) > > ms0 = the milliseconds > repeat with i = 1 to 100000000 > end repeat > ms1 = the milliseconds > put "Without j=1: " & (ms1-ms0) > > end dotests > > > > > > Valentin Schmidt wrote: > >> A) Lingo (DMX) >> ms0 = the milliseconds >> repeat with i = 1 to 100000000 >> j=1 >> end repeat >> ms1 = the milliseconds >> put (ms1-ms0) >> >> -- 26917 >> >> B) VC++ 6.0, console app >> ... >> _ftime( &tstruct0 ); >> for (i=0; i<100000000; i++) j=1; >> _ftime( &tstruct1 ); >> ... >> >> --> 240 (milliseconds) >> >> >> So a ratio of about 100:1 on my computer. >> >> Valentin >> >> >> >> Pedja wrote: >> >> >>> I don't know if I've asked this before (sorry if I have) >>> >>> Just out of curiosity does anyone know is there any speed difference >>> between Lingo's repeat loop and a repeat loop in some other >>> languages (C++,Java..etc) >>> >>> I know it all depends on what's inside the loop but theoretically if >>> it's just a simple 1+1 is it the same? >>> >>> Cheerio >>> >>> Pedja >>> >>> >>> [To remove yourself from this list, or to change to digest mode, go >>> to http://www.penworks.com/lingo-l.cgi To post messages to the >>> list, email lingo-l@penworks.com (Problems, email >>> [EMAIL PROTECTED]). Lingo-L is for learning and helping with >>> programming Lingo. Thanks!] >>> >>> >> [To remove yourself from this list, or to change to digest mode, go >> to http://www.penworks.com/lingo-l.cgi To post messages to the list, >> email lingo-l@penworks.com (Problems, email >> [EMAIL PROTECTED]). Lingo-L is for learning and helping with >> programming Lingo. Thanks!] [To remove yourself from this list, or to change to digest mode, go to http://www.penworks.com/lingo-l.cgi To post messages to the list, email lingo-l@penworks.com (Problems, email [EMAIL PROTECTED]). Lingo-L is for learning and helping with programming Lingo. Thanks!] [To remove yourself from this list, or to change to digest mode, go to http://www.penworks.com/lingo-l.cgi To post messages to the list, email lingo-l@penworks.com (Problems, email [EMAIL PROTECTED]). Lingo-L is for learning and helping with programming Lingo. Thanks!] [To remove yourself from this list, or to change to digest mode, go to http://www.penworks.com/lingo-l.cgi To post messages to the list, email lingo-l@penworks.com (Problems, email [EMAIL PROTECTED]). Lingo-L is for learning and helping with programming Lingo. Thanks!]