DeepMind ya fitar da lambar tushe don S6, mai tarawa JIT don Python

S6-zurfin tunani

S6, ɗakin karatu ne na JIT mai tarawa don CPython

zurfin tunani, wanda aka sani da ci gabansa a fagen fasaha na wucin gadi, kwanan nan ya sanar da cewa ya yanke shawarar sakin lambar tushe na aikin S6, wanda shi ne ya ɓullo da shi daga JIT compiler don harshen Python.

Aikin yana da ban sha'awa saboda an tsara shi azaman ɗakin karatu mai tsawo wanda za a iya haɗawa tare da daidaitattun CPython, wanda yana ba da cikakkiyar dacewa ta CPython kuma baya buƙatar gyarawa na lambar fassarar. Tun shekarar 2019 ake ci gaba da gudanar da aikin, amma abin takaici ya ci tura, kuma ba a ci gaba ba.

S6 wani aiki ne da aka fara a cikin DeepMind a cikin 2019 don haɓaka CPython tare da haɗa-in-lokaci ("JIT"). Za a samar da waɗannan ayyuka azaman ɗakin karatu na Python na yau da kullun kuma ba za a buƙaci canje-canje ga mai fassarar CPython ba. S6 yayi niyyar yi don Python abin da V8 yayi don Javascript (sunan girmamawa ga V8). Aikin ya dogara ne akan sigar CPython 3.7. Dangane da nauyin aiki, mun ga saurin gudu har zuwa 9.5x a cikin ma'auni na gama gari.

Babban dalilin da ya sa aka yanke shawarar fitar da lambar tushe, ɗaya daga cikinsu kuma kamar yadda aka ambata a baya shi ne cewa aikin ya daina samun tallafi, wani babban dalilin kuma an ba da shi cewa dangane da abubuwan da aka haifar, waɗannan har yanzu suna iya amfani da su don inganta python. .

Mun daina aiki akan S6 a ciki. Don haka, an adana wannan ma'ajiyar bayanai kuma ba ma karɓar buƙatun ja ko batutuwa. Mun buɗe tushen kuma mun ba da bayanin ƙira a ƙasa don tada tattaunawa a cikin al'ummar Python da zaburar da aikin gaba don inganta Python.

Game da aikin S6, ya kamata mu ambaci hakan S6 na Python ya kwatanta da injin V8 don JavaScript dangane da ayyukan da yake warwarewa. Laburaren yana maye gurbin direban mai fassarar bytecode na ceval.c tare da aiwatar da kansa wanda ke amfani da harhada JIT don hanzarta aiwatar da aiwatarwa.

S6 yana bincika idan an riga an haɗa aikin na yanzu kuma, idan haka ne, yana aiwatar da lambar da aka haɗa, kuma idan ba haka ba, yana aiwatar da aikin a cikin yanayin fassarar bytecode mai kama da mai fassarar CPython. Fassarar tana ƙididdige adadin maganganun da aka aiwatar da kuma kira masu alaƙa da aikin da ake sarrafa.

Bayan kai wani mataki mai mahimmanci, ana fara aikin ginin don hanzarta lambar wanda ke gudana akai-akai. Ana yin tari akan wakilcin matsakaicin ƙarfijit, wanda, bayan haɓakawa, ana jujjuya shi zuwa umarnin na'ura mai niyya ta amfani da ɗakin karatu na asmjit.

Dangane da yanayin nauyin kaya, a ƙarƙashin yanayi mafi kyau, S6 yana nuna karuwa a cikin saurin aiwatar da gwajin har zuwa 9,5x idan aka kwatanta da CPython na yau da kullum.

Lokacin da aka aiwatar da maimaitawa 100 daga dakin gwajin Richards, akwai hanzari na sau 7, kuma lokacin gudanar da gwajin Raytrace, wanda ya ƙunshi lissafi da yawa, yana da sauri sau 3 zuwa 4,5.

Ayyukan da suke da wahalar ingantawa da S6 su ne ayyukan da ke amfani da C API, kamar NumPy, da kuma ayyuka masu alaƙa da buƙatar bincika nau'ikan adadi mai yawa.

Hakanan ana ganin ƙarancin aiki don kiran ayyuka guda ɗaya wanda ke cinye albarkatu masu yawa saboda amfani da rashin ingantaccen aiwatar da fassarar S6 Python (ci gaban bai kai matakin inganta yanayin fassarar ba).

Misali, a cikin gwajin jerin abubuwan Unpack, wanda ke fitar da manyan jeri na arrays/tuples, kira guda yana nuna raguwar har zuwa sau 5, kuma kiran cyclic yana samun 0,97 daga CPython.

Finalmente ga masu sha'awar ƙarin sani game da shi, Ya kamata ku sani cewa an rubuta lambar mai tarawa JIT a cikin C ++ kuma a halin yanzu yana dogara ne akan CPython 3.7, ban da gaskiyar cewa lambar tushe ta riga ta buɗe ƙarƙashin lasisin Apache 2.0 kuma ana iya tuntuɓar ta. daga mahaɗin da ke ƙasa.


Kasance na farko don yin sharhi

Bar tsokaci

Your email address ba za a buga. Bukata filayen suna alama da *

*

*

  1. Wanda ke da alhakin bayanan: Miguel Ángel Gatón
  2. Manufar bayanan: Sarrafa SPAM, sarrafa sharhi.
  3. Halacci: Yarda da yarda
  4. Sadarwar bayanan: Ba za a sanar da wasu bayanan ga wasu kamfanoni ba sai ta hanyar wajibcin doka.
  5. Ajiye bayanai: Bayanin yanar gizo wanda Occentus Networks (EU) suka dauki nauyi
  6. Hakkoki: A kowane lokaci zaka iyakance, dawo da share bayanan ka.