لینکس کرنل میں ایک بھولا ہوا پیچ پایا گیا جو AMD CPUs کی کارکردگی کو متاثر کرتا ہے۔

لینکس 6.0 کرنل، جو اگلے پیر کو جاری ہونے کی توقع ہے، میں ایک تبدیلی شامل ہے جو AMD Zen پروسیسر پر چلنے والے سسٹمز کے ساتھ کارکردگی کے مسائل کو حل کرتی ہے۔ کارکردگی میں کمی کا ذریعہ 20 سال پہلے کچھ چپ سیٹوں میں ہارڈ ویئر کے مسئلے کو حل کرنے کے لیے شامل کیا گیا کوڈ پایا گیا تھا۔ ہارڈ ویئر کا مسئلہ کافی عرصے سے حل ہو چکا ہے اور موجودہ چپ سیٹس میں ظاہر نہیں ہوتا ہے، لیکن اس مسئلے کے لیے پرانے حل کو فراموش کر دیا گیا ہے اور جدید AMD CPUs پر مبنی سسٹمز کی کارکردگی میں کمی کا ایک ذریعہ بن گیا ہے۔ Intel CPUs پر نئے سسٹمز پرانے کام سے متاثر نہیں ہوتے ہیں، کیونکہ وہ ACPI تک رسائی حاصل کرتے ہیں ایک علیحدہ intel_idle ڈرائیور کا استعمال کرتے ہوئے، نہ کہ عام processor_idle ڈرائیور کا۔

STPCLK# سگنل کی پروسیسنگ میں تاخیر کی وجہ سے بیکار حالت کو صحیح طریقے سے سیٹ نہ کرنے سے منسلک چپ سیٹس میں بگ کی ظاہری شکل کو روکنے کے لیے مارچ 2002 میں دانا میں ایک کام شامل کیا گیا تھا۔ مسئلہ کو حل کرنے کے لیے، ACPI کے نفاذ نے WAIT کی ایک اضافی ہدایات شامل کی، جو پروسیسر کو سست کر دیتی ہے تاکہ چپ سیٹ کو بیکار حالت میں جانے کا وقت ملے۔ AMD Zen3 پروسیسرز پر IBS (انسٹرکشن بیسڈ سیمپلنگ) ہدایات کا استعمال کرتے ہوئے پروفائلنگ کرتے وقت، یہ پتہ چلا کہ پروسیسر اسٹبس کو انجام دینے میں کافی وقت صرف کرتا ہے، جس کی وجہ سے پروسیسر کی لوڈ سٹیٹ کی غلط تشریح ہوتی ہے اور گہری نیند کے طریقوں (C- اسٹیٹ) پروسیسر cpuidle کے ذریعہ۔

یہ رویہ کام کے بوجھ کے تحت کم کارکردگی سے ظاہر ہوتا ہے جو اکثر بیکار اور مصروف حالتوں کے درمیان متبادل ہوتا ہے۔ مثال کے طور پر، ایسے پیچ کا استعمال کرتے وقت جو بائی پاس کی چال کو غیر فعال کرتا ہے، ٹی بینچ ٹیسٹ کا اوسط 32191 MB/s سے بڑھ کر 33805 MB/s ہو جاتا ہے۔

ماخذ: opennet.ru

نیا تبصرہ شامل کریں