÷

 Step 1 : Are the Ada 2005 GNAT programs faster? At a glance.

This chart shows 3 comparisons - Time-used, Memory-used and Code-used.

Each chart bar shows, for one unidentified benchmark, how much the fastest Ada 2005 GNAT program used compared to the fastest C++ GNU g++ program.


 Step 2 : Are the Ada 2005 GNAT programs faster? Approximately.

This table shows 3 comparisons - Time-used, Memory-used and Code-used.

Each table row shows, for one named benchmark, how much the fastest Ada 2005 GNAT program used compared to the fastest C++ GNU g++ program.

 Ada 2005 GNAT used what fraction? used how many times more? 
Benchmark Time Memory Code Reduced N
 n-body±±
 pidigits±±
 reverse-complement±±±
 mandelbrot±±
 spectral-norm±
 fannkuch±
 fasta±
 k-nucleotide±
 regex-dna
 binary-trees1/2±
 chameneos-redux13×±± 60,000

± read the measurements and then read the program source code.

 Step 3 : Are the Ada 2005 GNAT programs faster? Measurements.

This table shows 5 measurements - CPU Time, Elapsed Time, Memory, Code and ~ CPU Load.

For each named benchmark, measurements of the fastest Ada 2005 GNAT program are shown for comparison against measurements of the fastest C++ GNU g++ program.

Program Source Code CPU secs Elapsed secs Memory KB Code B ~ CPU Load
 n-body 
Ada 2005 GNAT25.6925.691,2641723  0% 0% 100% 0%
C++ GNU g++23.8223.827881428  100% 0% 0% 0%
 pidigits 
Ada 2005 GNAT3.753.761,8521254  0% 0% 0% 100%
C++ GNU g++2.712.711,600682  0% 0% 0% 100%
 reverse-complement 
Ada 2005 GNAT1.721.34197,5843132  38% 3% 0% 90%
C++ GNU g++1.340.92245,4402275  68% 50% 14% 15%
 mandelbrot 
Ada 2005 GNAT36.659.2433,1161805  99% 99% 99% 100%
C++ GNU g++24.676.1730,436858  100% 100% 100% 100%
 spectral-norm 
Ada 2005 GNAT18.744.742,7441464  99% 99% 99% 99%
C++ GNU g++11.983.001,0321114  100% 100% 100% 100%
 fannkuch 
Ada 2005 GNAT124.5231.291,7921518  99% 99% 100% 100%
C++ GNU g++49.6113.631,1601186  81% 77% 100% 100%
 fasta 
Ada 2005 GNAT8.738.731,3001623  0% 0% 100% 0%
C++ GNU g++3.783.788161470  99% 1% 0% 0%
 k-nucleotide 
Ada 2005 GNAT28.1811.47254,0244504  49% 72% 40% 82%
C++ GNU g++14.804.31132,4523415  81% 80% 99% 84%
 regex-dna 
Ada 2005 GNAT46.4217.17158,1643334  58% 79% 64% 64%
C++ GNU g++14.674.7897,0641759  84% 60% 100% 63%
 binary-trees 
Ada 2005 GNAT44.0944.0899,580955  0% 0% 100% 0%
C++ GNU g++18.866.32173,332892  60% 74% 74% 71%
 chameneos-redux N = 60,000 reduced workload 
Ada 2005 GNAT1.980.942,0161615  52% 51% 44% 50%
C++ GNU g++0.200.07?1845  57% 57% 75% 75%

 Measurements for all the accepted programs

 Ada 2005 GNAT : large-scale safety-critical software 

book Ada Distilled: An introduction to Ada Programming for Experienced Computer Programmers, Richard Riehle, 2003 (pdf)

wikibook Ada Programming

GNAT 4.3.3

Home Page: The Libre Site

Download: Download GNAT GPL Edition

Revised BSD license