बेंचमार्क 2025: Rust बनाम C++, Go और Python — कौन राज करता है?
2025 सिस्टम प्रोग्रामिंग भाषाओं के लिए एक महत्वपूर्ण वर्ष रहा है। Rust, जिसे कुछ समय पहले तक "फैशनेबल नवागंतुक" माना जाता था, ने न केवल इंफ्रास्ट्रक्चर डेवलपमेंट में, बल्कि हाई-लोड वेब सेवाओं, CLI-यूटिलिटीज और embedded-सिस्टम्स में भी मजबूती से अपनी जगह बना ली है। हमने बेंचमार्क की एक श्रृंखला आयोजित की, जिसमें Rust की तुलना उसके मुख्य प्रतिस्पर्धियों: C++, Go और Python से की गई। परिणाम अनुभवी डेवलपर्स के लिए भी अप्रत्याशित रहे।
परीक्षण पद्धति
परीक्षण समान हार्डवेयर (AMD Ryzen 9 7950X, 64 GB DDR5, NVMe SSD) पर किए गए। प्रत्येक भाषा के लिए वर्तमान कंपाइलर और रनटाइम का उपयोग किया गया:
- Rust — rustc 1.80.0, ऑप्टिमाइज़ेशन फ्लैग
-C opt-level=3 - C++ — Clang 18, फ्लैग
-O3 -march=native - Go — Go 1.23, डीबग सिंबल के बिना बिल्ड
- Python — CPython 3.13, PyPy 7.3 (तुलना के लिए)
तीन प्रमुख मेट्रिक्स मापी गईं: निष्पादन गति (समय, ms), मेमोरी खपत (RSS, MB) और थ्रूपुट (वेब सर्वर के लिए अनुरोध/सेकंड)।
परीक्षण परिणाम
1. कम्प्यूटेशनल कार्य (फिबोनाची संख्याएँ, सॉर्टिंग, क्रिप्टोग्राफी)
- 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
निष्कर्ष: Rust ने शुद्ध प्रदर्शन में लगभग C++ को पकड़ लिया है (5% से कम का अंतर), लेकिन 10% कम मेमोरी का उपयोग करता है। Go 1.6 गुना पीछे है, जबकि Python 11-66 गुना पीछे है।
2. वेब सर्वर (HTTP/1.1, 10,000 कनेक्शन, JSON रिस्पॉन्स)
- 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
निष्कर्ष: Rust न केवल Go से तेज़ है, बल्कि थ्रूपुट में 20% अधिक कुशल और मेमोरी में 30% अधिक किफायती है। Crow के साथ C++ लगभग Rust के बराबर है।
3. फ़ाइल सिस्टम के साथ कार्य (CSV से 1 मिलियन पंक्तियाँ पढ़ना)
- Rust: 0.87 सेकंड, 5.3 MB
- C++: 0.91 सेकंड, 5.8 MB
- Go: 1.42 सेकंड, 9.1 MB
- Python (pandas): 4.21 सेकंड, 127 MB
निष्कर्ष: इनपुट-आउटपुट कार्यों में, Rust C++ से थोड़ा पीछे है, लेकिन Go और Python से काफी आगे है।