explain

Context switching और उच्च CPU

Context switches तब होते हैं जब CPU एक कार्य की स्थिति सहेजता है और दूसरे की स्थिति लोड करता है। कुछ switching सामान्य है, लेकिन अत्यधिक दरें CPU का समय बर्बाद करती हैं।

Evidence to look for

व्यस्त सर्वर पर प्रति सेकंड context switches 50,000+ से अधिक हो जाते हैं
CPU उपयोग उच्च है लेकिन थ्रूपुट स्थिर है
थ्रेड्स कम करने से प्रदर्शन में सुधार होता है

What it usually means

प्रत्येक context switch की एक लागत होती है: रजिस्टर सहेजना, कैश फ्लश करना, नई स्थिति लोड करना। उच्च दरों पर, यह ओवरहेड महत्वपूर्ण हो जाता है।

What to do next

  1. 1थ्रेड या प्रक्रिया की संख्या कम करें
  2. 2महत्वपूर्ण थ्रेड्स को विशिष्ट कोर पर पिन करें
  3. 3thread-per-connection के बजाय async IO का उपयोग करें

See what's causing your CPU

cpum.ai turns CPU, process, disk, and memory signals into plain-English explanations with evidence.

Open cpum.ai

Related

Context switching और उच्च CPU: आपको क्या जानना चाहिए | cpum.ai