पोर्टेज stable. stable स्थिर रीलीझची आधीच घोषणा केली आहे

विकसक अलीकडे पॅकेज व्यवस्थापन प्रणालीचे प्रभारी कोण आहेत पोर्टेज (जेंटू लिनक्स वितरणावर) आवृत्ती 3.0 ची स्थिर आवृत्ती रीलीझ करण्याची घोषणा केली.

ज्यात, मुख्य नवीनता सादर केलेल्या या नवीन शाखेचे कार्य दीर्घकालीन कार्य केले गेले पायथन 3 मध्ये संक्रमण आणि पायथन 2.7 साठी समर्थनाची समाप्ती (ही गोष्ट बर्‍याच काळापासून आधीपासूनच येत होती, कारण ही शाखा कित्येक महिन्यांपर्यंत अधिकृतपणे समर्थित नव्हती)

आमच्याकडे चांगली बातमी आहे! जेंटू पोर्टेज प्रोजेक्टने अलीकडेच पॅकेज मॅनेजरची आवृत्ती 3.0 स्थिर केली आहे.

नवीन काय आहे? बरं, पोर्टेजची ही तिसरी आवृत्ती पायथन २.2.7 चे समर्थन काढून टाकते, जी २०२० मध्ये जेंटू पायथन प्रोजेक्टच्या मुख्य जेंटू रेपॉजिटरीमध्ये सतत प्रयत्न करत राहिली आहे.

पायथन २.2.7 चे समर्थन बंद करण्याव्यतिरिक्त, आणखी एक मोठा बदल ते पोर्टेज of.० च्या या नवीन स्थिर शाखेतून उभे आहे विविध ऑप्टिमायझेशनचा समावेश होता की त्यांनी परवानगी दिली गणना खूप वेगवान करा (50% ते 60% दरम्यान) अवलंबन निश्चित करण्याशी संबंधित.

विशेष म्हणजे काही विकसकांनी सी / सी ++ किंवा त्यांच्या कामास गती देण्यासाठी Go वर अवलंबिता रिझोल्यूशन कोड पुन्हा लिहिण्याची सूचना दिली, परंतु त्यांनी मोठ्या प्रयत्नाने विद्यमान समस्या सोडविण्यास व्यवस्थापित केले.

आणि ते आहे विद्यमान कोडचे प्रोफाइल दर्शविते की बहुतेक वेळा गणना use_reduce आणि catpkgsplit फंक्शन्सना कॉल करण्यास समर्पित आहे वारंवार युक्तिवादांच्या संचासह (ज्याने या कार्याचे नेतृत्व केले त्या व्यक्तीचा उल्लेख आहे की उदाहरणार्थ, catpkgsplit फंक्शन 1 ते 5 दशलक्ष वेळा म्हणतात).

अडचणी सापडल्यामुळे, गणितांना वेग देण्यासाठी नमूद करा, कॅशिंग लागू केले शब्दकोषांच्या सहाय्याने या कार्याचा परिणाम.

तसेच, वापरकर्त्याने पुरविलेल्या पॅचमुळे, पोर्टेजच्या नवीनतम आवृत्तीमध्ये अद्यतनित करणे निर्भरतेची गणना 50-60% वेगाने वाढवू शकते. आमचा समुदाय आमच्या सॉफ्टवेअरमध्ये भाग घेताना आम्हाला आवडतो! अधिक तपशीलांसाठी, पॅच प्रदान करणार्या समुदाय सदस्याकडून हे रेडिट पोस्ट पहा. निरोगी रहा आणि जेंटूबरोबर स्वयंपाक करत रहा!

त्याच्या बाजूला हे देखील नोंदवते की lru_cache अंगभूत फंक्शन इष्टतम होते या कॅशींगच्या कार्यासाठी, परंतु ते फक्त 3.2 पासून पायथन आवृत्त्यांमध्ये उपलब्ध होते.

बॅकवर्ड सुसंगततेसाठी, lru_cache पुनर्स्थित करण्यासाठी एक स्टब देखील जोडला गेला, परंतु पोर्टेज in.० मध्ये पायथन २.2.7 समर्थन समाप्त करण्याच्या निर्णयाने कार्य मोठ्या प्रमाणात सुलभ केले आणि या थराला बायपास करणे शक्य केले.

सीप्रोफाईल आणि व्हीएमपीप्रोफ सह पोर्टेज प्रोफाइलिंगसाठी काही वेळ मी कोणती वैशिष्ट्ये जास्त वेळ घेत आहेत हे समजून घेण्यासाठी घालवले. मी प्रोफाइलरच्या निकालांमधून काही फ्लेमग्राफ देखील व्युत्पन्न केले जे हे दिसत होते. माझ्या लक्षात आले की काही फंक्शन्स जसे की use_reducecatpkgsplit, समान वितर्कांसह (जसे की 1 ते 5 दशलक्ष वेळा) साठी वारंवार म्हटले जाते catpkgsplit). मी एका डिक्टेशनमध्ये या फंक्शन्सचे परिणाम कॅश करण्यासाठी काही प्रयोग केले आणि काही चांगल्या स्पीडअप्स पाहिल्यानंतर, मी पोर्टेज विकसक यादीमध्ये एक पॅच सबमिट केला. कोणीतरी अंगभूत पायथन वापरण्याचे सुचविलेlru_cache त्याऐवजी फंक्शन डेकोरेटर, परंतु ते फक्त पायथन 3.2.२ आणि त्याहून अधिक वर उपलब्ध आहे.

दुसरीकडे, कॅशेच्या वापरामुळे थिंकपॅड एक्स 220 वरील "इमरजेंस -uDvpU ithwith-bdeps = y @world" ऑपरेशन 5 मिनिट 20 सेकंद वरून 3 मिनिट 16 सेकंद (63%) कमी केले आहे. इतर यंत्रणांवरील चाचण्यांमध्ये कमीतकमी 48% कामगिरी वाढ झाली आहे.

हा बदल तयार करणार्‍या विकसकाने प्रोटोटाइप राबविण्याचा प्रयत्नही केला अवलंबित्व रिझोल्यूशन कोडवरून सी ++ किंवा जंग मध्ये, पण हे काम खूप कठीण झाले. कारण त्यासाठी मोठ्या प्रमाणात संहिता बाळगणे आवश्यक आहे आणि त्याच वेळी हा परिणाम प्रयत्न करण्यायोग्य आहे की नाही याबद्दल शंका होती.

शेवटी आपण त्याबद्दल अधिक जाणून घेऊ इच्छित असल्यास या स्थिर शाखेत रीलिझ नोटबद्दल, आपण तपशील तपासू शकता पुढील लिंकवर


आपली टिप्पणी द्या

आपला ई-मेल पत्ता प्रकाशित केला जाणार नाही. आवश्यक फील्ड चिन्हांकित केले आहेत *

*

*

  1. डेटासाठी जबाबदार: AB इंटरनेट नेटवर्क 2008 SL
  2. डेटाचा उद्देशः नियंत्रण स्पॅम, टिप्पणी व्यवस्थापन.
  3. कायदे: आपली संमती
  4. डेटा संप्रेषण: कायदेशीर बंधन वगळता डेटा तृतीय पक्षास कळविला जाणार नाही.
  5. डेटा संग्रहण: ओकेन्टस नेटवर्क (EU) द्वारा होस्ट केलेला डेटाबेस
  6. अधिकारः कोणत्याही वेळी आपण आपली माहिती मर्यादित, पुनर्प्राप्त आणि हटवू शकता.