÷

 Step 1 : Are the Clean 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 Clean program used compared to the fastest C++ GNU g++ program.


 Step 2 : Are the Clean 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 Clean program used compared to the fastest C++ GNU g++ program.

 Clean used what fraction? used how many times more? 
Benchmark Time Memory Code Reduced N
 sum-file1/21/5±
 binary-trees±±
 fannkuch±1/6
 nsieve±± 9
 spectral-norm±±±
 partial-sums±±±
 mandelbrot±±±
 recursive±1/2±
 n-body±1/2±
 k-nucleotide±
 nsieve-bits±±
 fasta±±
 reverse-complement±
 pidigits±±

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

 Step 3 : Are the Clean 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 Clean 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
 sum-file 
Clean2.923,100231  
C++ GNU g++6.2914,864260  
 binary-trees 
Clean4.1216,876627  
C++ GNU g++5.917,000541  
 fannkuch 
Clean7.745001020  
C++ GNU g++8.283,096554  
 nsieve N = 9 reduced workload 
Clean1.839,344465  
C++ GNU g++1.795,788313  
 spectral-norm 
Clean18.103,108660  
C++ GNU g++17.493,092442  
 partial-sums 
Clean1.943,088577  
C++ GNU g++1.843,096531  
 mandelbrot 
Clean3.623,292639  
C++ GNU g++3.003,312584  
 recursive 
Clean3.37612494  
C++ GNU g++2.591,008566  
 n-body 
Clean17.365081722  
C++ GNU g++12.789361705  
 k-nucleotide 
Clean11.6266,1001762  
C++ GNU g++7.639,3121380  
 nsieve-bits 
Clean4.554,876534  
C++ GNU g++2.803,328494  
 fasta 
Clean24.513,1161513  
C++ GNU g++11.693,1201248  
 reverse-complement 
Clean1.4843,0961064  
C++ GNU g++0.6313,288810  
 pidigits 
Clean14.343,116644  
C++ GNU g++2.853,124652  
 chameneos-redux
   No program
 regex-dna
   No program

 Measurements for all the accepted programs

 Clean : lazy & strict pure functional programming 

Clean Version 2.0 Language Report (HTML)

online book Functional Programming in Clean

Clean 2.2

Home Page: http://www.cs.kun.nl/~clean/index.html

Download: http://www.cs.kun.nl/~clean/Download/main/main.htm

Revised BSD license