Bayan ƙarshen goyon baya ga Python 2.7, wani muhimmin canji shine haɗawa da
Fahimtar lambar da ke akwai ya nuna cewa yawancin lokacin lissafin an kashe shi yana kiran use_reduce da ayyukan catpkgsplit tare da saiti na muhawara (misali, ana kiran aikin catpkgsplit sau miliyan 1 zuwa 5). Don hanzarta abubuwa, an yi amfani da caching na sakamakon waɗannan ayyuka ta amfani da ƙamus. Mafi kyawun zaɓi don ajiyar cache shine aikin lru_cache da aka gina a ciki, amma yana samuwa ne kawai a cikin fitowar Python wanda ya fara da 3.2. Don dacewa da sigogin farko, an ƙara stub don maye gurbin lru_cache, amma yanke shawarar dakatar da tallafi ga Python 2.7 a cikin Portage 3.0 ya sauƙaƙa aikin sosai kuma ya ba da damar yin ba tare da wannan Layer ba.
Yin amfani da cache ya rage lokacin aiwatar da aikin "fito -uDvpU -with-bdeps=y @world" akan kwamfutar tafi-da-gidanka ta ThinkPad X220 daga mintuna 5 da sakan 20 zuwa mintuna 3 da daƙiƙa 16 (63%). Gwaje-gwaje akan wasu tsarin sun nuna haɓakar aikin aƙalla 48%.
Mai haɓakawa wanda ya shirya canjin ya kuma yi ƙoƙarin aiwatar da samfur na lambar ƙudurin dogaro a cikin C ++ ko Tsatsa, amma aikin ya yi wahala sosai saboda yana buƙatar jigilar adadi mai yawa, kuma yana da shakka cewa sakamakon zai cancanci ƙoƙarin. .
source: budenet.ru