This is a short C++/Java/C#/Python benchmark. Based on Paul Heckbert's sources.
Clone or download
mayton
Latest commit 013f803 Jan 11, 2019
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
c-sharp Добавил .net core под windows Jul 12, 2018
c Add SSE4 Jul 9, 2018
common-lisp Migration from https://sourceforge.net/p/card-raytracer-bench/code/HE… Nov 5, 2016
cpp Поправил тесты под виндовс Jul 12, 2018
d Add .exe extension into CPP/D/Rust output Jul 8, 2018
experimental Upgrade scala version to 2.12.7 Oct 14, 2018
fpc Вынес описание установки в отдельный файл Jul 4, 2018
go Вынес описание установки в отдельный файл Jul 4, 2018
java-mt Console improoved with Commons-Cli Jan 11, 2019
java Вынес описание установки в отдельный файл Jul 4, 2018
js Вынес описание установки в отдельный файл Jul 4, 2018
php Добавил запуск PHP Jul 4, 2018
python Вынес описание установки в отдельный файл Jul 4, 2018
results result Jul 4, 2018
ruby Migration from https://sourceforge.net/p/card-raytracer-bench/code/HE… Nov 5, 2016
rust Add .exe extension into CPP/D/Rust output Jul 8, 2018
tools Поправил тесты под виндовс Jul 12, 2018
.gitignore Changes in .gitignore Oct 14, 2018
LICENSE Initial commit Nov 5, 2016
README.md Add author Nov 23, 2018
install-ubuntu.txt test git 2 Jul 6, 2018
make.sh Вынес описание установки в отдельный файл Jul 4, 2018
run-benchmark.cmd Поправил тесты под виндовс Jul 12, 2018
run-benchmark.sh Add .exe extension into CPP/D/Rust output Jul 8, 2018

README.md

Welcome to Card Raytracer Benchmark.

card-raytrace

Our goals:

  1. Make the port of 'Card-Raytracer' into Java, Python, CSharp, Digital Mars D, GoLang, JavaScript

  2. Estimate performance index.

  3. Make conclusions

Short insructions for Users:

  1. Download & Install Java, Python, CSharp, Digital Mars D, GoLang, JavaScript environment.

  2. Run 'run-benchmark'

  3. Read report.

Developers

  1. Mayton

  2. Ruslan (kealon)

  3. MasterZiv (masterziv)

  4. dr-sm (dr-sm)

  5. Dmitriy (dmitriyt)

  6. Igor Yudincev (wolfnstein)

  7. Siemargl

  8. DRSM

REPORTS

Configuration: Ubuntu 16 LTS x86_64/Intel(R) Core(TM) i3-5005U CPU @ 2.00GHz

C (gcc version 7.3.0/Clang)

Author anguage/Type Options Elapsed time
Siemargl C/Raytracer_handofdos2 -O3 -march=native -m64 -msse4.2 -ffast-math 15,028s
Siemargl C/Raytracer_handofdosavx2 -O3 -march=native -m64 -msse4.2 -ffast-math -DAVX_VERSION 14,983s
Siemargl C/Raytracer_handofdosAVX3 -O3 -march=native -m64 -msse4.2 -ffast-math -DAVX_VERSION 58,454s
Siemargl Clang/Raytracer_handofdos_r2.clang.exe -lm -O3 -march=native -m64 -msse4.2 -ffast-math -DAVX_VERSION 16,868s
Siemargl Clang/Raytracer_handofdos_r3experimental.clang.exe -lm -O3 -march=native -m64 -msse4.2 -ffast-math -DAVX_VERSION 17,461s

C++ (gcc version 7.3.0, clang version 6.0.0-1ubuntu2)

Language/Type Options Elapsed time
C++/Canonical -O3 -march=native 18.74 s
C++/Opt -O3 -march=native 16.47 s
C++/RWolf -O3 -march=native 17.00 s
Clang++/Canonical -O3 -march=native 15.78 s
Clang++/Opt -O3 -march=native 18.92 s
Clang++/RWolf -O3 -march=native 19.41 s

Rust (?)

Language/Type Options Elapsed time
Rust 19.86 s

Java-10 (10.0.1)

Author Language/Type Options Elapsed time
Mayton Java -server -XXCompileThreashold=2 20s
Mayton Java/AOT -XX:AOTLibrary=... -server -XXCompileThreashold=2 19s

Digital Mars D : gdc (Ubuntu 8-20180414-1ubuntu2) 8.0.1 20180414 (experimental)

Language/Type Options Elapsed time
Dlang -O2 -msse4 -ffast-math 21.14 s

Node JS

Author Language/Type Options Elapsed time
DRSM NodeJS v8.10.0 121.76 s

GoLang

Author Language/Type Options Elapsed time
DRSM

Python/PyPy

Language/Type Options Elapsed time

C#/.Net (The Mono C# compiler is Copyright 2001-2011, Novell, Inc)

Language/Type Options Multithread options Elapsed time
C#/Single-Thread -o+ 75.31
C#/Multi-Thread -o+ 2 threads 37.67
C#/Multi-Thread -o+ 3 threads 41.34
C#/Multi-Thread -o+ 4 threads 40.34
C#/Multi-Thread -o+ 5 threads 41.76

PHP

Authror Language/Type Options Elapsed time
DRSM

Ruby

Language/Type Options Elapsed time

Free Pascal

Language/Type Options Elapsed time
FPC 3.0.4+dfsg-18 for x86_64 -CX -O3 -XX -vewnhi -Fi. -Fu. -FU. 55,48

Common Lisp

Language/Type Options Elapsed time

FAQ

F: How to display .ppm file?

A: Try to use: - http://www.irfanview.com/
- http://www.libreoffice.org/

Usefull links:

  1. Discussion:

    http://www.sql.ru/forum/1173809-1/tyapnichnyy-benchmark-cpu-part-1

  2. Other like projects

    https://github.com/mzucker/miniray https://github.com/dcousens/RayTracer