zlib-ng இன் முதல் நிலையான வெளியீடு, zlib இன் உயர் செயல்திறன் ஃபோர்க்

zlib-ng 2.0 லைப்ரரியின் வெளியீடு கிடைக்கிறது மற்றும் இது திட்டத்தின் முதல் நிலையான வெளியீடாகக் குறிக்கப்பட்டது (அதைத் தொடர்ந்து ஒரு திருத்த வெளியீடு 2.0.1). Zlib-ng ஆனது API மட்டத்தில் zlib உடன் இணக்கமாக உள்ளது, ஆனால் மாற்றங்களை ஏற்றுக்கொள்வதற்கான பழமைவாத அணுகுமுறையின் காரணமாக அதிகாரப்பூர்வ zlib களஞ்சியத்தில் ஏற்றுக்கொள்ளப்படாத கூடுதல் மேம்படுத்தல்களை வழங்குகிறது. கூடுதலாக, zlib அடிப்படையில் ஒரு நவீனமயமாக்கப்பட்ட API முன்மொழியப்பட்டது, ஆனால் போர்டிங்கை எளிதாக்குவதற்கு மாற்றியமைக்கப்பட்டது. திட்டக் குறியீடு C இல் எழுதப்பட்டு Zlib உரிமத்தின் கீழ் விநியோகிக்கப்படுகிறது.

x86_64 கணினிகளில் நடத்தப்பட்ட சோதனைகள் சுருக்க செயல்பாடுகளைச் செய்யும்போது, ​​Zlib-ng என்பது zlib ஐ விட தோராயமாக 4 மடங்கு வேகமாகவும், gzip ஐ விட 2.1 மடங்கு வேகமாகவும் இருக்கும் என்பதைக் காட்டுகிறது. டிகம்ப்ரஸ் செய்யும் போது, ​​Zlib-ng என்பது zlib ஐ விட 2.4 மடங்கு வேகமாகவும், gzip ஐ விட 1.8 மடங்கு வேகமாகவும் இருக்கும். முக்கியமாக திசையன் வழிமுறைகள் SSE*, AVX2, VSX மற்றும் Neon ஆகியவற்றின் பயன்பாட்டினால் சுருக்க/டிகம்ப்ரஷன் செயல்திறனில் குறிப்பிடத்தக்க அதிகரிப்பு அடையப்பட்டது.

SSSE32, AVX3, Neon மற்றும் VSX வழிமுறைகளைப் பயன்படுத்தி மேம்படுத்தப்பட்ட Adler2 செக்சம் அல்காரிதத்தின் கூடுதல் செயலாக்கம், PCLMULQDQ மற்றும் ACLE அடிப்படையிலான CRC32-B செயல்படுத்தல், மேம்படுத்தப்பட்ட ஹாஷ் அட்டவணைகள், SSE2, AVX2, நியான் மற்றும் VSari அடிப்படையிலான செயல்பாடுகளின் அடிப்படையில் ஸ்லைடு ஹாஷ் செயல்படுத்தல் ஆகியவை அடங்கும். SSE4.2 மற்றும் AVX2 இல். இன்டெல் மற்றும் கிளவுட்ஃப்ளேரின் ஃபோர்க்குகளில் பயன்படுத்தப்படும் செயல்திறனை மேம்படுத்துவதை நோக்கமாகக் கொண்ட மாற்றங்களும் கலவையில் அடங்கும். இடையகங்களுடன் பணிபுரியும் செயல்முறை உகந்ததாக உள்ளது. CMake மற்றும் NMake உருவாக்க அமைப்புகளுக்கான ஆதரவு சேர்க்கப்பட்டது. சோதனைக்கு தொடர்ச்சியான ஒருங்கிணைப்பு அமைப்புகள் பயன்படுத்தப்படுகின்றன.

மேம்படுத்தல்களுக்கு கூடுதலாக, Zlib-ng விநியோக தொகுப்புகளில் குவிந்துள்ள இணைப்புகளையும் உள்ளடக்கியது மற்றும் பழைய கம்பைலர்கள் மற்றும் இயங்குதளங்களை ஆதரிக்க zlib இல் பயன்படுத்தப்படும் பணிச்சூழலிலிருந்து குறியீட்டை சுத்தப்படுத்துகிறது, ஆனால் இது மிகவும் திறமையான முறைகளை செயல்படுத்துவதைத் தடுக்கிறது (எடுத்துக்காட்டாக, ஆதரிக்கத் தேவையான கட்டுப்பாடுகள் 16-பிட் அமைப்புகள் மற்றும் ANSI அல்லாத C கம்பைலர்கள்). நிலையான பகுப்பாய்விகள், தெளிவற்ற சோதனை அமைப்புகள் மற்றும் நினைவகத்துடன் பணிபுரியும் போது சிக்கல்களைக் கண்டறிவதற்கான கருவிகள் (அட்ரஸ் சானிடைசர் மற்றும் மெமரி சானிடைசர்) மூலம் கண்டறியப்பட்ட பிழைகளைக் கண்டறிந்து சரிசெய்யும் பணி மேற்கொள்ளப்பட்டுள்ளது.

ஆதாரம்: opennet.ru

கருத்தைச் சேர்