மைக்ரோசாப்ட் MIT உரிமத்தின் கீழ் ஒரு நூலகத்தைத் திறந்துள்ளது
மைமல்லாக்கின் முக்கிய அம்சம் அதன் கச்சிதமான செயலாக்கம் (3500 வரிகளுக்கு குறைவான குறியீடு) மற்றும் மிக உயர்ந்த செயல்திறன் ஆகும். IN
செயல்திறனை மதிப்பிட, ஏற்கனவே உள்ள ஒரு தொகுப்பு
உயர் செயல்திறன் முக்கியமாக இலவச பட்டியல் பகிர்வைப் பயன்படுத்துவதன் மூலம் அடையப்படுகிறது. ஒரு பெரிய பட்டியலுக்குப் பதிலாக, மிமாலோக் சிறிய பட்டியல்களின் வரிசையைப் பயன்படுத்துகிறது, அவை ஒவ்வொன்றும் நினைவகப் பக்கத்துடன் இணைக்கப்பட்டுள்ளன. இந்த அணுகுமுறை துண்டாடுதலைக் குறைக்கிறது மற்றும் நினைவகத்தில் தரவு இருப்பிடத்தை அதிகரிக்கிறது. நினைவகப் பக்கம் என்பது ஒரே அளவிலான தொகுதிகளின் தொகுப்பாகும். 64-பிட் கணினிகளில், பக்க அளவு பொதுவாக 64 KB ஆகும். பக்கத்தில் ஆக்கிரமிக்கப்பட்ட தொகுதிகள் எதுவும் இல்லை என்றால், அது முற்றிலும் விடுவிக்கப்பட்டு, நினைவகம் இயக்க முறைமைக்குத் திரும்பும், இது நீண்டகால நிரல்களில் நினைவக செலவுகள் மற்றும் துண்டு துண்டாக குறைக்கிறது.
நூலகத்தை இணைக்கும் கட்டத்தில் சேர்க்கலாம் அல்லது ஏற்கனவே கூடியிருந்த நிரலுக்கு ஏற்றலாம் (“LD_PRELOAD=/usr/bin/libmimalloc.so myprogram”). நூலகமும் வழங்குகிறது
பாதுகாப்பான முறையில் நூலகத்தை உருவாக்க முடியும், இதில் சிறப்பு நினைவக சரிபார்ப்பு பக்கங்கள் (பாதுகாவலர்-பக்கங்கள்) தொகுதி எல்லைகளில் மாற்றப்படுகின்றன, மேலும் தொகுதி விநியோகத்தின் சீரற்றமயமாக்கல் மற்றும் விடுவிக்கப்பட்ட தொகுதிகளின் பட்டியல்களின் குறியாக்கம் ஆகியவை பயன்படுத்தப்படுகின்றன. இத்தகைய நடவடிக்கைகள் குவியல் அடிப்படையிலான இடையக வழிதல்களைப் பயன்படுத்துவதற்கான பொதுவான நுட்பங்களைத் தடுக்க உங்களை அனுமதிக்கின்றன. நீங்கள் பாதுகாப்பான பயன்முறையை இயக்கும் போது, செயல்திறன் தோராயமாக 3% குறைகிறது.
மிமாலோக்கின் அம்சங்களில், பெரிய துண்டு துண்டாக இருப்பதால், வீக்கம் ஏற்படுவதில் சிக்கல்கள் ஏற்படாது என்பதும் குறிப்பிடத்தக்கது. மோசமான சூழ்நிலையில், மெட்டாடேட்டாவிற்கு நினைவக நுகர்வு 0.2% அதிகரிக்கிறது மற்றும் விநியோகிக்கப்பட்ட நினைவகத்திற்கு 16.7% ஐ அடையலாம். வளங்களை அணுகும் போது மோதல்களைத் தவிர்க்க, mimalloc அணு செயல்பாடுகளை மட்டுமே பயன்படுத்துகிறது.
ஆதாரம்: opennet.ru