Radio W4KAZ

Thanks for stopping by the virtual KazShack. Feel free to comment - I often approve them.

Compiler Benchmarks

Stumbled upon a blog post on a set of compiler benchmarks for a group of programming languages used on Unix platforms. (The benchmark library is kept by the Debian folks.) Many are widely used, some much less used. There are some graphical representations that present some of the program language trade offs visually.

The graphs are more or less code-size versus performance, with the “ideal” or 0,0 point of the graph being small code/fast performance. Presumably the reference to code size refers to the source code, since a good compiler can optimize several questionable programming practices. Also, it includes several interpreted languages, which are run on the fly rather than packaged and stored as machine level executable instructions by a program compiler. The graph for Java was maybe the standout, as it is not really compiled, but not stricly an interpreted language either. Obviously the Java buckaroos have been spending time on optimization in the underlying support libraries.

The folks over at FreeBasic have built a nice little GW basic compiler. They are trending towards OO techniques, but its not too hard to shoehorn a few old basic programs into compiling and working. No GUI front end though, so another package is needed to build windows user interfaces. Frebasic crosses the Linux/Windows divide too.

4 comments to Compiler Benchmarks

  • Java may be fully compiled to native code using either GCJ or Excelsior JET. I am not sure why, but the people doing those benchmarks chose to ignore this fact.

    • The original benchmarks were done in 2005. I don’t know if either compiler was available then. The GCJ packge appears to be newer than that.

      I went hunting for Java compilers about that time and did not find either then, so thanks for the tip.

  • Where’s the Fortan benchmarks? Some of us still like writing spaghetti code.

    • Well Punch, you’d need to ask the Unix geeks that one. I happen to hold that C allows plenty enough crappy technique. Not only can you still make code pasta, but you get a whole slew of ++ — operators and implicit coding techniques that can be used to really showcase how twisted your logic really can be when you really really set your mind to it.

      Better yet, just break a million lines of code up into three line classes, all named module_0001 through module_66666. OR yoU cAn ReAlLy HaVe FUn wITh thE nAmInG conVenTioNs and upper aNd LOWER cASe.

      So GiVe UP yer ObSoLeTe tOOlz, and Git wiT the OO mOOveMEnt AwlREadY. What good is 30 years of experience and familiarity anyway?

      Sincerely, Chad Hollerith

Leave a Reply

You can use these HTML tags

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>