දේශීය පයිතන් සඳහා JIT සම්පාදකයක් වන Pyston-lite හඳුන්වා දෙන ලදී

Python ව්‍යාපෘතියේ සංවර්ධකයින්, නවීන JIT සම්පාදන තාක්ෂණය භාවිතා කරමින් Python භාෂාවේ ඉහළ කාර්ය සාධනයක් ක්‍රියාත්මක කිරීමක් ලබා දෙන අතර, CPython සඳහා JIT සම්පාදකය ක්‍රියාත්මක කිරීමත් සමඟ Pyston-lite දිගුව ඉදිරිපත් කරන ලදී. Pyston යනු CPython codebase හි ශාඛාවක් වන අතර එය වෙන වෙනම සංවර්ධනය කර ඇති අතර, Pyston-lite නිර්මාණය කර ඇත්තේ සම්මත පයිතන් පරිවර්තකය (CPython) වෙත සම්බන්ධ කිරීම සඳහා නිර්මාණය කර ඇති විශ්වීය දිගුවක් ලෙසය.

PIP හෝ Conda පැකේජ කළමනාකරු භාවිතයෙන් අතිරේක දිගුවක් ස්ථාපනය කිරීමෙන් පරිවර්තකය වෙනස් නොකර මූලික Pyston තාක්ෂණයන් භාවිතා කිරීමට Pyston-lite ඔබට ඉඩ සලසයි. PyPI සහ Conda ගබඩාවල Pyston-lite දැනටමත් සත්කාරකත්වය ලබා දී ඇති අතර එය ස්ථාපනය කිරීමට, "pip install pyston_lite_autoload" හෝ "conda install pyston_lite_autoload -c pyston" විධානය ක්‍රියාත්මක කරන්න. පැකේජ දෙකක් පිරිනමනු ලැබේ: pyston_lite (සෘජුවම JIT) සහ pyston_lite_autoload (Python ක්‍රියාවලිය ආරම්භ වන විට ස්වයංක්‍රීය JIT ආදේශනය සිදු කරයි). pyston_lite.enable() ශ්‍රිතය භාවිතයෙන් ස්වයංක්‍රීය පූරණ මොඩියුලය ස්ථාපනය නොකර යෙදුමෙන් JIT ඇතුළත් කිරීම ක්‍රමලේඛනාත්මකව පාලනය කිරීමට ද හැකිය.

Pyston-lite Pyston හි ඇති සියලුම ප්‍රශස්තිකරණයන් ආවරණය නොකළද, එහි භාවිතය සාමාන්‍ය Python 10 හා ​​සසඳන විට 25-3.8% කින් කාර්ය සාධනය වැඩි දියුණු කළ හැකිය. අනාගතයේදී, Pyston හි ඇති බොහෝ ප්‍රශස්තිකරණයන් Pyston-lite වෙත මාරු කිරීමටත්, CPython හි සහය දක්වන අනුවාද පුළුල් කිරීමටත් සැලසුම් කර ඇත (පළමු නිකුතුව Python 3.8 සඳහා පමණක් සහය දක්වයි). Python හි වැඩකටයුතු වඩාත් සම්පූර්ණ පාලනයට ඉඩ සලසමින් JIT සඳහා නව API ක්‍රියාත්මක කිරීම සඳහා CPython කණ්ඩායම සමඟ සහයෝගීතාවය තවත් ගෝලීය සැලසුම්වලට ඇතුළත් වේ. Python 3.12 ශාඛාවේ යෝජිත වෙනස්කම් ඇතුළත් කිරීම පිළිබඳව සාකච්ඡා කෙරෙමින් පවතී. ඉතා මැනවින්, Pyston වෙතින් සියලුම ක්‍රියාකාරීත්වය දිගුව වෙත ගෙන යාමේ හැකියාව සලකා බලනු ලැබේ, එමඟින් අපගේම CPython දෙබලක නඩත්තු කිරීම වළක්වා ගත හැකිය.

Pyston-lite වලට අමතරව, මෙම ව්‍යාපෘතිය නව ප්‍රශස්තිකරණයන් ලබා දෙන සම්පූර්ණ Pyston 2.3.4 පැකේජයට යාවත්කාලීන කිරීමක් ද නිකුත් කළේය. pyperformance පරීක්ෂණයේදී, 2.3.4 අනුවාදය 2.3.3 නිකුත් කිරීමට වඩා 6% කින් පමණ වේගවත් වේ. CPython හා සසඳන විට සමස්ත කාර්ය සාධන ලාභය 66% ලෙස ගණන් බලා ඇත.

මීට අමතරව, ප්‍රධාන ව්‍යාපෘතියේ CPython 3.11 සංවර්ධන චක්‍රය තුළ වර්ධනය වූ ප්‍රශස්තිකරණයන් අපට සටහන් කළ හැකිය, සමහර පරීක්ෂණ වලදී කාර්ය සාධනය 25% කින් වැඩි කිරීමට හැකි විය. උදාහරණයක් ලෙස, CPython 3.11 හි, මූලික මොඩියුලවල බයිට්කේත තත්ත්වය හැඹිලිගත කිරීමේ කාර්යක්ෂමතාව වැඩි කර ඇති අතර, එය ස්ක්‍රිප්ට් දියත් කිරීම 10-15% කින් වේගවත් කරයි. ක්රියාකාරී ඇමතුම් සැලකිය යුතු ලෙස වේගවත් කර ඇති අතර සම්මත මෙහෙයුම් සඳහා විශේෂිත වේගවත් පරිවර්තකයන් එකතු කර ඇත. Cinder සහ HotPy ව්‍යාපෘති මගින් සකස් කරන ලද සමහර ප්‍රශස්තිකරණයන් වරායට ගෙන ඒමේ කටයුතු ද සිදු වෙමින් පවතී.

මීට අමතරව, nogil ව්‍යාපෘතිය තුළ, ගෝලීය පරිවර්තක අගුලක් (GIL, Global Interpreter Lock) නොමැතිව CPython තැනීම සඳහා පර්යේෂණාත්මක මාදිලියක වැඩ කටයුතු සිදු වෙමින් පවතී, එමඟින් විවිධ නූල්වලින් බෙදාගත් වස්තූන් වෙත සමාන්තර ප්‍රවේශයක් ලබා නොදේ, එමඟින් බහු මත මෙහෙයුම් සමාන්තරකරණය වීම වළක්වයි. - මූලික පද්ධති. GIL ගැටලුවට තවත් විසඳුමක් ලෙස, ක්‍රියාවලියක් තුළ ක්‍රියාත්මක වන සෑම පරිවර්තකයෙකුටම වෙනම GIL බැඳීමේ හැකියාව වර්ධනය වෙමින් පවතී (එක් ක්‍රියාවලියක පරිවර්තක කිහිපයක් ක්‍රියාත්මක විය හැක, නමුත් ඔවුන්ගේ සමාන්තර ක්‍රියාත්මක කිරීමේ කාර්යක්ෂමතාව GIL මත රඳා පවතී).

මූලාශ්රය: opennet.ru

අදහස් එක් කරන්න