Home Documentation Benchmarks
Benchmarks PDF Print
Written by Administrator   
Monday, 26 October 2009 21:04

Computer Language Benchmarks Game

Here, you can compare the performance of Lisaac programs against some other language implementation, or check the Lisaac time and memory measurement. (The Computer Language Benchmarks Game)

Lisaac vs GCC

A MPEG2 deoder written in C was rigorously translated in Lisaac :

Lisaac :

  • Version : 0.12
  • Compilation options : -O -i20

GCC :

  • Version : 4.1.2
  • Compilation options : -O3 -fomit-frame-pointer -ftree-vectorize -msse -march=pentium4 -mtune=pentium4

Platform

  • Operating System : Debian unstable/lenny
  • Processor : Intel(R) Core(TM)2 Quad CPU 2.40GHz
  • Memory : 4GB DDR
  • Video used in the benchmark : 80 MB, 1m51s

And here is the result of the benchmark :

C version Lisaac version Lisaac Rate (%)
Code line count 9888 6003 35.3% less
Binary size 76Kb 88Kb 13.64% more
Text size 51427b 53887b 4.78% more
Run time YUV format (s) 30.74 44.43 44.5% slower
Run time SIF format (s) 60.67 59.15 2.5% faster
Run time TGA format (s) 97.87 83.48 17.2% faster
Run time PPM format (s) 97.33 83.70 16.3% faster
Lisaac is a high level language, so it explain 35.3% code line less than C program.
Specialisations of the code made by the Lisaac compiler explain the 13.64% surplus of binary size.
Data structure are heavier in Lisaac than C, but all memory is dynamically managed in Lisaac, so memory uses at runtime is about equal.

Lisaac compiler evolution

Platform

  • Processor : Athlon 2.4GHz
  • Memory : 512 MB
  • Compiler versions involved : 0.083 vs 0.11

And here is the result of the benchmark :

Compiler Memory Lines (C) Binary size Time Notes
Lisaac 0.083 441 MB 387 030 2.6 MB 28 s (2)
Lisaac 0.11 (First step) 315 MB 404 451 3.2 MB 20 s (1)
Lisaac 0.11 (Next step) 310 MB 246 263 3.4 MB 16 s (1) (2)
Lisaac 0.083 -d 530 MB 570 680 6.5 MB 52 s (3)
Lisaac 0.11 -d 360 MB 736 546 10.9 MB 18 s (3)
(1) Improvement of 20% of generated code.
(2) Improvement of 42% of compiler speed.
(3) Improvement of 65% of compiler speed (almost same performance as normal mode).

Bootstrap

Language Lines(*) Time Memory
Lisaac 0.083 16.105 11 s 225 MB
Lisaac 0.082 16.210 11 s 225 MB
Lisaac 0.081 15.918 11 s 230 MB
Lisaac 0.073 15.600 118 s 192 MB
SmartEiffel 1.1 17.200 135 s 286 MB
(*) Lines of the compiler without the library
Last Updated on Tuesday, 10 November 2009 14:42