Mae'r prosiect PyXL yn datblygu prosesydd ar gyfer gweithredu cod beit Python

Cyflwynir prosesydd PyXL arbenigol, wedi'i gynllunio i gyflymu gweithrediad cod Python. Mae cod beit Python yn cael ei weithredu'n uniongyrchol gan y sglodion heb JIT, dehongli, na pheiriannau rhithwir. Yn gyntaf, caiff ffeiliau Python eu cyfieithu i god beit CPython, sydd wedyn yn cael ei drawsnewid yn set arbenigol o gyfarwyddiadau PySM sy'n cael eu gweithredu gan y sglodion. Mae'r pecyn cymorth ar gyfer paratoi cod i'w weithredu wedi'i ysgrifennu yn Python ac mae'n rhedeg mewn amgylchedd safonol yn seiliedig ar CPython heb ei addasu. Datblygwyd y gweithrediad prosesydd o'r dechrau a'i ysgrifennu yn iaith disgrifio a modelu systemau electronig Verilog. Mae prototeip gweithredol o'r prosesydd yn cael ei brofi ar fyrddau gyda'r Zynq-7000 FPGA.

Mewn profion a gynhaliwyd i werthuso cyflymder prosesu digwyddiadau GPIO, mae PyXL yn perfformio'n well na'r ateb sy'n seiliedig ar MicroPython a'r Pyboard o 30 gwaith. Wrth redeg y cod prawf gan ddefnyddio'r gweithrediad PyXL yn rhedeg ar 100 MHz, roedd yr hwyrni prosesu ceisiadau GPIO (Roundtrip Latency) yn 480 ns, tra wrth ddefnyddio'r MicroPython Pyboard (168 MHz) roedd yn 14741 ns. Disgwylir i gynyddu cyflymder cloc PyXL i lefel Pyboard gynyddu'r bwlch hyd at 50x.

Wrth weithio gyda GPIO ar MicroPython gan ddefnyddio'r PyBoard, mae cod Python yn rhyngweithio Γ’ chofrestri caledwedd trwy swyddogaethau C canolradd, tra bod y cod Python ei hun yn cael ei weithredu yn peiriant rhithwirYn PyXL, mae cod beit Python yn cael ei weithredu'n uniongyrchol gan y prosesydd, a chyflawnir mynediad GPIO heb haenau ychwanegol na galwadau allanol. Mae pensaernΓ―aeth PyXL yn defnyddio prosesu piblinell a model storio a phrosesu data sy'n seiliedig ar bentwr. Mae'r platfform yn cadw teipio deinamig Python ac nid yw'n gosod unrhyw gyfyngiadau ar fathau o newidynnau.

Yn y cyfnod datblygu presennol, mae'r prosiect ar gam prototeip gweithredol, sy'n cefnogi is-set gyfyngedig o iaith Python ac sydd Γ’'r nod o ddangos y posibilrwydd o weithredu cod Python yn effeithlon ar galedwedd. Bwriedir ehangu ymhellach y swyddogaeth gan ystyried anghenion gwirioneddol yr awdur, sy'n canolbwyntio'n bennaf ar gymhwyso systemau mewnosodedig a phrosesu gwybodaeth mewn amser real.

Mae pensaernΓ―aeth set gyfarwyddiadau PyXL wedi'i chynllunio gyda llygad ar strwythur cod beit CPython a'i brosesu effeithlon mewn caledwedd, gan ystyried manylion penodol fel trin math deinamig ac anfon deinamig. Mae'r ISA yn cynnwys cyfarwyddiadau ar gyfer trin pentwr, gweithrediadau deuaidd, gweithrediadau cymharu a changhennu, galw swyddogaethau, a galluoedd mynediad cof.

Bydd manylion technegol gweithrediad prosiect PyZX yn cael eu cyflwyno ar 17 Mai yng nghynhadledd PyCon 2025. Mae'r posibilrwydd o agor datblygiadau'r prosiect a chreu sglodion ASIC hunangynhaliol yn cael ei ystyried, ond nid oes penderfyniad terfynol ar y materion hyn wedi'i wneud eto. Mae'r prosiect yn cael ei ddatblygu gan Ron Livne, sy'n arbenigo mewn optimeiddio perfformiad a datblygu cyflymyddion caledwedd.



Ffynhonnell: opennet.ru
Prynu gwesteio dibynadwy ar gyfer gwefannau sydd Γ’ diogelwch DDoS, gweinyddwyr VPS VDS πŸ”₯ Prynu cynnal gwefannau dibynadwy gyda diogelwch DDoS, gweinyddion VPS VDS | ProHoster