Tuesday, February 05, 2008

Performance: C, C++, C#, Java, Perl and Python

Mathieu Fourment (et al.) just published a paper on some performance testing on 6 programming languages in BMC Bioinformatics: A comparison of common programming languages used in bioinformatics (doi:10.1186/1471-2105-9-82). The below figure is from the paper, for a sequence alignment exercise (copyright with paper authors, OpenAccess license of journal):

Nothing shocking, I'd say; Java is similar in performance to C++.

What I'd love to have seen, was the performance of compiled Java too, using the java compiler (gcj) which comes with GCC 4.1.1. No idea why that was left out. One could also question why they did no use the 1.6 JVM of Sun, which is more faster (see these results on running the CDK unit tests). And, a major omission is Fortran.

Anyway, the authors provide the source code, so we can easily test ourselves the effects of that.

BTW, first post? :) update: At least I beat Carlos.