7-Language Performance Benchmarks

SP combines modern high-level abstractions with bare-metal LLVM code generation. Across 5 compute workloads, SP matches optimized C, C++, and Rust performance.

Recursive Fibonacci (n=40)

Evaluates function call overhead and recursion speed.

LanguageExecution Time & Memory
SP (spc -O3)312 ms (14.2 MB)
C (gcc -O3)304 ms (2.1 MB)
C++ (clang++ -O3)308 ms (3.4 MB)
Rust (rustc --release)318 ms (4.2 MB)
Java (OpenJDK 21)512 ms (48 MB)
Node.js (v20 V8)980 ms (38.5 MB)
Python (3.12)19,500 ms (16 MB)

Quicksort (1,000,000 Items)

Evaluates array access, branching, and in-place swapping.

LanguageExecution Time & Memory
SP (spc -O3)82 ms (22.0 MB)
C (gcc -O3)78 ms (12.0 MB)
C++ (clang++ -O3)79 ms (12.5 MB)
Rust (rustc --release)84 ms (13.0 MB)
Java (OpenJDK 21)142 ms (72 MB)
Node.js (v20 V8)240 ms (68 MB)
Python (3.12)2,400 ms (45 MB)

Hash Map (1,000,000 Ops)

Evaluates hashing, memory reallocation, and pointer traversal.

LanguageExecution Time & Memory
SP (spc -O3)185 ms (48.0 MB)
C (gcc -O3)162 ms (36.0 MB)
C++ (clang++ -O3)170 ms (38.0 MB)
Rust (rustc --release)178 ms (42.0 MB)
Java (OpenJDK 21)295 ms (128 MB)
Node.js (v20 V8)460 ms (110 MB)
Python (3.12)1,420 ms (95 MB)

Binary Trees (Depth 16)

Evaluates memory allocator speed and deep pointer tree traversals.

LanguageExecution Time & Memory
SP (spc -O3)410 ms (64.0 MB)
C (gcc -O3)345 ms (44.0 MB)
C++ (clang++ -O3)360 ms (46.0 MB)
Rust (rustc --release)395 ms (48.0 MB)
Java (OpenJDK 21)580 ms (210 MB)
Node.js (v20 V8)820 ms (195 MB)
Python (3.12)4,800 ms (130 MB)

Mandelbrot (1000 x 1000)

Double-precision floating-point arithmetic and tight math loops.

LanguageExecution Time & Memory
SP (spc -O3)245 ms (16.0 MB)
C (gcc -O3)232 ms (2.8 MB)
C++ (clang++ -O3)236 ms (3.6 MB)
Rust (rustc --release)240 ms (4.8 MB)
Java (OpenJDK 21)390 ms (52 MB)
Node.js (v20 V8)650 ms (42 MB)
Python (3.12)8,200 ms (18 MB)