Tuesday, 15 March 2011

Groovy: is sum() more efficient that calculating sum using inject? -


क्या कर रहा है [1, 3, 5] .sum () [1, 3, 5]। इंजेक्शन (0, {x, y - & gt; x + y} ?

निम्न बेंचमार्क पर एक नज़र डालें:

  @ गड़ (समूह = 'org.gperfutils', मॉड्यूल = 'gbench', version = '0.4.3-groovy -2.4 ') def बी = बेंचमार्क {' सरल-योग '{[1, 3, 5] .sum ()}' इंजेक्शन-राशि '{[1, 3, 5]। इंजेक्शन (0, {x, y - & Gt; x + y}}}} b.prettyPrint ()  

और आउटपुट:

  पर्यावरण ========== = * ग्रोइवी: 2.4.0 * जेवीएम: जावा हॉटस्पॉट (टीएम) 64-बिट सर्वर वीएम (25.5-बी 02, ओरेकल कॉर्पोरेशन) * जेआरई: 1.8.0_05 * कुल मेमोरी: 283.5 एमबी * अधिकतम मेमोरी: 3641 एमबी * ओएस: मैक ओएस एक्स (10.10.1, x86_64) विकल्प ======= * गर्म अप: ऑटो (- 60 सेकंड) * सीपीयू टाइम मापन: यूजर सिस्टम पर सीपीयू असली साधारण राशि 218 2 220 226 इंजेक्शन-राशि 270 2 272 276  

आउटपुट बताता है कि यह लगभग समान है - sum लगभग हर प्रयास में थोड़ा तेज है लेकिन अंतर महत्वपूर्ण नहीं है साथ ही यह भी एक तरीका है कि कैसे sum कार्यान्वित किया जाता है इस सरल मामले में यह तेज हो सकता है लेकिन अधिक उन्नत परिदृश्यों में परिणाम उलटा हो सकता है।


No comments:

Post a Comment