÷

 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.


 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
 mandelbrot±±
 pidigits±±
 reverse-complement±±±
 n-body±±
 spectral-norm±
 k-nucleotide±
 fasta±
 regex-dna
 binary-trees1/2±
 fannkuch±1/2
 chameneos-redux17×± 600,000

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

 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
 mandelbrot 
Ada 2005 GNAT22.795.7633,2841805  99% 99% 99% 99%
C++ GNU g++25.046.2928,824858  99% 99% 100% 100%
 pidigits 
Ada 2005 GNAT3.793.792,1921254  0% 100% 0% 0%
C++ GNU g++3.793.791,696682  0% 100% 0% 0%
 reverse-complement 
Ada 2005 GNAT1.190.98197,8683132  41% 63% 21% 0%
C++ GNU g++1.210.85245,6442275  37% 13% 80% 14%
 n-body 
Ada 2005 GNAT24.1124.101,5401723  0% 0% 0% 100%
C++ GNU g++20.5720.569321428  0% 0% 0% 100%
 spectral-norm 
Ada 2005 GNAT15.693.982,5281702  98% 99% 98% 99%
C++ GNU g++11.892.991,1961114  100% 99% 99% 99%
 k-nucleotide 
Ada 2005 GNAT27.8911.89256,6924504  45% 75% 30% 84%
C++ GNU g++20.275.54177,1482673  99% 88% 90% 93%
 fasta 
Ada 2005 GNAT6.546.551,5761623  0% 0% 0% 100%
C++ GNU g++2.262.269641470  100% 0% 1% 0%
 regex-dna 
Ada 2005 GNAT45.9916.50183,7323334  79% 68% 61% 66%
C++ GNU g++18.375.0497,4641588  87% 96% 90% 91%
 binary-trees 
Ada 2005 GNAT37.5937.59198,160955  100% 0% 0% 0%
C++ GNU g++28.559.01357,820892  71% 62% 95% 82%
 fannkuch 
Ada 2005 GNAT91.6591.651,500746  100% 0% 0% 0%
C++ GNU g++49.7513.741,3001186  80% 76% 100% 100%
 chameneos-redux N = 600,000 reduced workload 
Ada 2005 GNAT18.006.752,2761615  59% 66% 58% 60%
C++ GNU g++1.420.391,2681800  92% 90% 95% 88%

 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