EntityFX-Bench icon indicating copy to clipboard operation
EntityFX-Bench copied to clipboard

Benchmarks set written in C#, Java, PHP, JS, Python, Lua, Go

EntityFX Benchmarks Set

Languages

  • C#
  • PHP
  • JavaScript (Browser, NodeJS)
  • Java
  • Python
  • Lua
  • Golang

Benchmarks

  • Dhrystone (http://www.roylongbottom.org.uk/#anchorSource)
  • Whetstone (http://www.roylongbottom.org.uk/#anchorSource)
  • Scimark 2 (Original sources: https://math.nist.gov/scimark2/download.html)
  • Linpack (Based on: https://github.com/fommil/netlib-java/blob/master/perf/src/main/java/com/github/fommil/netlib/Linpack.java)
  • Generic:
    • Loops
    • Conditions
    • Arithmetics
    • Math
    • Array speed
    • String manipulation
    • Hash algorithms

Run benchmarks

C#

Mono:

cd release/dotnet/net45/
mono EntityFX.NetBenchmark.exe

DotNet Core:

cd release/dotnet/netcoreapp3.1/
dotnet EntityFX.NetBenchmark.dll

Java

cd /release/java
java -jar EntityFXBench.jar

JavaScript

Web

http://laseroid.azurewebsites.net/js-bench/

NodeJS

You must have nodejs installed

cd src/js
node ./node_main.js

PHP

cd src/php/
php -n -t 99999 -d memory_limit=2048M Main.php

Python

cd src/python/
python3 main.py

Lua

cd src/lua/
lua main.lua

Build

Dotnet

cd src/dotnet
dotnet build EntityFX.NetBenchmark.sln --configuration Release

Go

cd src/go/entityfx
go build

alternatively:

go get -u github.com/EntityFX/EntityFX-Bench/src/go/entityfx