அவர்கள் லினக்ஸ் கர்னலுக்கான புதிய மெமரி கன்ட்ரோலரை முன்மொழிகின்றனர்

லினக்ஸ் கர்னல்

நினைவக மேலாளர் என்பது கணினியின் துணைக்குழு ஆகும் இயக்க இது இயக்க முறைமைக்கும் பல்வேறு பயன்பாடுகளுக்கும் இடையில் நினைவகத்தைப் பகிர்ந்து கொள்கிறது. நினைவகம் என்ற சொல் முக்கியமாக பிரதான நினைவகத்தை (ரேம்) குறிக்கிறது, ஆனால் அதன் நிர்வாகத்திற்கு துணை நினைவகம் மற்றும் கேச் நினைவகத்தின் பங்களிப்பு தேவைப்படுகிறது.

நினைவக மேலாளர் செயல்முறைகளுக்கு நினைவகத்தை திறம்பட ஒதுக்குவதற்கு குறிப்பாக பொறுப்பு, இதன் பொருள் நீங்கள் கிடைக்கக்கூடிய நினைவகத்தின் இலவச இருப்பிடங்களை பட்டியலிடவும், புதிய செயல்முறைகளுக்குத் தேவையான நினைவகத்தை ஒதுக்கவும், நிறுத்தப்படும் செயல்முறைகளிலிருந்து நினைவகத்தை மீட்டெடுக்கவும் முடியும். லினக்ஸ் கர்னலுக்குள் செயல்முறை அனுப்பியவர் SLAB அனுப்பியவர்.

SLAB நினைவக கோரிக்கைகளை மேம்படுத்தும் தொகுதி மற்றும் கேச் அமைப்பை நம்பியுள்ளது. இந்த வகை நினைவக மேலாண்மை ஒதுக்கீடு மற்றும் இடமாற்றம் செயல்பாடுகளால் ஏற்படும் துண்டு துண்டாக குறைக்கிறது.

தொகுதி ஒதுக்கீடு என்பது ஒரு குறிப்பிட்ட பொருள் வகை / அளவிற்கு ஒரு தற்காலிக சேமிப்பை செயல்படுத்துவதை உள்ளடக்கியது, இது பல முன் ஒதுக்கப்பட்ட நினைவக தொகுதிகள் குறிப்பிட்ட பொருள்களுக்கு ஏற்ற நிலையான அளவு துண்டுகளாக வெட்டப்படுகின்றன.

SLAB துண்டுகளை நிர்வகிக்கிறது, இதனால் ஒரு பொருளுக்கு நினைவகத்தை ஒதுக்குமாறு கர்னல் கோரப்படும் போது, ஏற்கனவே உள்ள தொகுதியிலிருந்து ஒரு உதிரி பாகத்துடன் அந்த கோரிக்கையை நீங்கள் பூர்த்தி செய்யலாம். ஒத்த பொருள்களின் அடுத்தடுத்த ஒதுக்கீடுகளின் போது, ​​மறுபயன்பாட்டிற்காக ஒதுக்கப்பட்ட நினைவகத்தை SLAB தக்க வைத்துக் கொள்கிறது, இதனால் பொருள் துவக்கம் தொடர்பான மேல்நிலை செலவுகளை குறைக்கிறது.

அவர்கள் SLAB ஐ மாற்ற விரும்புகிறார்கள்

ரோமன் குஷ்சின், பேஸ்புக்கில் லினக்ஸ் கர்னல் பொறியியல் குழுவின் உறுப்பினரான அவர் தற்போதைய மெமரி மேனேஜர் / கன்ட்ரோலரில் ஒரு "கடுமையான குறைபாடு" என்று கருதுவதைக் கண்டுபிடித்தார். மற்றும் ஆர்சமீபத்தில் ஒரு புதிய நினைவக கட்டுப்படுத்தியை முன்மொழிந்தது தொகுதி இது பல "cgroups" களில் நினைவக பயன்பாட்டை வியத்தகு முறையில் மேம்படுத்துவதாக உறுதியளிக்கிறது (அல்லது கட்டுப்பாட்டு குழுக்கள்) நினைவகத்திலிருந்து.

இதைப் பொறுத்தவரை, cgroups என்பது லினக்ஸ் கர்னலின் ஒரு அம்சத்தைக் குறிக்கிறது, இது ஒரு அமைப்பின் வளங்களை (செயலி, நினைவகம், வட்டு பயன்பாடு போன்றவை) கட்டுப்படுத்துவதற்கும், எண்ணுவதற்கும் தனிமைப்படுத்துவதற்கும் அனுமதிக்கிறது மற்றும் "ஸ்லாபின் பக்கம்» " SLAB ஆல் நினைவக ஒதுக்கீட்டு செயல்முறைக்கு ஒருங்கிணைக்கப்படலாம்.

குஷ்சின் கருத்துப்படி:

"தற்போதுள்ள வடிவமைப்பு குறைந்த ஸ்லாப் பயன்பாட்டிற்கு இட்டுச் செல்வதற்கான உண்மையான காரணம் எளிதானது: ஸ்லாப் பக்கங்கள் ஒரு மெமரி பூல் மூலம் பிரத்தியேகமாகப் பயன்படுத்தப்படுகின்றன.

ஒரு cgroup ஆல் செய்யப்பட்ட ஒரு குறிப்பிட்ட அளவின் சில ஒதுக்கீடுகள் மட்டுமே இருந்தால் அல்லது cgroup அகற்றப்பட்ட பின் சில செயலில் உள்ள பொருள்கள் இருந்தால் அல்லது cgroup இல் ஒற்றை திரிக்கப்பட்ட பயன்பாடு இருந்தால், அது கிட்டத்தட்ட கர்னல்களை ஒதுக்காது, ஆனால் ஒவ்வொரு முறையும் அவ்வாறு செய்கிறது ஒரு புதிய CPU: இந்த எல்லா சந்தர்ப்பங்களிலும், இதன் விளைவாக SLAB பயன்பாடு மிகக் குறைவு.

கிமீம் கணக்கீடு முடக்கப்பட்டிருந்தால், கர்னல் மற்ற ஒதுக்கீடுகளுக்கு ஓடு பக்கங்களில் இலவச இடத்தைப் பயன்படுத்தலாம் «.

ஒவ்வொரு மெமரி பூலுக்கும் இயக்கப்பட வேண்டிய விருப்ப அம்சமாக கிமீம் இயக்கி அறிமுகப்படுத்தப்பட்டபோது இது ஒரு பிரச்சினை அல்ல என்று குஷ்சின் வாதிடுகிறார்.

இப்போது, cgroup v1 மற்றும் v2 க்கு முன்னிருப்பாக kmem இயக்கி இயக்கப்படுகிறது. நவீன அமைப்புகள் அதிக எண்ணிக்கையிலான சி குழுக்களை உருவாக்க முனைகின்றன என்பதால், SLAB ஐப் பயன்படுத்துவது குறைவான செயல்திறன் கொண்டது.

அவரைப் பொறுத்தவரை, பல்வேறு நினைவக குழுக்களுக்கு இடையில் ஸ்லாப் பக்கங்களைப் பகிர்வதன் மூலம் மற்றும் பக்கத்தை விட பொருளால் கணக்கியல் செய்யப்படும் மறுவேலை செய்யப்பட்ட அமைப்பைப் பயன்படுத்துவதன் மூலம், லினக்ஸ் கர்னலில் ஒரு உகந்த நினைவக கட்டுப்படுத்தி இருக்கும் இது மிகவும் திறமையான பயன்பாட்டை வழங்குகிறது.

குஷ்சின் முன்மொழியப்பட்ட இணைப்பு இரண்டு அரை சுயாதீன கூறுகளைக் கொண்டுள்ளது: எதிர்காலத்தில் கணக்கியல் நோக்கங்களுக்காகப் பயன்படுத்தக்கூடிய ஒரு துணைப்பக்க சுமை API, மற்றும் ஒரு mem_cgroup_ptr API.

புதிய கட்டுப்படுத்தியுடன் சோதனைகள் செய்யப்படுகின்றன குஷ்சின் நினைவகம் லினக்ஸில் 35% முதல் 42% வரை அதிகமான நினைவகத்தைப் பெற முடியும் என்பதைக் காட்டியுள்ளன முன் இறுதியில் வலை, தரவுத்தள கேச் மற்றும் டிஎன்எஸ் சேவையகம் மற்றும் பல பணிச்சுமைகளில்.

குஷ்சின் முன்மொழிவு தற்போது "கருத்துக் கோருதல்" என்ற பதாகையின் கீழ் உள்ளது. ஏற்றுக்கொள்ளப்பட்டால், இது 2020 லினக்ஸ் கர்னல் வெளியீட்டில் ஒருங்கிணைக்கப்படலாம்.

மூல: https://lkml.org/


உங்கள் கருத்தை தெரிவிக்கவும்

உங்கள் மின்னஞ்சல் முகவரி வெளியிடப்பட்ட முடியாது. தேவையான புலங்கள் குறிக்கப்பட்டிருக்கும் *

*

*

  1. தரவுகளுக்குப் பொறுப்பு: AB இன்டர்நெட் நெட்வொர்க்ஸ் 2008 SL
  2. தரவின் நோக்கம்: கட்டுப்பாட்டு ஸ்பேம், கருத்து மேலாண்மை.
  3. சட்டபூர்வமாக்கல்: உங்கள் ஒப்புதல்
  4. தரவின் தொடர்பு: சட்டபூர்வமான கடமையால் தவிர மூன்றாம் தரப்பினருக்கு தரவு தெரிவிக்கப்படாது.
  5. தரவு சேமிப்பு: ஆக்சென்டஸ் நெட்வொர்க்குகள் (EU) வழங்கிய தரவுத்தளம்
  6. உரிமைகள்: எந்த நேரத்திலும் உங்கள் தகவல்களை நீங்கள் கட்டுப்படுத்தலாம், மீட்டெடுக்கலாம் மற்றும் நீக்கலாம்.