আধুনিক হার্ডওয়্যারে এখনও কি ইরকবালেন্সের ব্যবহার রয়েছে?


39

এই প্রশ্নটি আগে জিজ্ঞাসা করা হয়েছিল, তবে আমি বিশ্বাস করি যে এটি আবার জিজ্ঞাসা করার জন্য বিশ্ব যথেষ্ট পরিবর্তন করেছে।

আজকের সিস্টেমে যেখানে ইরাক্বলেন্সের কোনও ব্যবহার আছে যেখানে আমরা তাদের কোরের মধ্যে মেমরি ভাগ করে নিয়ে NUMA- সক্ষম সিপিইউ করেছি?

চলমান irqbalance --oneshot --debugদেখায় যে একটি আধুনিক ভিএমওয়্যার ইএসজি পরিবেশে একটি ভার্চুয়াল অতিথি কোরের মধ্যে NUMA নোড ভাগ করছে।

# irqbalance --oneshot --debug 3
Package 0:  numa_node is 0 cpu mask is 0000000f (load 0)
    Cache domain 0:  numa_node is 0 cpu mask is 0000000f  (load 0)
            CPU number 0  numa_node is 0 (load 0)           
            CPU number 1  numa_node is 0 (load 0)
            CPU number 2  numa_node is 0 (load 0)
            CPU number 3  numa_node is 0 (load 0)

আইকুলবালেন্স এই ক্ষেত্রে সনাক্ত করবে যে এটি একটি NUMA সিস্টেমে চলছে এবং প্রস্থান করবে। এটি আমাদের প্রক্রিয়া পর্যবেক্ষণের সাথে মিশে যায়।

আমাদের কি এই জাতীয় সিস্টেমে ইরক্বালেন্সের পরিবর্তে নুমাদ চালানো উচিত ?

এটি ভিএমওয়্যার ভার্চুয়ালাইজড সার্ভারগুলির জন্য বেশিরভাগই আকর্ষণীয়।

উত্তর:


27

রেডহ্যাটের প্রযুক্তিবিদের একটি উত্তর এখানে। যদিও আমি বিশ্বাস করি যে বেশিরভাগ এন্টারপ্রাইজ হার্ডওয়্যার NUMA সক্ষম। এবং যতদূর আমি জানি ভিএমওয়্যার আপনার সিএমইউ কনফিগারেশন ফিট না করা অবধি আপনার NUM_ নোডের সাথে VM ফিট করার চেষ্টা করবে।

অভিজ্ঞতা (বিশেষত ভিএমওয়্যার সম্পর্কিত) প্রশংসিত হবে।

এটি আধুনিক সার্ভারগুলির "কারণ" সত্য। মনে রাখবেন যে মাল্টি-সিপিইউ / মুলি-কোর NUMA এর মতো নয়। অনেকগুলি মাল্টি-সিপিইউ / কোর সিস্টেম রয়েছে যার NUMA নেই।

নীচে আমার ব্যাখ্যা পড়ার আগে, দয়া করে উপরের আইআরকিউ অ্যাফিনিটি ডকুমেন্টটি পাশাপাশি নীচের গাইডগুলি পড়ুন:

RHEL 6 পারফরম্যান্স টিউনিং গাইড

আরএইচইএল 6 এর জন্য স্বল্প সময়ের জন্য পারফরম্যান্স টিউনিং

সব পড়ে আছে? দুর্দান্ত, তোমার কাছ থেকে আমার আর কিছু শুনতে হবে না! ;-) তবে কেবলমাত্র যদি আপনি অধৈর্য হয়ে থাকেন তবে আপনি কেন তাদের চান ...

আইআরকিউবুলেন্স সমস্ত আইআরকিউ অনুরোধকে একটি সিপিইউতে ব্যাক আপ রাখে না। আমি 4+ সিপিইউ কোর সহ অনেকগুলি সিস্টেম ধীর সম্পাদন করতে দেখেছি কারণ বিভিন্ন সিপিইউ'র সমস্ত প্রক্রিয়া নেটওয়ার্ক বা স্টোরেজ আইআরকিউ অনুরোধগুলি প্রক্রিয়া করার জন্য সিপিইউ 0 এ অপেক্ষা করছে। সিপিইউ 0 দেখতে দেখতে খুব ব্যস্ত, অন্য সমস্ত সিপিইউ ব্যস্ত নয়, তবুও অ্যাপসটি খুব ধীর। অ্যাপ্লিকেশনগুলি ধীর গতির কারণ তারা সিপিইউ 0 থেকে তাদের আইও অনুরোধের জন্য অপেক্ষা করছে।

আইআরকিউবুলেন্স সমস্ত সিপিইউ জুড়ে একটি বুদ্ধিমান উপায়ে এটিকে ভারসাম্য বজায় রাখার চেষ্টা করে এবং সম্ভব হলে IRQ প্রসেসিংকে যতটা সম্ভব প্রক্রিয়াটি বন্ধ করে দেয়। এটি একই কোর, একই ক্যাশে ভাগ করে নেওয়া একই মরার মূল বা একই NUMA জোনের একটি কোর হতে পারে।

আপনার যদি না হয়:

আপনি খুব ভাল কারণে (কম বিলম্ব, রিয়েলটাইম প্রয়োজনীয়তা ইত্যাদি) জন্য আপনার অ্যাপ্লিকেশনগুলি / আইআরকিউগুলিকে নির্দিষ্ট কোরগুলিতে ম্যানুয়ালি পিন করছেন

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

অন্যান্য খুব গুরুত্বপূর্ণ টিউনিং সরঞ্জামগুলি হ'ল টিউন করা প্রোফাইল এবং নুমাদ। তাদের সম্পর্কে পড়ুন! তাদের ব্যাবহার করুন!

নুমাদ ইরক্বালেন্সের অনুরূপ যে এটি একটি প্রক্রিয়া এবং এর স্মৃতি একই নুমা জোনে রয়েছে কিনা তা নিশ্চিত করার চেষ্টা করে। অনেকগুলি কোরের সাহায্যে আমরা বিলম্বিতাগুলিতে উল্লেখযোগ্য হ্রাস দেখতে পাই যার ফলে লোডগুলির নিচে অনেক মসৃণ নির্ভরযোগ্য পারফরম্যান্স হয়।

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


5
এফডাব্লুআইডাব্লু, কিছু 10 জিবিই ম্যানুয়াল আরও ভাল থ্রুপুট পাওয়ার জন্য ইরকবুলেন্স অক্ষম করার পরামর্শ দিয়েছে ...
রোজারডপ্যাক

8
তাদের বেঞ্চমার্ক সংখ্যার সাথে মিলিয়ে নেওয়ার জন্য সর্বোচ্চ সর্বোচ্চ পেতে, হ্যাঁ, আপনাকে কিছু নির্দিষ্ট উপায়ে একসাথে বোল্ট করা দরকার, তবে এই মানদণ্ডগুলি সাধারণত বাস্তব জীবনের কাজের বোঝার সাথে মেলে না। আপনার যদি খুব পূর্বাভাসযোগ্য ব্যবহারের প্যাটার্নে অতিমাত্রায় বিলম্বিত সংবেদনশীল প্রয়োজনীয়তা সহ সার্ভারে একটি অ্যাপ্লিকেশন চলমান থাকে তবে জরিমানা, এগিয়ে যান এবং জিনিসগুলির জন্য প্রসেসরের সম্পর্কটি ম্যানুয়ালি কনফিগার করেন। তবে যদি অ্যাপ্লিকেশনটি এমন সত্যিকারের বিশ্ব ব্যবহারের ক্ষেত্রে হয় যেখানে বিভিন্ন ধরণের প্রক্রিয়া এবং লোডের মধ্যে জিনিসগুলি পরিবর্তিত হতে পারে তবে আমি রেড হ্যাট প্রযুক্তির সাথে একমত। লিনাক্স NUMA ভারসাম্য সুন্দরভাবে এগিয়ে চলছে।
জর্জিবি
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.