AWS बनाम GCP बनाम ऑन-प्रिमाइसेस CPU प्रदर्शन तुलना

हाल ही में मुझे एक ऐसी परियोजना में भाग लेने का मौका मिला जहां हमें विभिन्न क्लाउड प्रदाताओं के मूल्य / मूल्य अनुपात का मूल्यांकन करना था और इसकी तुलना मौजूदा ऑन-प्रिमाइसेस हार्डवेयर से करनी थी। इंटरनेट पर हमारे शोध के दौरान, हमें कच्चे सीपीयू प्रदर्शन की बात आने पर वास्तविक, उपयोगी बेंचमार्क आश्चर्यजनक रूप से कम मात्रा में मिले, इसलिए हमने अपना खुद का बनाने का फैसला किया।

लक्ष्य: डेटा इकट्ठा करें जो निर्णय ले सकता है कि किस क्लाउड प्रदाता को चुनना है, और वास्तव में कितने वीसीपीयू को आपको क्लाउड में खरीदने की आवश्यकता है, जब आपको पहले से ही पता है कि आप सामान्य रूप से अपने नंगे धातु में भौतिक सर्वर में कितने उपयोग करते हैं। वातावरण।

परीक्षण का यह दौर पूर्ण और संपूर्ण होने का इरादा नहीं रखता है, पेशेवर आईटी पत्रिकाएं हैं जो ऐसा करती हैं; हम त्वरित और विश्वसनीय बेंचमार्क डेटा रखना चाहते थे, जो हमारी आवश्यकताओं के अनुरूप हो। यदि आपके पास अधिक समय है, तो अलग-अलग गुठली के साथ विस्तृत बेंचमार्क देखने के लिए दिलचस्प होगा, इससे पहले / अलग-अलग थ्रेड / सीपीयू कोर काउंट, आदि के साथ मेल्टडाउन-स्पेक्टर परीक्षण।

प्रक्रिया

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

मैंने प्रसिद्ध सिसबेन्च टूल की डॉकटर छवि का उपयोग करके परीक्षण किए, लेकिन एक तुलना के रूप में, मैंने डॉकर का उपयोग किए बिना बाइनरी के साथ एक ही माप किया। मैंने कई रन में <0.5% का अंतर पाया, इसलिए परीक्षण प्रक्रिया को आसान बनाने के लिए और यह सुनिश्चित करने के लिए कि हम एक ही पुस्तकालयों (sysbench 1.0.13 (बंडल किए गए LuaJIT 2.1.0-beta2 का उपयोग करके) के साथ सटीक एक ही sysbench संस्करण का उपयोग करें), हमने फैसला किया डॉकर (सीई 17.xx स्थिर) पर सभी में जाने के लिए।

निम्नलिखित परीक्षण कमांड का उपयोग किया गया था:

docker run --cpus 1 --rm -ti manynines / sysbench sysbench cpu --cpu-max-prime = 20000 --threads = 1 --time = 900 रन
docker run --cpus 2 --rm -ti manynines / sysbench sysbench cpu --cpu-max-prime = 20000 --threads = 2 --time = 900 रन
docker run --cpus 8 --rm -ti manynines / sysbench sysbench cpu --cpu-max-prime = 20000 --threads = 8 --time = 900 रन

माप समय होगा

  • स्पाइक-प्रदर्शन को देखने के लिए 10 सेकंड और
  • वास्तविक दीर्घकालिक प्रदर्शन देखने के लिए 15 मिनट।

हम सीपीयू की गति का परीक्षण परिणामों के दूसरे मूल्यों की घटनाओं के आधार पर तुलना करने जा रहे हैं।

नंगे-धातु पर, मैंने यह देखने के लिए कई परीक्षण किए कि क्या ऑपरेटिंग सिस्टम (और इसलिए, कर्नेल) के आधार पर एक महत्वपूर्ण अंतर है: मैंने कोरोस कंटेनर लिनक्स के साथ एक ही मशीन का परीक्षण किया स्थिर (1632.3.0 - कर्नेल 4.14.19) , Ubuntu 14.04 LTS और CentOS 7. फिर, अंतर माप त्रुटि श्रेणी था, इसलिए हम निम्नलिखित ऑपरेटिंग सिस्टम देखने जा रहे हैं:

  • नंगे-धातु पर: सेंटोस 7 और कोरओएस 1632.3.0
  • अमेज़न वेब सेवाओं पर: अमेज़न लिनक्स
  • Google क्लाउड प्लेटफ़ॉर्म पर: CoreOS 1632.3.0

समूह 1: भौतिक सर्वर

संदर्भ मशीन: एक 2016-मॉडल Intel (R) Xeon (R) CPU E5–2690 v4 @ 2.60GHz।

Unsplash पर इगोर Ovsyannykov द्वारा फोटो

एक सिंगल-कोर, सिंगल-थ्रेड सेटअप पर, 10-सेकंड की एक छोटी परीक्षा के दौरान हमें 303.13 इवेंट / सेकंड मिलते हैं, जबकि लंबी अवधि की परीक्षा में 321.84 e / s के साथ थोड़ा बेहतर प्रदर्शन दिखा। हम 15-मिनट के परिणाम को 100% के रूप में लेंगे और बाकी सभी चीजों की तुलना इस मूल्य से करेंगे।

अगला हम 2 समानांतर CPU का उपयोग करके 2 समर्पित CPU कोर पर बेंचमार्क करने जा रहे हैं। दिलचस्प बात यह है कि अब 10 बनाम 900 सेकंड बेंचमार्क का अंतर बहुत छोटा प्रतीत होता है: 670.61 बनाम 672.89 ई / एस। ये परिणाम बताते हैं कि 2 सीपीयू कोर बनाम 2 * 1 सीपीयू कोर इस विशिष्ट इंटेल एक्सोन मॉडल पर 4.54% अधिक प्रदर्शनकारी हैं।

इसी प्रकार, 8 कोर -8 थ्रेड्स पर, हमें प्रति सेकंड 2716.31 इवेंट मिलते हैं, जो हमें 8 * 1 सीपीयू कोर प्रदर्शन का + 5.50% (या 105.50%) देता है।

तो आइए इसकी तुलना अन्य भौतिक मशीनों से करें!

प्रतियोगी:

  • इंटेल (आर) एक्सॉन (आर) सीपीयू E5–2660 v3 @ 2.60GHz का 2014-मॉडल
  • 2013-मॉडल ऑफ इंटेल (आर) एक्सॉन (आर) सीपीयू E5–2658 v2 @ 2.40GHz
  • और कुछ मज़ेदार के लिए, इंटेल (आर) एक्सॉन (आर) सीपीयू एक्स 3460 @ 2.80GHz का 2009-मॉडल

जैसा कि अपेक्षित था, CPU जितना पुराना होगा, उतना ही धीमा होगा:

2016 → 2014 → 2013: 321.84 → 308.67 → 284.93 सिंगल कोर बेंचमार्क पर

या 2016 Xeon की तुलना में प्रतिशत में:

100.00% → 95.91% → 88.53% (1-कोर)
100.00% → 96.36% → 86.55% (2-कोर)
100.00% → 95.14% → 86.53% (8-कोर)

जैसा कि आप देख सकते हैं, भौतिक सर्वर पर सीपीयू प्रदर्शन कोर और थ्रेड की संख्या के साथ रैखिक है। N कोर बनाम n * 1 कोर का प्रदर्शन 102-105% के बीच है, जो पहले परीक्षण किए गए मॉडल के समान है।

लेकिन, क्या आपने तुलना में 4 Xeons का उल्लेख नहीं किया ?!

* ड्रमोल * - लगभग 10 साल पुराने Xeon X3450 ने कुछ अप्रत्याशित आश्चर्य का कारण बना: इसने सभी नए भाइयों को सिंगल थ्रेड सिंथेटिक बेंचमार्क पर हरा दिया, जो अविश्वसनीय 431.13 ई / एस मूल्य को स्कोर करके 2016 के 133.96% है। संदर्भ मॉडल। हाँ, वापस तो बहु सूत्रण वास्तव में औसत अनुप्रयोग के लिए एक बात नहीं थी।

बेशक, जैसा कि अपेक्षित था, यह लाभ बहुत तेज़ी से नीचे गिरता है क्योंकि हम थ्रेड काउंट को पहले 2 से बढ़ाते हैं, बाद में 8: जबकि दोहरे-कोर सेटअप पर हम 2016 के संदर्भ में एक शानदार 127.71% प्राप्त करते हैं, 8-कोर पर हम बड़े भाई (1996.96 ई / एस बनाम 2716.31 ई / एस) के केवल 73.52% प्रदर्शन पर पहले से ही। इस CPU में 8 तार्किक कोर हैं, इसलिए हम परीक्षणों के साथ आगे नहीं जा सकते हैं।

10-सेकंड स्पाइक बेंचमार्क परिणाम, परिसर में15-मिनट का बेंचमार्क परिणाम, परिसर में

वैसे, दिलचस्प रूप से बेंचमार्क ने 20 मूल-कोर E5–2658 v2 पर 40 थ्रेड्स (या 40 तार्किक कोर, हाइपर थ्रेडिंग में) के साथ 60 थ्रेड्स, 80 थ्रेड्स या 160 थ्रेड्स के साथ - और 40 तक 40, यह दिखाया। रैखिक रूप से वृद्धि: 10 कोर 40-कोर परिणाम का 25% था, 20 कोर 50%, 30 कोर 75%, आदि था, इसलिए ऐसा प्रतीत होता है कि तार्किक सीपीयू कोर की वास्तविक संख्या से मेल खाने के बाद, उस थ्रेड के ऊपर थ्रेड काउंट बढ़ाते हुए। 'लॉन्ग टर्म में आपको कुछ हासिल नहीं होता।

शारीरिक मशीन परीक्षणों से रास्ते

  • प्रदर्शन कोर की संख्या के साथ रैखिक रूप से तराजू: यदि आप अधिक कोर डालते हैं, तो आपको रैखिक रूप से अधिक प्रदर्शन मिलता है
  • पिछले वर्ष की तुलना में नए Xeon मॉडल में प्रत्येक वर्ष लगभग 5% लाभ होता है
  • पुराने 2009-मॉडल Xeon सिंगल-थ्रेड वर्कलोड पर काफी मजबूत है, लेकिन कई थ्रेड्स दिखाई देने के साथ जल्दी खो देते हैं
2016 Xeon E5-2690 v4 की तुलना में सापेक्ष प्रदर्शनमल्टी-थ्रेड ऑप्टिमाइज़ेशन बनाम एकल-थ्रेड वर्कफ़्लोज़, परिसर में

समूह 2: अमेज़न EC2 उदाहरण

AWS प्लेटफ़ॉर्म पर, आपके पास विभिन्न प्रकार के एक टन हैं जो आप अपनी आवश्यकताओं के लिए दर्जी कर सकते हैं, इसलिए हमने उनमें से बहुत से परीक्षण किए। मैंने यहाँ अमेज़न द्वारा इन उदाहरण प्रकारों के सुझाए गए उपयोग-मामले भी शामिल किए हैं:

  • संदर्भ: ऑन-प्रिमाइसेस Intel (R) Xeon (R) CPU E5–2690 v4 @ 2.60GHz
  • t2 (मूल): Intel (R) Xeon (R) CPU E5–2676 v3 @ 2.40GHz
  • m5 (जेनेरिक): Intel (R) Xeon (R) प्लेटिनम 8175M CPU @ 2.50GHz
  • c5 (उच्च CPU): Intel (R) Xeon (R) प्लेटिनम 8124M CPU @ 3.00GHz
  • r4 (उच्च मेम): Intel (R) Xeon (R) CPU E5–2686 v4 @ 2.30GHz
  • i3 (उच्च IOPS): Intel (R) Xeon (R) CPU E5–2686 v4 @ 2.30GHz

बेस टी 2 प्रकार (2015) को छोड़कर, सभी सीपीयू 2016 या नवीनतम 2017 मॉडल हैं, इसलिए वे सभी हमारे संदर्भ के लिए तुलनीय हैं। एक दिलचस्प पक्ष नोट: ये विशिष्ट एक्सोन प्लेटिनम मॉडल वास्तव में अमेज़ॅन के लिए दर्जी हैं, आप उन्हें बाजार पर नहीं खरीद सकते।

अमेज़ॅन vCPU बेच रहा है, जो ठीक प्रिंट, तार्किक सीपीयू कोर के अनुसार है, हाइपर थ्रेडिंग सक्षम है और न केवल वास्तविक भौतिक कोर। ये कोर आम तौर पर ओवर-प्रोवीड नहीं होते हैं; जब वे "सर्वश्रेष्ठ प्रयास" CPU कोर साझा नहीं किए जाते हैं, तो इस बात की कोई गारंटी नहीं है कि वे एक ही होस्ट पर विभिन्न उपयोगकर्ताओं के बीच अनुकूलन नहीं करते हैं। (माइक्रो इंस्टेंस के साथ, आपके पास कई किरायेदारों के बीच साझा की गई कोर खरीदने का विकल्प है, बहुत कम कीमत के लिए।)

तो परीक्षणों के लिए जाने दो! एक ही sysbench माप करने के बाद, हम 10 सेकंड के लघु परीक्षण में निम्नलिखित मूल्यों पर पहुंचे:

10-सेकंड स्पाइक बेंचमार्क परिणाम, AWS

आप पहले से ही देख सकते हैं:

  • सिंगल-कोर का प्रदर्शन हमारे संदर्भ से बहुत बेहतर है, केवल 1 अपवाद के साथ
  • लेकिन पहले से ही 2 थ्रेड्स के साथ, आप स्वयं-होस्ट किए गए भौतिक हार्डवेयर की तुलना में 10-25% खोना शुरू करते हैं
  • t2 नंगे-धातु प्रदर्शन के साथ एक बहुत विश्वसनीय, स्थिर उदाहरण की तरह लगता है

भूल न करें अमेज़ॅन आपके सीपीयू प्रदर्शन को सीमित किए बिना आपके कार्यभार में अस्थायी स्पाइक्स की अनुमति दे सकता है। यही कारण है कि हमने 15-मिनट के बेंचमार्क किए:

15 मिनट के बेंचमार्क परिणाम, AWS

लंबे समय तक, भौतिक उदाहरणों ने एकल-थ्रेड परिणामों की तुलना में निरंतर 105% प्रदर्शन दिखाया।

फिर से, टी 2 हमारे स्वयं के होस्ट किए गए सर्वरों की तरह काम करता है, एक बहुत ही अनुमानित प्रदर्शन के साथ।

बाकी इतना आकर्षक नहीं है, यहां तक ​​कि सबसे अच्छा मामला हम ~ 17% खो देते हैं, जो कि एम 5 जेनेरिक-उद्देश्य उदाहरणों के साथ ~ 27% हो जाता है। इसका मतलब है कि यदि आपके डेटा सेंटर में 100 सीपीयू कोर हैं, तो आपको उसी प्रदर्शन से मेल खाने के लिए अमेज़न में 127 वीसीपीयू कोर खरीदने की आवश्यकता है।

2016 Xeon E5-2690 v4 की तुलना में AWS सापेक्ष प्रदर्शनमल्टी-थ्रेड ऑप्टिमाइज़ेशन बनाम एकल-थ्रेड वर्कफ़्लोज़, AWS

अद्यतन: मेरे एक साथी ने बताया कि टी 2 एक फोड़ने योग्य प्रकार है, जब तक कि अन्य नहीं; यह तथाकथित "सीपीयू क्रेडिट" के साथ काम करता है: https://aws.amazon.com/ec2/instance-types/#burst

तो सामान्य तौर पर, इसका मतलब है कि या तो आप लगातार 2 घंटे के सिंथेटिक बेंचमार्क (100% CPU उपयोग) द्वारा थ्रॉटल किए गए प्रदर्शन से पीड़ित होंगे या आपको असीमित CPU फट सुविधा प्राप्त करने के लिए प्रति घंटे न्यूनतम 5 सेंट अतिरिक्त भुगतान करने की आवश्यकता होगी t2। जब तक आप अपने आवेदन की विशेषताओं को अच्छी तरह से नहीं जानते हैं, इससे अप्रत्याशित लागत हो सकती है।

मैं सोच रहा हूं कि क्या यह हर 23 घंटे में मेरे सभी टी 2 इंस्टेंस को नष्ट करने और फिर से बनाने में सक्षम होगा, इसलिए मैं निश्चित मूल्य, सस्ते उच्च प्रदर्शन उदाहरण पर रह सकता हूं ...? (बेशक अगर आवेदन और बुनियादी ढांचा इसका समर्थन करता है।)

समूह 3: Google कंप्यूट इंजन उदाहरण

अमेज़ॅन के विपरीत, Google उदाहरणों का एक बहुत ही सरलीकृत पोर्टफोलियो प्रदान करता है: या तो आप मानक या सीपीयू-अनुकूलित वर्चुअल मशीन खरीदते हैं - और वह है। यहां तक ​​कि सीपीयू-अनुकूलित का मतलब है कि आपको समान मानकीकृत हार्डवेयर मिलता है, लेकिन उदाहरण के लिए अधिक रैम देने के बजाय अधिक सीपीयू कोर आवंटित किया गया है।

ऐसा लगता है कि वे एक बहुत ही सरल, बहुत सपाट हार्डवेयर पार्क का उपयोग करते हैं और यह शायद उन्हें रखरखाव में बहुत मदद करता है। जब आप कैट / प्रॉप / cpuinfo करते हैं तो वे वास्तव में आपको बताते हैं कि आपके वीएम में कौन सा हार्डवेयर चल रहा है, लेकिन आवृत्ति से आप अनुमान लगा सकते हैं, क्योंकि वे निम्नलिखित पोर्टफोलियो का दावा करते हैं:

  • 2.6 गीगाहर्ट्ज इंटेल Xeon E5 (सैंडी ब्रिज)
  • 2.5 GHz इंटेल Xeon E5 v2 (आइवी ब्रिज)
  • 2.3 गीगाहर्ट्ज इंटेल Xeon E5 v3 (हैसवेल)
  • २.२ गीगाहर्ट्ज इंटेल Xeon E5 v4 (ब्रॉडवेल)
  • 2.0 GHz इंटेल Xeon (स्काईलेक)

मेरे सभी परीक्षणों में मुझे हमेशा एक 2.5 गीगाहर्ट्ज़ मॉडल प्राप्त हुआ, सीपीयू जानकारी ने केवल निम्नलिखित कहा: इंटेल (आर) ज़ीओएन (आर) सीपीयू @ 2.50GHz। यह 2013 का मॉडल लगता है।

चूंकि मूल रूप से केवल 2 प्रकार के उदाहरण हैं, इसलिए परीक्षण बहुत त्वरित और आसान था। मैंने n1- मानक और n1-highcpu प्रकारों को चुना।

चलो नंबर की कमी!

10-सेकंड स्पाइक बेंचमार्क परिणाम, जीसीपी

सभी सिंगल-कोर परिणाम हमारे भौतिक हार्डवेयर (2016 Xeon) से बेहतर थे, लेकिन केवल थोड़ा। यदि यह वास्तव में 2013 का एक्सोन है, तो वाह, Google अनुकूलन इंजीनियरों के लिए मेरा सारा सम्मान!

एक अनुस्मारक के रूप में: अमेज़ॅन में 10 से 24% प्रदर्शन हानि हुई क्योंकि हमने कोर की संख्या में वृद्धि की। (बहुत निरंतर t2 उदाहरण को छोड़कर।) ऐसा लगता है कि Google अभी तक कमोबेश एक जैसा है।

हैरानी की बात है, उच्च CPU उदाहरण वास्तव में मानक की तुलना में धीमा था। लेकिन जैसा कि मैंने ऊपर उल्लेख किया है, यह एक ही प्रकार का हार्डवेयर है, यह मानक उदाहरण की तुलना में रैम से अधिक कोर है।

फिर, अमेज़ॅन के समान, Google आपको अपने उपलब्ध कंप्यूटिंग क्षमता को थ्रॉटल किए बिना, अपने सीपीयू उपयोग में अस्थायी स्पाइक्स की अनुमति देता है। इसलिए लंबी अवधि के मानदंड देखें:

15 मिनट के बेंचमार्क परिणाम, जीसीपी

जाहिरा तौर पर, जैसा कि हम वर्कलोड बढ़ाते हैं, हमें प्रदर्शन का लगातार 15–22% कम होता है। अमेज़न पर यह 17-27% था।

यहाँ दुर्भाग्य से मैंने एक t2 समतुल्य उदाहरण नहीं देखा, यह n1- मानक माना जाता है, लेकिन यह निश्चित रूप से हमारी भौतिक मशीनों की तरह प्रदर्शन नहीं करता है।

2016 Xeon E5-2690 v4 की तुलना में GCP सापेक्ष प्रदर्शनमल्टी-थ्रेड ऑप्टिमाइज़ेशन बनाम एकल-थ्रेड वर्कफ़्लोज़, जीसीपी

सारांश: AWS बनाम GCP

जब आप केवल कच्चे प्रदर्शन को देखते हैं, तो अमेज़ॅन प्रतिस्पर्धा में बहुत मजबूत लगता है:

2016 Xeon E5-2690 v4 की तुलना में सापेक्ष CPU प्रदर्शन, AWS बनाम GCP

हालाँकि, ऐसी डम्बल-डाउन तुलना वास्तव में उपयोगी नहीं है: अमेज़ॅन विभिन्न प्रकार के बहुत से उदाहरण प्रस्तुत करता है, जिसमें एक कमजोर सीपीयू हो सकता है, लेकिन आपको एनवीएम लाइटनिंग-फास्ट स्टोरेज आदि मिलते हैं। कभी-कभी यह वही है जो आपको चाहिए। फिर भी, यह लेख केवल कच्चे सीपीयू प्रदर्शन के बारे में है, तो आइए देखें कि बिल कहाँ समाप्त होता है:

8 vCPU कोर, अमेज़न बनाम Google के लिए ऑन-डिमांड कीमतें

अब आप इसे और अधिक संतुलित देख सकते हैं! आप जिसके लिए भुगतान करते हैं वह आपको प्राप्त होता है।

यदि आपको छोटी मशीनों की आवश्यकता होती है, तो आरेख थोड़ा भिन्न हो सकता है - दोहरे कोर उदाहरणों के लिए कहने दें:

2 vCPU कोर, अमेज़न बनाम Google के लिए ऑन-डिमांड कीमतें

बेशक आप अमेज़ॅन स्पॉट इंस्टेंस (मुफ्त कंप्यूटिंग क्षमता पर स्टॉक एक्सचेंज-प्रकार के लाइसेंस का उपयोग करके) या प्रीमेचेबल Google इंस्टेंसेस (जो Google द्वारा किसी भी समय बेतरतीब ढंग से बंद किए जा सकते हैं, लेकिन 24 घंटों के बाद नवीनतम) का उपयोग करके आप एक टन पैसा बचा सकते हैं। । वास्तविक उत्पादन कार्यभार के लिए, मुझे यह वास्तविक नहीं लगता है कि आप अपनी पूरी क्षमता को खतरनाक सौदेबाजी द्वारा आरक्षित कर सकते हैं ताकि 20 से 90% तक छूट प्राप्त कर सकें।

एक यथार्थवादी परिदृश्य आपके सामान्य कोर कार्यभार के लिए ऑन-डिमांड निश्चित इंस्टेंस खरीदने के लिए हो सकता है, फिर ट्रैफ़िक के चरम पर होने पर स्पॉट / प्रीमेचेबल सस्ते इंस्टेंस के साथ ऑटो स्केल करें। इसके अलावा, आपके क्यूए वातावरण के लिए सस्ते पूरी तरह से ठीक होना चाहिए - बस अपने सभी साधनों को सही ढंग से प्रबंधित करने के लिए अचानक गायब होने वाली आभासी मशीनों का अनुकूलन करें और संसाधनों को गतिशील रूप से फिर से आवंटित करें। और निश्चित रूप से, क्लाउड सभी ऑटो स्केलिंग के बारे में है: जब आपके पास रात के दौरान बहुत सारे आगंतुक नहीं होते हैं, तो आपको बहुत सारे चलने वाले उदाहरणों के लिए भुगतान करने की आवश्यकता नहीं होती है। और यह उन चीजों में से एक है जहां आपको पारंपरिक ऑन-प्रिमाइसेस इन्फ्रास्ट्रक्चर की तुलना में बड़ा लाभ हो सकता है। (आपको रखरखाव अनुबंधों के साथ +200 भौतिक मशीनें खरीदने की ज़रूरत नहीं है, आदि केवल इसलिए कि आपके पास हर दिन 2 घंटे की चोटी है, फिर वे मशीनें केवल 40% निष्क्रिय सीपीयू के साथ बिजली का उपभोग करती हैं ...)

एक अतिरिक्त विकल्प जो आपके पास हो सकता है: दोनों प्रदाता लंबी अवधि की छूट भी प्रदान करते हैं, यदि आप 12 या 36 महीने तक लगातार उपयोग करते हैं।

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

मुख्य अंतर: क्लाउड बनाम ऑन-प्रिमाइसेस CPU प्रदर्शन

अगर कुछ महत्वपूर्ण चीजें हैं जो हमें निश्चित रूप से यह तुलना करके महसूस करती हैं:

  • भौतिक मशीनों पर: यदि आप अधिक CPU कोर जोड़ते हैं, तो आपको रैखिक रूप से बड़ा प्रदर्शन मिलता है
  • क्लाउड प्रदाताओं पर रहते हुए, यह केवल आंशिक रूप से सत्य था: यह अधिक वीसीपीयू के साथ रैखिक रूप से बढ़ता है, लेकिन फिर भी आप केवल एक भौतिक मशीन का ~ 80% प्रदर्शन प्राप्त करते हैं (= आपको क्लाउड में अधिक सीपीयू खरीदने की आवश्यकता है)
  • सिंगल-थ्रेड पर, एक सीपीयू वर्कफ़्लोज़ को क्लाउड प्रोवाइडर हाथों-हाथ जीतते हैं क्योंकि उनके पास सबसे महंगा, सबसे बड़ा सीपीयू होता है जो सिंगल थ्रेड पर बहुत मजबूत होता है

अपडेट: क्लाउड प्रदाताओं से प्रतिक्रिया

दो क्लाउड प्रदाताओं में से एक ने हमें प्राप्त परिणामों पर प्रत्यक्ष प्रतिक्रिया दी। उन्होंने कहा कि प्रदर्शन हानि हाइपर थ्रेड कोर का उपयोग करने के कारण होती है, वास्तविक होने के बजाय, जैसे कि एक नंगे धातु परीक्षण में - क्योंकि भौतिक मशीन में जब आप डॉकर को 8 सीपीयू कोर तक सीमित करते हैं, तो आप अभी भी शायद 12 और स्थापित हैं, इंटरप्ट के लिए उपयोग करने के लिए ओएस के लिए तैयार, आदि।

इसलिए उन्होंने सुझाव दिया कि अगर हमें भौतिक मशीनों की तुलना करने के लिए 8 वास्तविक कोर की आवश्यकता है, तो हमें हमारे लिए आरक्षित 8 भौतिक सीपीयू कोर को प्राप्त करने के लिए 16 कोर उदाहरण का चयन करना चाहिए। एक तरफ, यह बिल्कुल समझ में आता है, दूसरी तरफ इसका मतलब है कि मुझे परिसर प्रदर्शन पर वास्तविक प्राप्त करने / प्राप्त करने के लिए 2x का आकार (और मूल्य) खरीदने की आवश्यकता है ...

उनके दावों को मान्य करने के लिए, हमने अपने केवीएम क्लस्टर पर 8, 2, 1 वीसीपीयू कोर को क्लाउड की तरह ही हमारे बेंचमार्क पर किया। फिर सिर्फ यह बताने के लिए कि उन्होंने क्या सुझाव दिया था, हमने +2 अतिरिक्त vCPU के साथ एक राउंड भी किया, केवल OS के लिए छोड़ दिया।

परिणाम गैर-केवीएम, ऑन-प्रिमाइसेस हार्डवेयर परीक्षणों से हमारे पिछले मापों के अनुरूप थे:

15 मिनट के बेंचमार्क परिणाम, केवीएम ऑन-प्रिमाइसेस

जैसा कि आप देख सकते हैं, यह ठीक वैसा ही परिणाम है: यदि आप केवीएम में 8x अधिक वर्चुअल कोर डालते हैं, तो आपको 8 गुना अधिक प्रदर्शन मिलता है। 6x अधिक या केवल नहीं।

समय की कमी के कारण, मैंने अभी ऊपर उल्लिखित विधि का उपयोग करते हुए, Google क्लाउड में एक त्वरित परीक्षण किया: उपलब्ध कोर को बहुत अधिक मात्रा में उपयोग करना - इसलिए मूल रूप से मुझे अपने आवेदन के लिए केवल 2 कोर की आवश्यकता है, लेकिन मैं 8 खरीदूंगा:

15-मिनट के बेंचमार्क परिणाम, ओवरप्रोविंड संसाधनों के साथ जीसीपी

हां, यह सच है, यहां मुझे रैखिक प्रदर्शन में वृद्धि हुई, जैसे एक नंगे धातु के साथ - लेकिन 2x, 8x, आदि खरीदने के लिए जो मैं मूल रूप से भुगतान करना चाहता था, उससे अधिक जबकि भौतिक मशीनों के साथ मेरे पास यह नहीं था। सीमा, केवीएम वर्चुअलाइजेशन के साथ भी।

अगला कदम एक वास्तविक जावा बेंचमार्क या कुछ और यथार्थवादी प्रदर्शन परीक्षण करना होगा, लेकिन अभी तक इन परिणामों का उपयोग पहले से ही योजना और गणना में किया जा सकता है।

इसे पढ़ने के लिए अपना समय निकालने के लिए धन्यवाद, मुझे आशा है कि आपने इसे उपयोगी भी पाया है। कृपया अपने विचारों को साझा करने के लिए स्वतंत्र महसूस करें या यदि आप एक समान बेंचमार्क बनाते हैं, तो यह देखना अच्छा होगा कि वे इन परिणामों के साथ तुलना कैसे करते हैं।