আমার বেয়ার-মেটাল 16x 2.93GHz কোর কম্পিউটার 4x 2.5GHz কোর সহ একটি ভিপিএসের চেয়ে গরিব পারফর্ম করছে কেন?


34

আমার কাছে মাল্টি-থ্রেডেড সফটওয়্যারটির একটি টুকরো রয়েছে যা একদিনে অনেকগুলি সিমুলেশন করে। এটি একটি খুব সিপিইউ-নিবিড় কাজ, এবং আমি ক্লাউড পরিষেবাগুলিতে এই প্রোগ্রামটি চালাচ্ছি, সাধারণত প্রতি কোর 1 জিবি কনফিগারেশনে।

আমি সেন্টোস 7. running চালাচ্ছি এবং /proc/cpuinfoআমার চারটি ভিপিএস কোর 2.5GHz হ'ল।

processor       : 3
vendor_id       : GenuineIntel
cpu family      : 6
model           : 63
model name      : Intel(R) Xeon(R) CPU E5-2680 v3 @ 2.50GHz
stepping        : 2
microcode       : 1
cpu MHz         : 2499.992
cache size      : 30720 KB
physical id     : 3
siblings        : 1
core id         : 0
cpu cores       : 1
apicid          : 3
initial apicid  : 3
fpu             : yes
fpu_exception   : yes
cpuid level     : 13
wp              : yes
flags           : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ss syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon rep_good unfair_spinlock pni pclmulqdq ssse3 fma cx16 pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand hypervisor lahf_lm abm arat xsaveopt fsgsbase bmi1 avx2 smep bmi2 erms invpcid
bogomips        : 4999.98
clflush size    : 64
cache_alignment : 64
address sizes   : 40 bits physical, 48 bits virtual
power management:

বিনিময় হারের উত্থানের সাথে সাথে আমার ভিপিএস আরও ব্যয়বহুল হতে শুরু করে, এবং ব্যবহৃত খালি-ধাতব সার্ভারগুলিতে আমি "দুর্দান্ত চুক্তিতে" এসেছি।

আমি চারটি এইচপি ডিএল 580 জি 5 কিনেছি এবং প্রত্যেকটি চারটি ইনটেল জিয়ন এক্স7350 দিয়েছিলাম। মূলত, আমার ভিপিএস মেঘের মতো জিনিস রাখতে প্রতিটি মেশিনে 16x 2.93GHz কোর এবং 16GB থাকে ।

processor       : 15
vendor_id       : GenuineIntel
cpu family      : 6
model           : 15
model name      : Intel(R) Xeon(R) CPU           X7350 @ 2.93GHz
stepping        : 11
microcode       : 187
cpu MHz         : 1600.002
cache size      : 4096 KB
physical id     : 6
siblings        : 4
core id         : 3
cpu cores       : 4
apicid          : 27
initial apicid  : 27
fpu             : yes
fpu_exception   : yes
cpuid level     : 10
wp              : yes
flags           : fpu vme de pse tsc msr pae mce cx8 apic mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall lm constant_tsc arch_perfmon pebs bts rep_good aperfmperf pni dtes64 monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr pdcm dca lahf_lm dts tpr_shadow vnmi flexpriority
bogomips        : 5866.96
clflush size    : 64
cache_alignment : 64
address sizes   : 40 bits physical, 48 bits virtual
power management:

মূলত এটি দুর্দান্ত কাজ বলে মনে হয়েছিল, কারণ আমি এই ব্যাচের কাজগুলি সম্পাদনের জন্য ভিপিএসের ব্যবহার বন্ধ করতে পারি। এখন এটি অদ্ভুত জিনিস ...

  1. ভিপিএস-এ আমি প্রতিটি প্রতি 1.25 থ্রেড চালাচ্ছি, ঠিক যেমন আমি খালি ধাতব উপর করছি। (অতিরিক্ত 0.25 থ্রেডটি হ'ল নেটওয়ার্ক ব্যবহারের ফলে অলস সময়কে ক্ষতিপূরণ দেবে))
  2. আমার ভিপিএসে, মোট 44x 2.5GHz কোর ব্যবহার করে, আমি প্রতি মিনিটে প্রায় 900 সিমুলেশন পাই।
  3. আমার DL580 এ, মোট 64x 2.93GHz কোর ব্যবহার করে, আমি প্রতি মিনিটে কেবল 300 টি সিমুলেশন পাচ্ছি।

আমি বুঝতে পারি DL580 এর একটি পুরানো প্রসেসর রয়েছে। তবে আমি যদি প্রতিটি প্রতি এক থ্রেড চালাচ্ছি, এবং খালি ধাতব সার্ভারটিতে একটি দ্রুত কোর রয়েছে, তবে কেন এটি আমার ভিপিএসের চেয়ে দরিদ্রতা প্রদর্শন করছে?

আমার কোনও সার্ভারে কোনও স্মৃতি অদলবদল হচ্ছে না।

শীর্ষ বলেছেন যে আমার প্রসেসরগুলি 100% এ চলছে। আমি গড়ে 18 টি (ভিপিএসে 5) লোড পাই।

এটি কি এভাবে চলতে চলেছে, বা আমি কিছু মিস করছি?

চালানো lscpu আমার বেয়ার মেটাল সার্ভারে আমাকে 1.6GHz দেয়। এটি /proc/cpuinfoপাশাপাশি দেখা গিয়েছিল ।

এই তথ্যটি সঠিক, বা এটি কোনও ভুল শক্তি পরিচালনার সাথে যুক্ত?

[BARE METAL] $ lscpu
Architecture:          x86_64
CPU op-mode(s):        32-bit, 64-bit
Byte Order:            Little Endian
CPU(s):                16
On-line CPU(s) list:   0-15
Thread(s) per core:    1
Core(s) per socket:    4
Socket(s):             4
NUMA node(s):          1
Vendor ID:             GenuineIntel
CPU family:            6
Model:                 15
Stepping:              11
**CPU MHz:               1600.002**
BogoMIPS:              5984.30
Virtualization:        VT-x
L1d cache:             32K
L1i cache:             32K
L2 cache:              4096K
NUMA node0 CPU(s):     0-15


[VPS] $ lscpu
Architecture:          x86_64
CPU op-mode(s):        32-bit, 64-bit
Byte Order:            Little Endian
CPU(s):                4
On-line CPU(s) list:   0-3
Thread(s) per core:    1
Core(s) per socket:    1
Socket(s):             4
NUMA node(s):          1
Vendor ID:             GenuineIntel
CPU family:            6
Model:                 63
Stepping:              2
**CPU MHz:               2499.992**
BogoMIPS:              4999.98
Hypervisor vendor:     KVM
Virtualization type:   full
L1d cache:             32K
L1i cache:             32K
L2 cache:              256K
L3 cache:              30720K
NUMA node0 CPU(s):     0-3

32
কারণ আট বছরের পুরনো প্রসেসরগুলি বর্তমান প্রসেসরের তুলনায় প্রতি ক্লক চক্রের চেয়ে কম কাজ করে।
মাইকেল হ্যাম্পটন

3
আপনি আপনার BIOS সেটিংস ডিফল্টতে পুনরায় সেট করতে চাইবেন। এই সার্ভারগুলি এমন শোনাচ্ছে যে তাদের উপরও একটি অপ-অনুকূল কনফিগারেশন রয়েছে। আমার সম্পাদনা নীচে দেখুন।
ew white

আপনার প্রতি কোর প্রতি 1 টি থ্রেড চালানোর চেষ্টা করা উচিত। যদি কোরটি ধীর গতিতে থাকে তবে একটি উচ্চ লোডের অর্থ এই হতে পারে যে সিপিইউ স্যুইচিংয়ের কাজে প্রচুর সময় ব্যয় করছে এবং কম কাজ করছে।
নিমো

পারফরম্যান্স তুলনা খুঁজতে আপনি "সিপিইউ বেঞ্চমার্ক" এর জন্য ইন্টারনেট অনুসন্ধান করতে পারেন। আমার প্রিয় এই জাতীয় সংস্থানটি হল সিপিউবেচমার্ক.নেট

6
পাশাপাশি ক্যাশে আকারের পার্থক্যটি একবার দেখুন। ক্যাশে মিস ভয়ানক হতে পারে।
acelent

উত্তর:


44

প্রসেসরের অগ্রগতি, ঘড়ির গতি এবং আইপিসির গণনাগুলি দশকের পুরানো সিপিইউগুলিকে আধুনিকগুলির সাথে তুলনামূলকভাবে চেষ্টা করা প্রায় অসম্ভব করে তুলতে পারে। চক্র প্রতি নির্দেশাবলী কেবল পৃথক হতে চলেছে তা নয়, তবে নতুন প্রসেসরগুলির কাছে জটিল গণনার জন্য নিবেদিত নির্দেশাবলী রয়েছে (ইন্টেল উদাহরণ হিসাবে এইএস-এনআই যোগ করেছে), এই কারণগুলির কারণে ঘড়ির গতি আর যুক্তিসঙ্গত তুলনাকারী নয় (আমি কি উল্লেখ করেছি? মাল্টি-কোর বনাম হাইপারথ্রেডিং ...)। পর্যাপ্ত সময় এবং ধৈর্য সহ আপনি নিশ্চয়ই বুঝতে পারবেন যে কত পুরানো প্রকল্পগুলি সমান 1 আরও নতুন প্রো কিনে তবে গণনাগুলি তার সস্তা এবং একটি নতুন সিপিইউ কিনতে আরও দ্রুত বলবে।


2
এখানে প্রচুর ওয়েবসাইট রয়েছে যা প্রতিটি প্রসেসরের সিপিইউ বেঞ্চমার্কের সাথে তুলনা করে ইতিমধ্যে এটি করে।
মাইকেল হ্যাম্পটন

4
সঠিক নয় তবে এখানে ইন্টেল সিওন ই 5-2680 @ 2.70GHz বনাম ইন্টেল শিওন
এক্স

একটি মাপদণ্ডের সাথে সমস্যাটি হ'ল এটি খুব প্রকৃতির দ্বারা, এটি সেই নির্দিষ্ট প্রসেসরের জন্য অনুকূল নয়। মোটামুটি অনুমানের জন্য এটি খারাপ নয়, তবে আপনাকে প্রত্যেকটির জন্য সেরা নির্দেশিকা সেটটি আবার লিখতে হবে এবং পুনরায় রচনা করতে হবে। "কতবার" x "গণনা করা যায় তা ব্যতীত অন্য কিছু দিয়ে খুব কম সরঞ্জাম লেখা হয়
জিম বি

1
@ জিমবি, হ্যাঁ, তবে ওপিএস সিমুলেশনটি কোনও নির্দিষ্ট সিপিইউয়ের জন্য অনুকূলিতও নাও হতে পারে। (যদি এটি হয় তবে আমি এটি মিস করি, দুঃখিত)
ডেভিড বালেক

1
সম্ভবত না, যদি প্রোগ্রামটি পুনরায় সংঘবদ্ধ না করা হয় তবে সেক্ষেত্রে সিমুলেশনটি বেঞ্চমার্কের পক্ষে তৈরি হয়। একটি তৃতীয় পক্ষের মানদণ্ড কম নির্ভুল হবে।
জিম বি

32

আমি এখানে এমন কিছু স্পষ্ট হওয়া উচিত বলে জোর দিয়ে ভয়ঙ্কর শব্দ শুনতে চাই না তবে আপনি ২০১৪ সাল থেকে একটি হাই-এন্ড সার্ভার প্রসেসরকে 2007 থেকে একটি হাই-এন্ড সার্ভার প্রসেসরের সাথে তুলনা করছেন ।

আমি মনে করি না এর জন্য আরও বেশি ব্যাখ্যা দরকার।

একটি এইচপি প্রলিয়েন্ট ডিএল 580 জি 5 আজ এত ব্যয়বহুলভাবে পাওয়া যায় এমন একটি কারণ রয়েছে । এগুলি বড়, ধীর ছিল এবং অনেকগুলি বৈশিষ্ট্যের অভাব ছিল যা আরও আধুনিক সার্ভারগুলিতে কাম্য। আমি আমার শেষটি ২০০৯ সালে বিক্রি করেছি । এটি একটি খারাপ ক্রয় ছিল, এবং আপনাকে যদি নেহালেম বা ওয়েস্টমিয়ার সিপিইউ পরিবারগুলির কাছ থেকে কোনও সিপিইউ দিয়ে আরও ভাল পরিবেশিত হবে, যদি আপনি ব্যবহৃত সরঞ্জাম কেনার জন্য বাধ্য হন তবে।

তদতিরিক্ত, আপনি যে সার্ভারগুলি কিনেছেন সেগুলি বিদ্যুৎ ব্যবহারের ক্ষেত্রে অত্যন্ত অদক্ষ, সুতরাং সেগুলি পরিচালনা করা ব্যয়বহুল হবে।


এটি প্রদর্শিত হয় যেন আপনার শারীরিক সার্ভারগুলি একটি পাওয়ার-সঞ্চয় মোডে চলছে যা আপনার সিপিইউ ঘড়ির গতি পিছনে ফেলেছে। আপনি BIOS এ যেতে চাইবেন (বুটে এফ 9 টিপুন) এবং ফ্যাক্টর ডিফল্টগুলিতে সার্ভারটি পুনরায় সেট করতে চান ( ডিফল্ট থেকে অন্যটি কী সংশোধিত হয়েছিল কে জানে? )

এখানে চিত্র বর্ণনা লিখুন


7
@GlaucoCattaliniLins নং
ewwhite

1
আপনি কি এই বিস্তারিত বলতে পারেন? এটি হজম করতে আমার সমস্যা হচ্ছে। আমার কাছে অন্যান্য মডেলের জন্য পরিবর্তন করার বিকল্প রয়েছে, তাই যদি এটি আসে তবে আমি এটি সঠিকভাবে পেতে চাই। - প্রথমে আমি ভেবেছিলাম এটি E5 (30MB) এর ক্যাশে আকার হতে পারে তবে এটি অন্য ভিপিএসের মধ্যে ভাগ করা হবে be
গ্লাচো ক্যাটালিনী লিন্স

11
@ গ্লোকো ক্যাটালিনিলিন্স X7350 কোর 2 মাইক্রোআরকিটেকচারের উপর ভিত্তি করে তৈরি হয়েছে। প্রকৃতপক্ষে, এটি একটি কোর 2 কোয়াডের সাথে তুলনাযোগ্য (আপনি সর্বশেষে সেগুলি শুনেছেন কতদিন হয়েছে?)। এটি এত পুরানো যে এটি এসএসই 4 +, এভিএক্স (2), এফএমএ বা এইএস নির্দেশাবলী সমর্থন করে না, সুতরাং যদি আপনার সিমুলেশনগুলি সংখ্যাসূচক হয় তবে তারা ঠিক সেখানে একটি> 2x জরিমানা নেন এবং এইএস ক্রিপ্টো গতি আরও বেশি ভোগে। শেষ অবধি, ইন্টেল কোর 2 সাল থেকে 6 টি মাইক্রোআরকিটেকচারাল উন্নতি প্রকাশ করেছে এবং প্রত্যেকটির সাথে সমান্তরাল বা ক্রমবর্ধমান, মেমরির ব্যান্ডউইথ আরও নির্দেশাবলী চালানোর সিপিইউর ক্ষমতা বৃদ্ধি করে।
Iwillnotexist আইডোনোটেক্সবাদ

10
@ গ্লোকো ক্যাটালিনিলিন্স বিপরীতে আপনার ভিপিএস সার্ভার এফএমএ সমর্থন করে, সুতরাং এটি হ্যাসওয়েল মাইক্রোআর্কাইটিচার হিসাবে কমপক্ষে নতুন। এফএমএ নির্দেশনাটি একজনকে দ্বি-ইন-ও একটি গুণ এবং সংযোজন করার অনুমতি দেয় এবং হাসওলের সমস্ত কিছু (নির্দেশনা ডিকোডারস, রির্ডার বাফার, শাখা প্রেডিক্টর, মেমরি ব্যান্ডউইথ, এএলইউ) টিউন করা হয়েছে যাতে দ্বৈত ভেক্টর এফএমএগুলিকে খাওয়ানো যায় । হাসওয়েল এভাবে একক ঘড়ির চক্র ধরে রাখতে পারে : 1) ফর্মের দুটি 8-উপাদান ভেক্টর অপারেশন float d = a + b*c, 2) দুটি 32-বাইট লোড ( aএবং b) এবং 3) একটি 32-বাইট স্টোর (দ্য d)। এটি আশ্চর্যজনকভাবে সুরযুক্ত।
আইভিলনোটেক্সিস্ট আইডোনোটেক্সিস্ট

2
@ আইলিনোটেক্সিস্ট আইডোনোটেক্সিস্ট: তিনি অবশ্যই অবশ্যই প্রতিটি মেশিনের জন্য আলাদাভাবে সংকলন করেননি -march=native, সুতরাং আমি অনুমান করতে পারি যে তার কোডটি কেবল দুটি সিস্টেমে এসএসই 2 ব্যবহার করছে। আমি অনুমান করব মেমরি ব্যান্ডউইদথ সম্ভবত একটি বাধা, ESP। যদি তার কার্নেলের NUMA সমর্থন না থাকে, বা তার সিমের বরাদ্দের ধরণগুলি NUMA- বান্ধব না হয়। প্রতিটি সকেটে দ্বৈত চ্যানেল মেমরি নিয়ামক সহ কোয়াড সকেট কোয়াড কোর এটি কী?
পিটার কর্ডেস
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.