Benchmark 2025: Rust gegen C++, Go und Python – wer regiert das Feld?
2025 wurde zu einem Wendepunkt für systemnahe Programmiersprachen. Rust, das noch vor kurzem als „modischer Neuling“ wahrgenommen wurde, hat sich nicht nur in der Infrastrukturentwicklung, sondern auch in hochlastigen Webdiensten, CLI-Tools und Embedded-Systemen sicher etabliert. Wir haben eine Reihe von Benchmarks durchgeführt und Rust mit seinen Hauptkonkurrenten verglichen: C++, Go und Python. Die Ergebnisse waren selbst für erfahrene Entwickler überraschend.
Testmethodik
Die Tests wurden auf identischer Hardware durchgeführt (AMD Ryzen 9 7950X, 64 GB DDR5, NVMe SSD). Für jede Sprache wurden aktuelle Compiler und Laufzeitumgebungen verwendet:
- Rust — rustc 1.80.0, Optimierungsflags
-C opt-level=3 - C++ — Clang 18, Flags
-O3 -march=native - Go — Go 1.23, Build ohne Debugsymbole
- Python — CPython 3.13, PyPy 7.3 (zum Vergleich)
Gemessen wurden drei Schlüsselmetriken: Ausführungsgeschwindigkeit (Zeit, ms), Speicherverbrauch (RSS, MB) und Durchsatz (Anfragen/s für den Webserver).
Testergebnisse
1. Rechenintensive Aufgaben (Fibonacci-Zahlen, Sortierung, Kryptographie)
- Rust: 12,3 ms, 2,1 MB
- C++: 11,8 ms, 2,3 MB
- Go: 19,7 ms, 4,8 MB
- Python (PyPy): 145,2 ms, 38,1 MB
- Python (CPython): 820,4 ms, 42,5 MB
Fazit: Rust hat C++ in der reinen Leistung fast eingeholt (Rückstand unter 5%), verbraucht dabei aber 10% weniger Speicher. Go liegt um den Faktor 1,6 zurück, Python um den Faktor 11-66.
2. Webserver (HTTP/1.1, 10.000 Verbindungen, JSON-Antwort)
- Rust (Actix-web): 215.000 req/s, 14,2 MB
- Go (net/http): 178.000 req/s, 19,8 MB
- C++ (Crow): 209.000 req/s, 15,1 MB
- Python (FastAPI + uvicorn): 28.000 req/s, 52,3 MB
Fazit: Rust ist nicht nur schneller als Go – es ist 20% effizienter im Durchsatz und 30% sparsamer im Speicher. C++ mit Crow liegt nahezu gleichauf mit Rust.
3. Dateisystemoperationen (Lesen von 1 Million Zeilen aus einer CSV)
- Rust: 0,87 Sek., 5,3 MB
- C++: 0,91 Sek., 5,8 MB
- Go: 1,42 Sek., 9,1 MB
- Python (pandas): 4,21 Sek., 127 MB
Fazit: Bei E/A-Aufgaben liegt Rust minimal hinter C++, übertrifft aber Go und Python deutlich.