
This article discusses a small-scale benchmark test run on nine modern computer languages or variants:
Java 1.3.1,
Java 1.4.2, C compiled with
gcc 3.3.1,
Python 2.3.2, Python compiled with
Psyco 1.1.1, and the four languages supported by Microsoft's
Visual Studio .NET 2003 development environment:
Visual Basic,
Visual C#,
Visual C++, and
Visual J#. The benchmark tests arithmetic and trigonometric functions using a variety of data types, and also tests simple file I/O. All tests took place on a Pentium 4-based computer running Windows XP.
Update: Delphi version of the benchmark
here.
I believe that -fomit-frame-pointer is not enabled at any optimization, therefore it's curious that it's specifically enabled for Visual C++, but not for gnu. Also, there's the potential that better performance would result from -O2, and then selectively optimizing from there, rather than going all the way to -O3.