പൈസ്റ്റൺ 2 ഒരു ജെ‌ഐ‌ടി കംപൈലറുമൊത്തുള്ള പൈത്തൺ നടപ്പിലാക്കൽ

വികസനത്തിൽ മൂന്ന് വർഷത്തെ ഇടവേളയ്ക്ക് ശേഷം, പൈസ്റ്റൺ 2 പ്രോജക്റ്റിന്റെ സമാരംഭം പ്രസിദ്ധീകരിച്ചു, ഞാൻ എന്താണ് വികസിപ്പിച്ചത്?പൈത്തൺ ഭാഷയുടെ ഉയർന്ന പ്രകടനത്തോടെ എൽ‌എൽ‌വി‌എം പദ്ധതിയുടെ സംഭവവികാസങ്ങൾ ഉപയോഗിച്ച്.

നടപ്പിലാക്കൽ ആധുനിക ജെ‌ഐ‌ടി സമാഹരണ സാങ്കേതികവിദ്യകളുടെ ഉപയോഗത്തിനായി വേറിട്ടുനിൽക്കുന്നു കൂടാതെ സി ++ പോലുള്ള പരമ്പരാഗത സിസ്റ്റം ഭാഷകൾക്ക് സമാനമായ ഉയർന്ന പ്രകടനം കൈവരിക്കാനും ലക്ഷ്യമിടുന്നു.

മുൻ പതിപ്പുകളിൽ നിന്നുള്ള കോഡ് പിസ്റ്റൺ അപ്പാച്ചെ ലൈസൻസിന് കീഴിൽ വിതരണം ചെയ്തു, എന്നാൽ പൈസ്റ്റൺ 2 കോഡ് ഇതുവരെയും ലഭ്യമല്ല, ഉബുണ്ടു 18.04, 20.04 എന്നിവയ്‌ക്കായി ഉപയോഗിക്കാൻ തയ്യാറായ ബിൽഡുകൾ മാത്രമേ പുറത്തിറക്കിയിട്ടുള്ളൂ (കോഡുള്ള ഒരു ഫയൽ ഡ download ൺ‌ലോഡിനായി ലഭ്യമാണ്, പക്ഷേ പ്രോജക്റ്റ് ഇപ്പോഴും അടച്ചിരിക്കുന്നു എന്ന വിവരമുള്ള ഒരു സ്റ്റബ് മാത്രമേയുള്ളൂ).

കോഡ് പ്രസിദ്ധീകരിക്കുന്നത് ഡവലപ്പർമാരുടെ പദ്ധതികളുടെ ഭാഗമാണ്എന്നാൽ ഇത് ചെയ്യും ബിസിനസ്സ് മോഡൽ രൂപീകരണം പൂർത്തിയായ ശേഷം ഡ്രോപ്പ്ബോക്സിന്റെ സാമ്പത്തിക സഹായമില്ലാതെ പൈസ്റ്റൺ വികസിപ്പിക്കുന്നത് തുടരാൻ തീരുമാനിച്ചു.

പൈസ്റ്റൺ 2 നെക്കുറിച്ച്

മുൻ പതിപ്പുകളിൽ നിന്ന് വ്യത്യസ്തമായി, പൈസ്റ്റൺ 2 സ്ഥിരതയുള്ളതായി അടയാളപ്പെടുത്തി ഒരു ട്രയൽ പതിപ്പായിട്ടല്ല. പ്രകടനം ഒപ്റ്റിമൈസ് ചെയ്യുന്നതിനായി വളരെയധികം ജോലികൾ ചെയ്തു, പൈത്തൺ-മാക്രോബെൻമാർക്ക് ടെസ്റ്റ് സ്യൂട്ട് കടന്നുപോകുമ്പോൾ പൈസ്റ്റൺ 2 യഥാർത്ഥ പൈത്തൺ 3.8 നെക്കാൾ 20% വേഗത്തിലാണ്.

അന്തർലീനമായ വെബ് ആപ്ലിക്കേഷൻ വർക്ക്ലോഡുകളിൽ ഏറ്റവും ശ്രദ്ധേയമായ പ്രകടന നേട്ടങ്ങൾ കാണാം. Chaos.py, nbody.py എന്നിവപോലുള്ള പ്രത്യേക പരിശോധനകളിൽ, പൈസ്റ്റൺ 2 നെ പൈത്തൺ 3.8 നെ മറികടക്കുന്നു. JIT ഉപയോഗിക്കുന്നതിനുള്ള ചെലവ് മെമ്മറി ഉപഭോഗത്തിൽ നേരിയ വർധനവാണ്.

പൈത്തൺ പ്രോഗ്രാമിംഗ് ഭാഷയുടെ വേഗതയേറിയതും വളരെ അനുയോജ്യവുമായ നടപ്പാക്കലായ പൈസ്റ്റൺ വി 2 പുറത്തിറക്കുന്നതിൽ ഞങ്ങൾ വളരെ ആവേശത്തിലാണ്. ഞങ്ങളുടെ മാക്രോബെൻമാർക്കുകളിലെ സാധാരണ പൈത്തൺ 2 നേക്കാൾ 20% വേഗതയുള്ളതാണ് പതിപ്പ് 3.8. കൂടുതൽ പ്രധാനമായി, ഇത് നിങ്ങളുടെ കോഡിൽ വേഗതയുള്ളതാണ്. സെർവർ ചെലവ് കുറയ്ക്കാനും ഉപയോക്തൃ ലേറ്റൻസികൾ കുറയ്ക്കാനും ഡവലപ്പർ ഉൽ‌പാദനക്ഷമത മെച്ചപ്പെടുത്താനും പൈസ്റ്റൺ വി 2 ന് കഴിയും.

പൈസ്റ്റൺ വി 2 നടപ്പിലാക്കാൻ എളുപ്പമാണ്, അതിനാൽ നിങ്ങൾ മികച്ച പൈത്തൺ പ്രകടനത്തിനായി തിരയുകയാണെങ്കിൽ, അഞ്ച് മിനിറ്റ് എടുത്ത് പൈസ്റ്റൺ പരീക്ഷിച്ചുനോക്കാൻ ഞങ്ങൾ ശുപാർശ ചെയ്യുന്നു. അങ്ങനെ ചെയ്യുന്നത് നിങ്ങളുടെ പ്രോജക്റ്റ് വേഗത്തിലാക്കാനുള്ള എളുപ്പവഴിയാണ്.

അനുയോജ്യതയുടെ കാര്യത്തിൽ പൈസ്റ്റൺ പ്രോജക്റ്റ്, നേറ്റീവ് പൈത്തൺ CPython- നുള്ള ഏറ്റവും അനുയോജ്യമായ ബദൽ നടപ്പാക്കലായി കണക്കാക്കപ്പെടുന്നു, പൈസ്റ്റൺ പ്രധാന സിപൈത്തൺ കോഡ്ബേസിന്റെ ഒരു നാൽക്കവലയായതിനാൽ.

പിസ്റ്റൺ എല്ലാ സിപൈത്തൺ ഫംഗ്ഷനുകളും പിന്തുണയ്ക്കുന്നു, സി എക്സ്റ്റെൻഷനുകൾ വികസിപ്പിക്കുന്നതിനുള്ള സി എപിഐ ഉൾപ്പെടെ. പിസ്റ്റൺ ആദ്യം വികസിപ്പിച്ചെടുത്തത് ഡ്രോപ്പ്ബോക്സ് ആണ്, ഇത് 2017 ൽ ആന്തരിക വികസനം നിർത്താൻ തീരുമാനിച്ചു. 2020 ന്റെ തുടക്കത്തിൽ, പൈസ്റ്റണിലെ മുൻനിര ഡവലപ്പർമാർ അവരുടെ കമ്പനി സ്ഥാപിക്കുകയും പദ്ധതി പൂർണ്ണമായും പുനർനിർമ്മിക്കുകയും പൈസ്റ്റണിൽ മുഴുവൻ സമയ ജോലി ചെയ്യാൻ ആരംഭിക്കുകയും ചെയ്തു.

പൈസ്റ്റൺ 2 പാഡിംഗിനെക്കുറിച്ചുള്ള സാങ്കേതിക വിശദാംശങ്ങൾ ഇതുവരെ നൽകിയിട്ടില്ല, DynASM JIT, ഇൻ‌ലൈൻ കാഷിംഗ്, പൊതുവായ CPython ഒപ്റ്റിമൈസേഷനുകൾ എന്നിവ മാത്രമേ പരാമർശിച്ചിട്ടുള്ളൂ. ആധുനിക ജാവാസ്ക്രിപ്റ്റ് എഞ്ചിനുകളിൽ ജെ‌ഐ‌ടിക്ക് സമാനമായ ഒരു രീതി ജെ‌ടി ഒരു സമയം പൈസ്റ്റണിന്റെ മുമ്പത്തെ പതിപ്പ് ഉപയോഗിച്ചു.

ജെ‌ഐ‌ടിയിൽ, പൈത്തൺ കോഡ് പാഴ്‌സുചെയ്‌ത് വിവർത്തനം ചെയ്‌തു ഒരു ഇന്റർമീഡിയറ്റ് പ്രാതിനിധ്യത്തിലേക്ക് LLVM (IR, ഇന്റർമീഡിയറ്റ് പ്രാതിനിധ്യം). കൂടാതെ, ഐ‌ആർ‌ പ്രാതിനിധ്യം എൽ‌എൽ‌വി‌എം ഒപ്റ്റിമൈസറിൽ‌ പ്രോസസ്സ് ചെയ്യുകയും എക്സിക്യൂഷനായി എൽ‌എൽ‌വി‌എം ജെ‌ഐ‌ടി എഞ്ചിനിലേക്ക് കൈമാറുകയും ചെയ്തു, ഇത് ഐ‌ആർ‌ പ്രാതിനിധ്യത്തെ മെഷീൻ കോഡാക്കി മാറ്റി.

ഡൈനാമിക് പൈത്തൺ ഭാഷയിലെ പ്രോഗ്രാമുകൾക്കായുള്ള വേരിയബിളുകളുടെ വിവരങ്ങൾ നേടുന്നതിന്, ഒബ്ജക്റ്റ് തരങ്ങളുടെ പ്രോബബിലിസ്റ്റിക് പ്രവചനത്തിന്റെ സാങ്കേതികത ഉപയോഗിച്ചു, തുടർന്ന് എക്സിക്യൂഷൻ സമയത്ത് ശരിയായ തരം തിരഞ്ഞെടുപ്പ് വ്യക്തമാക്കുന്നു.

അതിനാൽ, രണ്ട് ബ്രാഞ്ചുകൾക്കിടയിലുള്ള നിർവ്വഹണത്തെ പൈസ്റ്റൺ നിരന്തരം വ്യത്യാസപ്പെടുത്തി: വേഗത, പ്രവചിച്ച നിരക്കുകൾ സ്ഥിരീകരിക്കുമ്പോൾ വേഗത, ഒരു തരം പൊരുത്തക്കേടിന്റെ കാര്യത്തിൽ ഉപയോഗിക്കുന്ന വേഗത.

മൾട്ടി ത്രെഡ് മോഡിൽ ജോലി ചെയ്യാൻ കഴിയും, പൈത്തൺ ഭാഷയിൽ‌ നിരവധി കോഡ് ത്രെഡുകൾ‌ സമാന്തരമായി നടപ്പിലാക്കാൻ‌ അനുവദിക്കുകയും ആഗോള ഇന്റർ‌പ്രെറ്റർ‌ ലോക്ക് (ജി‌എൽ‌) സ free ജന്യമാക്കുകയും ചെയ്യുന്നു.

അന്തിമമായി നിങ്ങൾക്ക് ഇതിനെക്കുറിച്ച് കൂടുതലറിയണമെങ്കിൽ, നിങ്ങൾക്ക് വിശദാംശങ്ങൾ പരിശോധിക്കാൻ കഴിയും ഇനിപ്പറയുന്ന ലിങ്ക്.


ലേഖനത്തിന്റെ ഉള്ളടക്കം ഞങ്ങളുടെ തത്ത്വങ്ങൾ പാലിക്കുന്നു എഡിറ്റോറിയൽ എത്തിക്സ്. ഒരു പിശക് റിപ്പോർട്ടുചെയ്യാൻ ക്ലിക്കുചെയ്യുക ഇവിടെ.

അഭിപ്രായമിടുന്ന ആദ്യയാളാകൂ

നിങ്ങളുടെ അഭിപ്രായം ഇടുക

നിങ്ങളുടെ ഇമെയിൽ വിലാസം പ്രസിദ്ധീകരിച്ചു ചെയ്യില്ല.

*

*

  1. ഡാറ്റയുടെ ഉത്തരവാദിത്തം: മിഗുവൽ ഏഞ്ചൽ ഗാറ്റൻ
  2. ഡാറ്റയുടെ ഉദ്ദേശ്യം: സ്പാം നിയന്ത്രിക്കുക, അഭിപ്രായ മാനേജുമെന്റ്.
  3. നിയമസാധുത: നിങ്ങളുടെ സമ്മതം
  4. ഡാറ്റയുടെ ആശയവിനിമയം: നിയമപരമായ ബാധ്യതയല്ലാതെ ഡാറ്റ മൂന്നാം കക്ഷികളുമായി ആശയവിനിമയം നടത്തുകയില്ല.
  5. ഡാറ്റ സംഭരണം: ഒസെന്റസ് നെറ്റ്‌വർക്കുകൾ (ഇയു) ഹോസ്റ്റുചെയ്യുന്ന ഡാറ്റാബേസ്
  6. അവകാശങ്ങൾ: ഏത് സമയത്തും നിങ്ങളുടെ വിവരങ്ങൾ പരിമിതപ്പെടുത്താനും വീണ്ടെടുക്കാനും ഇല്ലാതാക്കാനും കഴിയും.