2015-04-01

Crystal Internal Benchmark (April 2015)

So, today I stumbled upon a benchmark by Kostya. It's quite interesting to see the result :3
UPDATE: see the newer one (Nov 2016) here.

  • gcc (Ubuntu 4.8.2-19ubuntu1) 4.8.2
  • Nim Compiler Version 0.10.2 (2014-12-29) [Linux: amd64]
  • Crystal 0.5.5 [d814c6c] (Fri Dec 12 22:50:10 UTC 2014)
  • go version go1.4 linux/amd64
  • DMD64 D Compiler v2.066.1
  • V8 version 3.29.62 (candidate)
  • rustc 0.13.0-nightly (5745e4195 2014-11-12 22:57:16 +0000)
  • Scala compiler version 2.11.4 -- Copyright 2002-2013, LAMP/EPFL
  • Nodejs v0.10.25
  • PyPy 2.4.0 with GCC 4.6.3
  • topaz (ruby-1.9.3p125) (git rev b95c858) [x86_64-linux]
  • ruby 2.1.2p95 (2014-05-08 revision 45877) [x86_64-linux]
  • Python 2.7.6
  • rubinius 2.2.10 (2.1.0 bf61ae2e 2014-06-27 JI) [x86_64-linux-gnu]
  • jruby 1.7.19 (1.9.3p551) 2015-01-29 20786bd on Java HotSpot(TM) 64-Bit Server VM 1.7.0_67-b01 +jit [linux-amd64]
  • jruby 9.0.0.0.pre1 (2.2.0p0) 2015-01-20 d537cab Java HotSpot(TM) 64-Bit Server VM 24.65-b04 on 1.7.0_67-b01 +jit [linux-amd64]
  • Java HotSpot(TM) 64-Bit Server VM (build 24.65-b04, mixed mode)
  • julia version 0.3.1
  • clang version 3.5-1ubuntu1 (trunk) (based on LLVM 3.5)

Halvak loop finder
Language
Time,s
Memory, Mb
Crystal
15.66
390.9
Nim
16.74
887.7
C++
17.72
174.5
Scala
33.38
341.0
D
34.84
274.2
Go
44.56
424.9
Python Pypy
69.46
730.2
Python
396.54
724.0

Matrix multiplication
Language
Time,s
Memory, Mb
Julia Native
0.69
119.6
C
3.64
69.2
Java
3.68
134.3
Nim
3.73
131.8
D
3.75
71.8
Rust
3.79
100.9
Crystal
3.84
72.1
Go
4.77
75.6
Javascript V8
6.87
81.5
Python Pypy
7.10
89.2
Scala
10.26
154.0
Julia
27.74
159.7
Ruby Topaz
81.41
206.2
Ruby
338.40
82.8
Python
447.39
74.0
Ruby JRuby
412.61
574.9
Ruby JRuby9k
467.99
602.3
Ruby Rbx
591.70
325.0

JSON parse
Language
Time,s
Memory, Mb
C++ Rapid
0.79
687.1
Crystal Schema
1.39
292.3
Crystal Pull
1.75
1.2
Crystal
2.27
1085.8
Nim
3.32
1344.3
Python Pypy
4.99
1365.4
Rust
5.24
1519.1
C++ LibJson
5.49
2796.3
Go
6.27
420.9
Python
9.85
1409.1
Julia
10.48
2342.9
Ruby
10.54
2086.2
Javascript Node
11.61
926.4
C++ Boost
16.44
2915.2
Ruby JRuby9k
18.89
1996.8
Ruby JRuby
25.78
2712.6
D
35.39
926.6
Ruby Rbx
67.13
4681.0
Scala
343.13
2373.0

Base64 encode and decode
Language
Time,s
Memory, Mb
C
2.70
32.3
Ruby
2.73
125.3
Crystal
3.35
82.4
Nim
4.13
52.4
Ruby Rbx
4.29
30.7
C++
5.69
65.5
D
6.05
43.9
Python
7.62
52.6
Rust
7.84
42.9
Javascript Node
7.93
777.1
Python Pypy
8.22
114.6
Ruby JRuby
16.76
496.6
Ruby JRuby9k
17.72
417.1
Julia
19.08
155.7
Go
21.24
94.2
Scala
35.06
301.2

Brainfuck interpreter
Language
Time,s
Memory, Mb
Nim Clang
2.55
0.7
Nim Gcc
4.75
0.6
C++
5.08
1.1
Crystal
6.76
0.9
Go
7.57
1.0
Javascript V8
9.41
8.1
D
9.42
0.9
Rust
9.54
5.0
Scala
11.99
1.6
Javascript Node
17.72
9.5
Python Pypy
20.12
20.8
Ruby JRuby
96.20
97.0
Ruby Topaz
112.91
36.0
Ruby
226.86
8.0
Ruby JRuby9k
241.16
256.6
Julia
354.55
57.0
Python
452.44
4.9
Ruby Rbx
472.08
45.0

3 comments :

  1. McAfee.com/Activate Since the world is developing each day with new computerized advances, digital dangers, malware, information, and harming diseases have additionally turned out to be increasingly more progressed with every day. These digital contamination's harm a gadget or documents in different ways. McAfee.com/Activate  follows the concept of refine your system, you don’t need to worry about data loss or system failure because of the malfunctions. McAfee.com/Activate   works finely on every system including android and ios and supports device like, computer, laptops, mobile phones and tablets.  

    ReplyDelete
  2. If you want to protect your system online or locally from any unforeseen events   Norton.com/Setup   is is a must have software in your PC or Mac.
    Install your office.com/Setup by downloading now. Microsoft Office applications are a complete package if multiple integrations like Microsoft Office, Microsoft Power Point, Microsoft Excel etc. All of these programs have their own features and speciality and are used in a lot of industries, small organizations and big organizations.

    ReplyDelete
  3. I appreciate your blog and thanks for the informative share. If you are looking for  the best antivirus software and support so you should try one of them which may help you a lot.
    McAfee Customer Service 
    webroot.com/safe

    ReplyDelete

THINK: is it True? is it Helpful? is it Inspiring? is it Necessary? is it Kind?