अब तक, मैं पर्ल में प्रोग्राम लिख रहा हूं। मैंने पाइथन को एक कोशिश देने का फैसला किया और कुछ मतभेदों को देखा। जबकि पर्ल में एआरजीवी, रेगेक्स इत्यादि हैं, इन्हें पाइथन में आयात किया जाना चाहिए। मैंने सोचा कि यह पाइथन को एक प्रदर्शन लाभ देता है क्योंकि आप केवल वही लोड कर रहे हैं जो आपको वास्तव में चाहिए।कौन सी पटकथा भाषा बनाम बनाम बनाम पायथन बनाम रूबी में बेहतर प्रदर्शन करती है?
तो, मैंने प्रत्येक प्रदर्शन में अपने प्रदर्शन का परीक्षण करने के लिए एक डेमो प्रोग्राम लिखा था।
पर्ल
#!/usr/bin/perl
exit(1) if $ARGV[-1] ne 'test';
print "Testing...\n";
my $a = 1.0;
my $i;
for (0 .. 500) { $a+=$a/100; }
printf "Result: %.5f\n", $a;
अजगर
#!/usr/bin/python
from sys import argv
if argv[-1] != 'test':
exit(1)
print 'Testing...'
a = 1.0
for i in range(0, 501):
a+=a/100
print 'Result: %.5f' %a
रूबी
#!/usr/bin/ruby
if ARGV[0] != "test"
exit(1)
end
print "Testing...\n"
a = 1.0
(0..500).each do a+=a/100 end
printf "Result: %.5f", a
सी
#include <stdio.h>
#include <string.h>
int main (int argc, char *argv[]) {
if (strcmp(argv[1], "test") != 0) return(1);
printf("Testing...\n");
double a = 1.0;
int i;
for (i=0; i <= 500; i++)
a+=a/100;
printf("Result: %.5f\n",a);
return 0;
}
परिणाम हैं:
पर्ल
असली 0m0.006s
उपयोगकर्ता 0m0.002s
sys 0m0.004s
Py Thon
असली 0m0.075s
उपयोगकर्ता 0m0.061s
sys 0m0.013s
रूबी
असली 0m0.017s
उपयोगकर्ता 0m0.008s
sys 0m0.008s
सी
असली 0m0.003s
उपयोगकर्ता 0m0.001s
sys 0m0.002s
अपने परीक्षण किसी तरह से त्रुटिपूर्ण है?
मैंने पढ़ा है कि पाइथन बड़े कार्यक्रमों (See here) के लिए बेहतर है। क्या यह फिर perlformed होगा? उनके स्मृति उपयोग के बारे में क्या?
मैं अपने वीपीएस पर डेमन्स के रूप में चलाने के लिए कुछ बड़े अनुप्रयोग लिख रहा हूं जिसमें सीमित मात्रा में रैम है इसलिए मेरा वास्तविक लक्ष्य स्मृति उपयोग को कम करना है।
500 पूर्णांक शायद ही बेंचमार्किंग और तुम सिर्फ इस एक बार चलाने के लिए पर्याप्त है। और किसी भी तरीके से, क्या यह वास्तव में आपके लिए महत्वपूर्ण है *? – user225312
डाउनवॉट्स क्यों? – zoul
क्योंकि आप गलत सवाल पूछ रहे हैं। –