आधिकारिक उबंटू कर्नेल में शामिल बीएफक्यू और बीएफएस शेड्यूलर्स क्यों नहीं हैं?


24

कल मैंने उबंटू को तेज करने पर एक लेख पढ़ा । लेख में एक सुझाव BFQ के साथ डिफ़ॉल्ट I / O अनुसूचक की जगह ले रहा था , जो कि लेख के अनुसार इंटरैक्टिव प्रदर्शन के लिए अनुकूलित है।

इसी तरह का लेख बीएफएस प्रक्रिया अनुसूचक का उपयोग करते समय डेस्कटॉप प्रदर्शन में फायदे बताता है ।

दोनों अनुसूचियों को कई पैचसेट और वैकल्पिक कर्नेल में शामिल किया गया है जो डेस्कटॉप अन्तरक्रियाशीलता और प्रदर्शन को बढ़ाने के लिए जाने जाते हैं (उदाहरण के लिए linux-pf , शराब-कर्नेल और linux-ck )।

तो मेरा सवाल है : यह देखते हुए कि उबंटू एक महान डेस्कटॉप अनुभव के लिए कैसे प्रयास कर रहा है, ओएस के गैर-सर्वर बिल्ड कैसे इन अनुसूचियों के साथ नहीं आते हैं जब वे इंटरैक्टिव प्रदर्शन के मामले में बेहतर साबित हुए हैं?


दो अनुसूचियों पर अधिक जानकारी यहाँ मिल सकती है:


1
संक्षिप्त नाम BFS है, BFQ नहीं है, है ना? या यह यहाँ आत्मीय है?
जॉब

@ जोबन हूप्स, आप सही कह रहे हैं। BFS एक प्रक्रिया अनुसूचक है और यह BFQ की तरह ही linux-ck पैचसेट में शामिल है। मैं इस प्रश्न को प्रतिबिंबित करने के लिए संपादित करूंगा।
ग्लूटेनेन्ट

उबंटू डिफ़ॉल्ट अनुसूचक समय सीमा के खिलाफ ध्यान देने योग्य प्रदर्शन लाभ बीएफएस के साथ कोई भी मानक हैं? जुड़े बेंचमार्क केवल CFQ के खिलाफ तुलना
NGRhodes

1
@NGRhodes हां, इस तुलना में आप देख सकते हैं कि लेखकों ने बीएफक्यू और समय सीमा के बीच समान प्रवाह के बारे में हासिल किया, जबकि अनुक्रमिक डिस्क लोड के तहत अनुप्रयोगों के स्टार्टअप समय को कम करने के लिए प्रबंधन एक परिमाण के क्रम में (बीएफक्यू के साथ)। ऊपर दिए गए पहले लेख में आपको इसी तरह की तुलना मिलेगी ।
Glutanimate

3
आप इसे ubuntu-devel-चर्चा पर प्रस्तावित करने का प्रयास क्यों नहीं करते ?
एंड्रिया कोरबेलिनी 12

जवाबों:


14

शीघ्र जवाब :

  1. दोनों अनुसूचियां लिनक्स के सभी समर्थित प्लेटफार्मों (आवृत्ति, वास्तुकला, संसाधन खपत, ...) के लिए बिल्कुल भी काम नहीं करती हैं या अच्छी तरह से काम नहीं करती हैं।
  2. ऐसा लगता है कि टॉर्वाल्ड्स केवल एक से अधिक अनुसूचक का समर्थन नहीं करना चाहते हैं

स्पष्टीकरण:

चूंकि शेड्यूलर्स अकेले पहल (कर्नेल द्वारा समर्थित नहीं उर्फ) है, तो इसके लिए मात्र तथ्य का मतलब उन लोगों को उन शेड्यूलर्स (सुरक्षा पैच, रखरखाव पैच, नए कर्नेल रिलीज के लिए अनुकूलन की गति,) में ध्यान केंद्रित करना होगा। इसका मतलब है कि एक परियोजना के लिए वित्तीय निवेश जो भविष्य में इसके अस्तित्व के बारे में अनिश्चित है।

वे अभी भी काफी युवा हैं। बीएफएस के अक्सर पूछे जाने वाले प्रश्न "कैसे स्केलेबल है?" पर सबसे अच्छा उदाहरण है ।

इस भाग की पंक्तियों के पीछे हमें बताता है कि जब आपके पास बहुत अधिक तार्किक CPU है, तो BFS के पास प्रदर्शन संबंधी समस्याएं हैं। यह एकल बिंदु सर्वर और उच्च अंत पीसी के लिए निकालता है (16 की संख्या दी गई है, तो इसका मतलब है कि एक साधारण 1000 अमरीकी डालर सर्वर को इसके साथ प्रदर्शन की परेशानी होगी)। तो आप इस पैच के उबंटू सर्वर को बाहर कर देते हैं, आप भौतिक द्वि सीपीयू कॉन्फ़िगरेशन को भी बाहर कर देते हैं जो अब आसानी से इस संख्या तक पहुँचते हैं।

यदि वे किसी अन्य शेड्यूलर का उपयोग करते हैं तो उबंटू जनता तक नहीं पहुंच सकता। स्केलेबिलिटी प्रदर्शन पर जीत हासिल करती है।

हमेशा की तरह, कई "अगर" के साथ ...:

  • यदि उबंटू का प्रत्येक उपयोगकर्ता एक डेस्कटॉप उपयोगकर्ता है
  • यदि प्रत्येक उबंटू उपयोगकर्ता की प्रत्येक मशीनें शेड्यूलर्स के लिए सही पीसी हैं

वास्तव में सबसे अच्छा दृष्टिकोण वर्तमान एक है: उपयोगकर्ता को वे शेड्यूलर लागू करना चाहिए जो वे चाहते हैं यदि उनके पास हार्डवेयर है और इसमें रुचि है।

इसे लागू करना कुछ समय के लिए कुछ के लिए बेहतर काम कर सकता है (क्योंकि, जैसा कि मैंने कहा है, स्केलेबिलिटी एक बड़ा मुद्दा है और भविष्य में प्रोसेसर की संख्या बढ़ जाएगी)। लेकिन दूसरों को गंभीर तकलीफ देगा।

अतिरिक्त स्रोत:

लिंक हमेशा के लिए नहीं रह सकता है, यहाँ एक लेख है जिसे मैंने एचएफएस के बारे में एच-ऑनलाइन पर पाया है । यह मैंने पाया सबसे आधिकारिक है। हालाँकि अगर आप गूगल हार्ड करते हैं तो आपको वास्तविक विवरण मिल सकता है। मुझे लगता है कि यह kerneltrap पर हो सकता है।

लेख के फीनिक्स शीर्षक का तीसरा पैराग्राफ देखें। लिंक के मरने पर मैं इसे यहाँ उद्धृत करूँगा:

वर्तमान में, लिनक्स मुख्य विकास शाखा में बीएफएस के एकीकरण की संभावना बहुत कम लगती है, क्योंकि लिनुस टॉर्वाल्ड्स ने पहले ही स्पष्ट कर दिया है कि वह कई शेड्यूलरों को बनाए रखना नहीं चाहता है। इसके अलावा, लिनक्स वितरक एक एकल कर्नेल छवि पसंद करते हैं जो विशेष कॉन्फ़िगरेशन की आवश्यकता के बिना विभिन्न प्रकार के सिस्टम पर इष्टतम प्रदर्शन प्राप्त करता है। यह हो सकता है कि सीएफएस डेवलपर्स बीएफएस द्वारा कवर किए गए क्षेत्रों में अपने अनुसूचक में सुधार करेंगे - उपयोगकर्ता समुदाय के लिए एक बोनस।

Linus Torvalds थ्रेड इसके बारे में।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.