Re: Questions from a Beginner.

new topic     » goto parent     » topic index » view thread      » older message » newer message
Critic said...

Nice. But that's only one benchmark that "coincidently" does not seem to catch EU's copying problems. Try - hm, perhaps - the meteor-contest. (But most benchmarks of the language shootout are crap anyway.)

The meteor contest looks interesting, but it's also pretty challenging. Definitely something to look into. I tried the binary-trees benchmark (described as allocate and deallocate lots of trees). I'm not sure that there's a lot of copying that would go on, but certainly lots of reference counting should be happening.

I ran against the stuff I have at hand (perl and open watcom). I've used the perl rankings from the rankings page to estimate where euphoria and open watcom might have fallen among other popular programs. Note that the actual Scales (from the shootout page) are in bold, and my estimates are in italics.

For the OpenWatcom test, I used the C GNU gcc submission, which was #5 on the list. Here was the command line I used to build it:

  wcl386 /w0 /zq /j /zp4 /fpc /5r /ol /zp4  binary-trees.c 
The flags are those used to build the back end of euphoria.

Language Version Time (s) Scale
Java 6 1
C OpenWatcom 1.8 7 4.5
euphoria euc r2079 11 6.51
D 8
euphoria 3.1.1 18 10.65
python psycho 14
euphoria eui r2079 31 18
ruby 1.9 19
JavaScript SpiderMonkey 19
python IronPython 25
python 32
ruby 60
perl 5.8.8 140 83


The versions for some of the languages weren't mentioned, and, of course, my version of perl could be different. I'm pretty sure they ran their tests on linux. I'm on XP. The most interesting thing about this, however, is probably the fact that 3.1.1 beat the current version of 4.0.

Looking at the memory usage, it's pretty obvious that there's a memory leak in the current code. 3.1.1 never seems to go over about 14MB, while r2709 eats up about 1.8GB for me. The translated version never goes over 20MB, so it's definitely an interpreter issue. The 3.1.1 and r2079 translated memory usages look pretty favorable compared to others. I'm sure that cleaning up that leak will speed up the performance of 4.0.

I think euphoria holds up pretty well, especially taking the translator into account.

Matt

new topic     » goto parent     » topic index » view thread      » older message » newer message

Search



Quick Links

User menu

Not signed in.

Misc Menu