Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/lucascompython/zigxrustxc
Performance of Zig vs Rust vs C
https://github.com/lucascompython/zigxrustxc
Last synced: about 1 month ago
JSON representation
Performance of Zig vs Rust vs C
- Host: GitHub
- URL: https://github.com/lucascompython/zigxrustxc
- Owner: lucascompython
- Created: 2023-04-17T20:02:41.000Z (over 1 year ago)
- Default Branch: master
- Last Pushed: 2024-10-28T23:13:14.000Z (about 2 months ago)
- Last Synced: 2024-10-29T00:19:17.725Z (about 2 months ago)
- Language: Zig
- Homepage:
- Size: 5.86 KB
- Stars: 3
- Watchers: 2
- Forks: 3
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Performance of Zig vs Rust vs C
## Things to know
My CPU is a Amd Ryzen 9 7950x, so results may vary *a lot* on other CPUs.
My Rust binary is still pretty small compared to normal Rust binaries, check the [Cargo.toml](./rust/Cargo.toml#L11) file for more info.
The C and Rust binaries are dynamically linked, and the Zig binary is statically linked.## C (clang v15.0.7)
Build
```bash
clang -Ofast -lm main.c -o sieve
```Result
```bash
time ./sieve 100000000
# 0.33s, 96MB MAX RAM, 16k binary size
```## Zig (v0.10.1)
Build
```bash
zig build -Doptimize=ReleaseFast
```Result
```bash
time ./zig-out/bin/zig 100000000
# 0.44s, 143MB MAX RAM, 25k binary size
```## Rust (v1.68.2)
Build
```bash
cargo build --release
```Result
```bash
time ./target/release/rust 100000000
# 0.47s, 96MB MAX RAM, 293k binary size
```