সিপিইউ 0 এথ 1 ইন্ট্রাপ্টস দিয়ে স্য্যাম্প করা হয়


12

আমি একটি উবুন্টু ভিএম পেয়েছি, উবুন্টু ভিত্তিক জেন এক্সসিপি-র ভিতরে চলছে। এটি পিছনে পিছনে একটি কাস্টম FCGI- ভিত্তিক HTTP পরিষেবা হোস্ট করে nginx

প্রথম সিপিইউ কোর থেকে লোডের অধীনে ab স্যাচুরেটেড হয়, এবং বাকিটি কম-লোড হয়।

ইন /proc/interruptsআমি দেখতে যে CPU0 অন্য কোন কোর চেয়ে মাত্রার আরো বিঘ্নিত এর একটি আদেশ স্থল। তাদের বেশিরভাগই এসেছেন eth1

এই ভিএম এর কার্যকারিতা উন্নত করতে আমি কি কিছু করতে পারি? আরও সমানভাবে বাধা ব্যালেন্স করার কোনও উপায় আছে কি?


গোরীর বিবরণ:

$ uname -a
লিনাক্স MYHOST 2.6.38-15-ভার্চুয়াল # 59-উবুন্টু এসএমপি শুক্র এপ্রিল 27 16:40:18 ইউটিসি 2012 i686 i686 i386 জিএনইউ / লিনাক্স

s lsb_release -a
কোনও এলএসবি মডিউল উপলব্ধ নেই।
ডিস্ট্রিবিউটর আইডি: উবুন্টু
বর্ণনা: উবুন্টু 11.04
প্রকাশ: 11.04
কোডনাম: ন্যাটি

$ বিড়াল / প্রকোপ / বাধা দেয় 
           সিপিইউসি সিপিইউ 1 সিপিই 2 সিপিই 3 সিপিই 4 সিপিই 5 সিপিই 6 সিপিইউ 7       
283: 113720624 0 0 0 0 0 0 0 জেন-ডায়ন-ইভেন্ট এথ 1
284: 1 0 0 0 0 0 0 0 জেন-ডায়ন-ইভেন্ট এথ0
285: 2254 0 0 3873799 0 0 0 0 জেন-ডায়ন-ইভেন্ট ব্লকিফ
286: 23 0 0 0 0 0 0 0 জেন-ডিন-ইভেন্ট hvc_console
287: 492 42 0 0 0 0 0 295324 জেন-ডায়ন-ইভেন্ট জেনবাস
288: 0 0 0 0 0 0 222294 জেন-পার্কপু-আইপি কলফানসিংসেল 7
289: 0 0 0 0 0 0 0 0 জেন-পার্কপু-ভারিক ডিবাগ 7
290: 0 0 0 0 0 0 0 151302 জেন-পার্কপু-আইপি কলফানস 7
291: 0 0 0 0 0 0 03236015 জেন-পার্কপু-আইপি রিশেড 7
292: 0 0 0 0 0 0 60064 জেন-পার্কপু-আইপি স্পিনলক 7
293: 0 0 0 0 0 0 0 12355510 জেন-পার্কপু-ভারিক টাইমার 7
294: 0 0 0 0 0 0 803174 0 জেন-পার্কপু-আইপি কলফানসিংসেল 6
295: 0 0 0 0 0 0 0 0 জেন-পার্কপু-ভারিক ডিবাগ 6
296: 0 0 0 0 0 60027 0 জেন-পার্কপু-আইপি কলফানস 6
297: 0 0 0 0 0 0 5374762 0 জেন-পার্কপু-আইপি রিশেড 6
298: 0 0 0 0 0 0 64976 0 জেন-পার্কপু-আইপি স্পিনলক 6
299: 0 0 0 0 0 0 15294870 0 জেন-পার্কপু-ভারিক টাইমার 6 6
300: 0 0 0 0 0 264441 0 0 জেন-পার্কপু-আইপি কলফানসিংসেল 5
301: 0 0 0 0 0 0 0 0 জেন-পার্কপু-ভারিক ডিবাগ 5
302: 0 0 0 0 0 79324 0 0 জেন-পার্কপু-আইপি কল কলফানক 5
303: 0 0 0 0 0 3468144 0 0 জেন-পার্কপু-আইপি রিশেড 5
304: 0 0 0 0 0 66269 0 0 জেন-পার্কপু-আইপি স্পিনলক 5
305: 0 0 0 0 0 12778464 0 0 জেন-পার্কপু-ভারিক টাইমার 5
306: 0 0 0 0 844591 0 0 0 জেন-পার্কপু-আইপি কলফানসিংসেল 4
307: 0 0 0 0 0 0 0 0 জেন-পার্কপু-ভারিক ডিবাগ 4
308: 0 0 0 0 75293 0 0 0 জেন-পার্কপু-আইপি কলফানক 4
309: 0 0 0 0 3482146 0 0 0 জেন-পার্কপু-আইপি রিশেড 4
310: 0 0 0 0 79312 0 0 0 জেন-পার্কপু-আইপি স্পিনলক 4
311: 0 0 0 0 21642424 0 0 0 জেন-পার্কপু-ভারিক টাইমার 4
312: 0 0 0 449141 0 0 0 0 জেন-পার্কপু-আইপি কলফানসিংসেল 3
313: 0 0 0 0 0 0 0 0 জেন-পার্কপু-ভারিক ডিবাগ 3
314: 0 0 0 95405 0 0 0 0 জেন-পার্কপু-আইপি কলফানস 3
315: 0 0 080802992 0 0 0 0 জেন-পার্কপু-আইপি রিশেড 3
316: 0 0 0 76607 0 0 0 0 জেন-পার্কপু-আইপি স্পিনলক 3
317: 0 0 0 16439729 0 0 0 0 জেন-পার্কপু-ভারিক টাইমার 3 3
318: 0 0 876383 0 0 0 0 0 জেন-পার্কপু-আইপি কলফানসিংসেল 2
319: 0 0 0 0 0 0 0 0 জেন-পার্কপু-ভারিক ডিবাগ 2
320: 0 0 76416 0 0 0 0 0 জেন-পার্কপু-আইপি কল কলফুনসি 2
321: 0 0 3422476 0 0 0 0 0 জেন-পার্কপু-আইপি রিশেড 2
322: 0 0 69217 0 0 0 0 0 জেন-পার্কপু-আইপি স্পিনলক 2
323: 0 0 10247182 0 0 0 0 0 জেন-পার্কপু-ভারিক টাইমার 2
324: 0 393514 0 0 0 0 0 0 জেন-পার্কপু-আইপি কল কলফানসিংল 1
325: 0 0 0 0 0 0 0 0 জেন-পার্কপু-ভারিক ডিবাগ 1
326: 0 95773 0 0 0 0 0 0 জেন-পার্কপু-আইপি কলফানস 1
327: 0 3551629 0 0 0 0 0 0 xen-percpu-ipi resched1
328: 0 77823 0 0 0 0 0 0 জেন-পার্কপু-আইপি স্পিনলক 1
329: 0 13784021 0 0 0 0 0 0 জেন-পার্কপু-ভারিক টাইমার 1 1
330: 730435 0 0 0 0 0 0 0 জেন-পার্কপু-আইপি কলফানসিংসেলিং
331: 0 0 0 0 0 0 0 0 জেন-পার্কপু-ভারিক ডিবাগ 0
332: 39649 0 0 0 0 0 0 0 জেন-পার্কপু-আইপি কলফানস0
333: 3607120 0 0 0 0 0 0 0 জেন-পার্কপু-আইপি রিশেড 0
334: 348740 0 0 0 0 0 0 0 জেন-পার্কপু-আইপি স্পিনলক 0
335: 89912004 0 0 0 0 0 0 0 জেন-পার্কপু-ভারিক টাইমার 0
এনএমআই: 0 0 0 0 0 0 0 0 অ-মাস্কেবল বাধা
LOC: 0 0 0 0 0 0 0 0 0 স্থানীয় টাইমার বিঘ্ন ঘটায়
এসপিইউ: 0 0 0 0 0 0 0 0 0 স্পিউরিয়াস বাধা
পিএমআই: 0 0 0 0 0 0 0 0 0 পারফরম্যান্স পর্যবেক্ষণ বাধা দেয়
আইডব্লিউআই: 0 0 0 0 0 0 0 0 আইআরকিউ কাজের বাধা দেয়
RES: 3607120 3551629 3422476 3802992 3482146 3468144 5374762 3236015 পুনরায় নির্ধারণের বিঘ্ন
CAL: 770084 489287 952799 544546 919884 343765 863201 373596 ফাংশন কল বাধা
টিএলবি: 0 0 0 0 0 0 0 0 টিএলবি শ্যুটডাউন
টিআরএম: 0 0 0 0 0 0 0 0 0 তাপীয় ইভেন্ট বাধা দেয়
THR: 0 0 0 0 0 0 0 0 থ্রেশহোল্ড এপিক বাধা দেয়
এমসিই: 0 0 0 0 0 0 0 0 0 মেশিন চেক ব্যতিক্রম
এমসিপি: 0 0 0 0 0 0 0 0 0 মেশিন চেক পোল
ERR: 0
এমআইএস: 0

বোনাস প্রশ্ন: বাধা সংখ্যা কমিয়ে দেওয়ার কোনও উপায় eth1কি?
আলেকজান্ডার গ্ল্যাডিশ

উত্তর:


10

অল্পক্ষণের /proc/irq/283ডিরেক্টরি। একটি smp_affinity_listফাইল রয়েছে যা দেখায় যে কোন সিপিইউগুলি 283 টি বাধা পাবে get আপনার জন্য এই ফাইলটিতে সম্ভবত "0" smp_affinityরয়েছে (এবং সম্ভবত "1" রয়েছে)।

আপনি smp_affinity_listফাইলটিতে সিপিইউ রেঞ্জ লিখতে পারেন :

echo 0-7 | sudo tee /proc/irq/283/smp_affinity_list

অথবা আপনি একটি বিটমাস্ক লিখতে পারেন, যেখানে প্রতিটি বিট একটি সিপিইউ এর সাথে মিলে যায় smp_affinity:

printf %x $((2**8-1)) | sudo tee /proc/irq/283/smp_affinity

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

smp_affinityপুনরায় বুট করার পরেও যদি আপনি ইরাকবুলেন্স ব্যতীত ২৮৩ টি বিঘ্নিত হওয়ার জন্য বিজোড় হয়ে পড়ে থাকেন তবে আপনাকে নিজের স্টার্টআপ স্ক্রিপ্টগুলির একটিতে ম্যানুয়ালি সিপিইউ অ্যাফিনিটি আপডেট করতে হবে।


irqbalanceইতিমধ্যে চলছে। হয়তো এটি সঠিকভাবে কনফিগার করা হয়নি? কিভাবে তা যাচাই করবেন?
আলেকজান্ডার গ্ল্যাডিশ

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

এফওয়াইআই: এতে এখন রয়েছে (এই মেশিনে থাকা কোনও জিনিসই আমার জ্ঞানের সেরা হিসাবে পরিবর্তন /proc/irq/283/smp_affinityকরেনি 01- সুতরাং এটি অবশ্যই সিস্টেমের ডিফল্ট হতে হবে)।
আলেকজান্ডার গ্ল্যাডিশ

দুঃখিত, আমি আমার উত্তর আপডেট করেছি। ইরক্বালেন্স সম্ভবত অপরাধী। শুধু এ থেকে মুক্তি পান। আমি জানি না যে ডিফল্টটি কী হিসাবে বিবেচিত হবে, তবে অভিজ্ঞতা থেকে আমি এটি "সমস্ত সিপিইউ" তে ডিফল্ট দেখেছি।
chutz

অক্ষম করা হচ্ছে irqbalance(মাধ্যমে ENABLED=0/etc/default/irqbalance) সাহায্য করে না। পুনরায় বুট করার পরে irqbalanceহয় stop/waiting, কিন্তু /proc/irq/283/smp_affinityএখনও 01
আলেকজান্ডার গ্ল্যাডিশ

2

আপনার যদি ইন্টেল এনআইসির সঠিক মডেল থাকে তবে আপনি পারফরম্যান্স উল্লেখযোগ্যভাবে উন্নত করতে পারেন।

প্রথম অনুচ্ছেদের উদ্ধৃতি দিতে:

মাল্টিকোর প্রসেসর এবং নতুন ইথারনেট অ্যাডাপ্টারগুলি (82575, 82576, 82598, এবং 82599 সহ) টিসিপি ফরোয়ার্ডিং প্রবাহকে পৃথক কোরে এক্সিকিউশন ফ্লো নির্ধারণের মাধ্যমে অনুকূলিতকরণের অনুমতি দেয়। ডিফল্টরূপে, লিনাক্স স্বয়ংক্রিয়ভাবে প্রসেসরের কোরগুলিতে বাধা দেয় assign স্বয়ংক্রিয়ভাবে বিঘ্নগুলি বরাদ্দ করার জন্য দুটি পদ্ধতি বর্তমানে উপস্থিত রয়েছে, ব্যবহারকারীর স্পেসে একটি ইনকার্নাল আইআরকিউ ব্যালেন্সার এবং আইআরকিউ ব্যালেন্স ডেমন। উভয়ই ট্রেড অফস দেয় যা সিপিইউ ব্যবহার কমিয়ে দিতে পারে তবে আইপি ফরোয়ার্ডিং হারকে সর্বাধিক করে না। ইথারনেট অ্যাডাপ্টারের সারি নির্দিষ্ট প্রসেসরের কোরগুলিতে ম্যানুয়ালি পিন করে সর্বোত্তম থ্রুপুট পাওয়া যাবে can

আইপি ফরোয়ার্ডিংয়ের জন্য, একটি প্রেরণ / প্রাপ্ত কিউ জোড়া একই প্রসেসরের কোর ব্যবহার করা উচিত এবং বিভিন্ন কোরগুলির মধ্যে কোনও ক্যাশে সিঙ্ক্রোনাইজেশন হ্রাস করা উচিত। এটি নির্দিষ্ট কোরে ট্রান্সমিট এবং বিঘ্ন গ্রহণের মাধ্যমে সম্পাদন করা যেতে পারে। লিনাক্স কার্নেল ২.6.২7 দিয়ে শুরু করে, একাধিক সারি 82575, 82576, 82598, এবং 82599 এ ব্যবহার করা যেতে পারে Additionally অতিরিক্ত হিসাবে, একাধিক ট্রান্সমিট সারি এক্সটেন্ডেড মেসেজিং সিগন্যালড ইন্টারপ্টস (এমএসআই-এক্স) এ সক্ষম হয়েছিল। এমএসআই-এক্স প্রচুর পরিমাণে বাধা ব্যবহার করতে পারে যা নির্দিষ্ট সিপিইউগুলিতে সূক্ষ্ম দানযুক্ত নিয়ন্ত্রণ এবং বিঘ্নগুলি লক্ষ্যবস্তু করার অনুমতি দেয়।

দেখুন: একটি ইন্টেল 82575/82576 বা 82598/82599 ইথারনেট কন্ট্রোলার ব্যবহার করে প্রসেসর কোরগুলিতে বাধা বরাদ্দ করা হচ্ছে


2

আসলে এটি সুপারিশ করা হয়, বিশেষত স্বল্প সময়ের মধ্যে পুনরাবৃত্তি প্রক্রিয়াগুলির সাথে ডিল করার সময়, ডিভাইস সারি দ্বারা উত্পন্ন সমস্ত বাধা আইআরকিউ ব্যালেন্সিংয়ের পরিবর্তে একই সিপিইউ দ্বারা পরিচালিত হয় এবং সুতরাং যদি কোনও সিপিইউ এথ 1 বিঘ্নিত পরিচালনা করে তবে আপনি আরও ভাল পারফরম্যান্স দেখতে পাবেন *** ব্যতিক্রম নীচে সরবরাহ করা হয়েছে

উপরে লিঙ্কযুক্ত উত্সটি লিনাক্স সিম্পোসিয়ামের এবং আমি আপনাকে এসএমপি আইআরকিউ অ্যাফিনিটির কয়েকটি অনুচ্ছেদে পড়ার পরামর্শ দিচ্ছি কারণ এটি আপনাকে এই পোস্টের চেয়ে আরও কার্যকরভাবে বিশ্বাস করবে।

কেন?

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

বিকল্পভাবে, যখন আইআরকিউ ভারসাম্যপূর্ণ হয় তখন এটি বিভিন্ন সিপিইউ দ্বারা নিয়মিত হ্যান্ডেল করার জন্য বাধা সরবরাহ করতে পারে, তবে নতুন সিপিইউ কোরটিতে সম্ভবত ক্যাশে বিঘ্নিত হ্যান্ডলার ফাংশন থাকবে না এবং মূল থেকে সঠিক হ্যান্ডলারটি পেতে দীর্ঘ সময় প্রয়োজন হবে স্মৃতি.

ব্যতিক্রম : যদি আপনি খুব কমই এথ 1 বিঘ্ন ব্যবহার করে থাকেন, যার অর্থ যথেষ্ট সময় কেটে যায় যে অন্যান্য কাজগুলি করে ক্যাশে ওভাররাইট করা হয়, যার অর্থ আপনার মাঝে সেই ইন্টারফেসের মধ্যবর্তী সময়ে দীর্ঘ সময় ধরে ইন্টারফেসে আগত ডেটা থাকে ... তবে সম্ভবত আপনি এই সুবিধাগুলি দেখতে পাবেন না কারণ তারা যখন আপনি উচ্চ ফ্রিকোয়েন্সিতে কোনও প্রক্রিয়া ব্যবহার করেন।

উপসংহার

যদি আপনার বাধা খুব ঘন ঘন ঘটে তবে কেবলমাত্র সেই নির্দিষ্ট বাধা কেবল একটি নির্দিষ্ট সিপিইউ দ্বারা পরিচালিত হবে ind এই কনফিগারেশন এ বাস

 /proc/'IRQ number'/smp_affinity

অথবা

/proc/irq/'IRQ number'/smp_affinity

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

বিকল্পভাবে

নেটওয়ার্কটি যদি এটির অনুমতি দেয় বা প্রতিটি প্যাকেটের পরিবর্তে বৃহত পরিমাণে প্যাকেট প্রাপ্ত হওয়ার পরে পতাকাটি উত্থাপন করতে বা পরিবর্তন করতে পারে তবে এমটিইউ আকার (জাম্বো ফ্রেম) বাড়িয়ে বাধাগুলি পতাকাটি যে ফ্রিকোয়েন্সি পরিবর্তন করতে পারে তা আপনি পরিবর্তন করতে পারেন the সময় শেষ হয়ে যায়, তাই নির্দিষ্ট সময়ের পরে বাধা বাড়াতে। সময় বিকল্পের সাথে সতর্কতা অবলম্বন করুন কারণ সময় শেষ হওয়ার আগে আপনার বাফার আকারটি পূর্ণ হতে পারে। এটি লিঙ্কযুক্ত উত্সে বর্ণিত এথ্টোল ব্যবহার করে করা যেতে পারে ।

এই উত্তরটি যে দৈর্ঘ্যে লোকেরা এটি পড়তে চাইবে না কেন তাই আমি খুব বেশি বিশদে যাব না তবে আপনার পরিস্থিতির উপর নির্ভর করে অনেকগুলি সমাধান রয়েছে ... উত্সটি পরীক্ষা করুন :)

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.