DeepMind waxay sii daysay koodhka isha ee S6, isku-duwaha JIT ee Python

S6-maskaxeed

S6, waa maktabad isku-dubarid gooni ah oo JIT ah oo loogu talagalay CPython

qoto dheer, caan ku ah horumarkeeda dhinaca sirdoonka macmalka ah, ayaa dhawaan lagu dhawaaqay in wuxuu qaatay go'aan ah inuu sii daayo code isha mashruuca S6, kaas oo uu ka soo saaray ururiyaha JIT ee luqadda Python.

Mashruucu waa mid xiiso leh maxaa yeelay, waxaa loo qaabeeyey sidii maktabad fidineed kaas oo lagu dhex dari karo caadiga ah CPython, kaas oo waxay siisaa waafaqid buuxda CPython umana baahna wax ka beddel ee xeerka turjubaanka. Mashruucu waxa uu socday ilaa 2019-kii, balse nasiib darro dib ayaa loo dhigay oo hadda kuma jiro horumar.

S6 wuxuu ahaa mashruuc laga bilaabay gudaha DeepMind sanadka 2019 si loo dardar geliyo CPython iyadoo la isku soo dubariday isla waqtiga ("JIT"). Hawlahan waxaa loo bixin doonaa sidii maktabadda Python oo kale oo wax isbeddel ah oo lagu sameeyo turjumaanka CPython looma baahna. S6 waxa loogu tala galay in uu u sameeyo Python waxa V8 u samaysay Javascript (magaca waxa sharaf u ah V8). Shaqadu waxay ku salaysnayd nooca CPython 3.7. Iyadoo ku xiran culeyska shaqada, waxaan aragnay xawaare gaaraya ilaa 9.5x marka la eego halbeegyada caadiga ah.

Sababta ugu weyn ee loo go'aamiyay in la sii daayo code-ka, mid ka mid ah iyo sida hore loo soo sheegay ayaa ah in mashruuca uu joojiyay taageerada, mid kale oo ka mid ah sababaha ugu muhiimsan ayaa lagu sheegay in iyada oo lagu saleynayo horumarka la abuuray, kuwaas oo weli waxtar u leh hagaajinta Python. .

Waxaan joojinay shaqada S6 gudaha. Sidan oo kale, kaydkan waa la kaydiyay mana aqbalinno codsiyada jiidashada ama arrimaha. Waxaan furnay oo aan hoos ku bixinay dulmar naqshadeed si aan u kicino wada sheekeysiga gudaha bulshada Python iyo dhiirigelinta shaqada mustaqbalka si loo horumariyo Python.

Marka laga hadlayo hawlgalka S6, waa inaan xusnaa taas S6 ee Python waxay barbardhigtaa mashiinka V8 ee JavaScript xagga hawlaha ay xalliso. Maktabadu waxay ku beddeshaa darawalka ceval.c bytecode ee turjumaanka ah iyada oo adeegsanaysa ururinta JIT si loo dedejiyo fulinta.

S6 wuxuu hubiyaa in shaqada hadda la sameeyay mar hore la soo ururiyay iyo, haddii ay sidaas tahay, waxa ay fulinaysaa koodka la soo ururiyey, haddii kale, waxa uu ku fuliyaa shaqada qaab tarjumaad bytecode ah oo la mid ah turjubaanka CPython. Fasiraaddu waxay tirisaa tirada weedhaha la fuliyay iyo wicitaannada la xidhiidha shaqada la farsamaynayo.

Ka dib marka la gaaro heerar gaar ah, habka dhisidda ayaa la bilaabay si loo dedejiyo code oo si joogto ah u shaqeeya. Isku-dubbarid waxaa lagu sameeyaa matalaadda dhexe ee xoogganjit, taas oo, ka dib hagaajinta, loo beddelo tilmaamaha mashiinka nidaamka iyadoo la adeegsanayo maktabadda asmjit.

Iyadoo ku xiran nooca culeyska, xaaladaha ugu fiican, S6 waxay muujineysaa kororka xawaaraha fulinta imtixaanka ilaa 9,5 jeer marka loo eego CPython caadiga ah.

Marka 100 ku celcelin la fuliyo oo ka yimid qolka imtixaanka Richards, waxaa jira dardargelin ah 7 jeer, iyo marka la wado imtixaanka Raytrace, oo ka kooban xisaab badan, waa 3 ilaa 4,5 jeer.

Hawlaha ay adagtahay in la hagaajiyo leh S6 waa mashaariicda isticmaala C API, sida NumPy, iyo sidoo kale hawlgallada la xidhiidha baahida loo qabo in la hubiyo noocyada tirada badan ee qiimaha.

Waxqabad liidata ayaa sidoo kale lagu arkaa wicitaanada hal-abuurka ah kuwaas oo isticmaala kheyraad badan iyadoo ay ugu wacan tahay adeegsiga hirgelinta aan la filayn ee turjubaanka S6 Python (horumarku ma uusan gaarin heerka qaab tarjumida).

Tusaale ahaan, imtixaanka isku xigxiga ee Unpack, kaas oo soo saara qaybo badan oo arrays/tuples ah, hal wicitaan ayaa muujinaya hoos u dhac ilaa 5 jeer ah, iyo wicitaanka wareeggu wuxuu ka keenayaa 0,97 CPython.

Finalmente kuwa doonaya inay wax badan ka ogaadaan, waa inaad ogaataa in koodhka kombuyuutarka JIT uu ku qoran yahay C ++ oo uu hadda ku salaysan yahay CPython 3.7, marka lagu daro xaqiiqda ah in koodhka isha uu horeyba u furan yahay shatiga Apache 2.0 oo lagala tashan karo ka soo xiriir khadkan hoose.


Noqo kuwa ugu horreeya ee faallo bixiya

Ka tag faalladaada

cinwaanka email aan la daabacin doonaa. Beeraha loo baahan yahay waxaa lagu calaamadeeyay la *

*

*

  1. Masuul ka ah xogta: Miguel Ángel Gatón
  2. Ujeedada xogta: Xakamaynta SPAM, maaraynta faallooyinka.
  3. Sharci: Oggolaanshahaaga
  4. Isgaarsiinta xogta: Xogta looma gudbin doono dhinacyada saddexaad marka laga reebo waajibaadka sharciga ah.
  5. Kaydinta xogta: Macluumaadka ay martigelisay Shabakadaha Occentus (EU)
  6. Xuquuqda: Waqti kasta oo aad xadidi karto, soo ceshan karto oo tirtiri karto macluumaadkaaga.