Geri qayıt
Python 3.15 benchmark: 3.14 ilə müqayisədə kiçik artım, JIT-ın aydın yaxşılaşması
SiTech AI Team2 dəq oxu

Python 3.15 benchmark: 3.14 ilə müqayisədə kiçik artım, JIT-ın aydın yaxşılaşması

Miguel Grinberg-in qeyri-rəsm ölçməsi Python 3.15.0rc3-ü 3.10-dək versiyalarla müqayisə edir. 3.14 ilə müqayisədə sürət artımı azdır, lakin eksperimental JIT aydın sürət verir, free-threading isə çoxnaxınlı testlərdə fərqlənir.

Proqram təminatı mühəndisi Miguel Grinberg-in apardığı yeni qeyri-rəsm benchmark Python 3.15-i 3.10-dək əvvəlki versiyalarla müqayisə edir və gələcək versiyanın əvvəlkindən yalnız azca daha sürətli olduğunu aşkar edir. Ən görünən yaxşılaşma eksperimental JIT kompilyatorundadır, free-threading isə öz dəyərini çoxnaxınlı yükləmələrdə göstərir.

Benchmark parametrləri

Testlər Intel Core i5 prosesorlu Linux noutbukunda keçirildi. İki proqram istifadə olundu: fibo.py, rekursiya ilə Fibonacci ədədlərini hesablayır və bubble.py, for dövrələri ilə 10 000 təsadüfi ədədi sıralayır. Hər proqram tək naxınlı və dörd naxınlı rejimlərdə işə salındı, müddətlər isə üç işə salınmasının orta qiyməti ilə hesablanıb. Test matrisası ekosistem konteksti üçün PyPy 3.12, Node.js 26.3 və Rust 1.97-ni də əhatə edirdi, əlavə olaraq CPython 3.13 və daha yeni versiyaların JIT və free-threading build-lərini. Müəllif 3.15.0rc3 release candidate versiyasını yoxladı, 3.15-in rəsmi çıxışı isə yazın anında bir neçə gün qalıb.

Tək naxınlı nəticələr

Python 3.15 Fibonacci testini 6,94 saniyədə başa çatdırdı, 7,17 saniyə tələb edən 3.14-dən azca gec idi və 15,94 saniyə tələb edən 3.10-dan əhəmiyyətli daha yaxşı idi. Bubble sort testi oxşar şəkil göstərdi: 3.15-ə 1,97 saniyə, 3.14-ə isə 2,06 saniyə. Hər iki testdə yalnız Python 3.11 və 3.14 öz birbaşa əvvəlkilərinə nisbətən əhəmiyyətli artım verdi, bəzi buraxılışlar isə kiçik regressiya göstərdi. PyPy 3.12 yenə ən sürətli Python implementasiyası qalıb, Fibonacci testində 3.15-dən 5,54 dəfə daha sürətli idi, ümumi nəticələrdə isə Rust 77,24 dəfə fərqlə liderlik edirdi.

Python 3.15-in JIT kompilyatoru eyni versiyanın standart interpreterini Fibonacci üzərində 1,20 dəfə, bubble sort üzərində isə 1,28 dəfə üstün gəldi. Bu, ilk illərin nəticələrinin əksidir, o vaxt JIT standart build-i üstün gəlmirdi. free-threading build-ləri tək naxınlı işdə təxminən standart interpreter səviyyəsində işləyirdi.

Çoxnaxınlı nəticələr

Dörd naxınla standart interpreter demək olar ki dəyişmir, çünki GIL həqiqi paralel icrasına mane olur. Python 3.15-in free-threading build-i Fibonacci testini standart interpreterə nisbətən təxminən 4,5 dəfə daha sürətli keçdi, bu 3.14-ün göstəricisinə oxşardır, bubble sort üzərində də daha sürətli idi. JIT build-i çox naxınlı vaxt da standart interpreterə nisbətən oxşar üstünlüyü saxladı, müəllifin qeydinə görə bu 3.15-də yenidir.

Nəticələr

Müəllif Python 3.15-i 3.14 ilə müqayisədə kifayət qədər əhəmiyyətsiz performans yaxşılaşması hesab edir, bəzi testlər isə kiçik regressiya göstərir. Yalnız aydın üstünlük JIT-dədir, hələ də eksperimentaldır və istehsal üçün tövsiyə olunmur. Müəllif planlaşdırır ki, istehsal layihələri hələ 3.14-də qalsın, 3.15 isə JavaScript-a oxşar comprehensions genişlənməsi və lazy imports kimi yeni imkanlar üçün gündəlik interpreter kimi istifadə olunsun.

Mənbələr: blog.miguelgrinberg.com

SSiTech

SiTech — AI ilə gücləndirilmiş veb hazırlanması

Sürətli və müasir saytlar qurur, AI-ı real biznes proseslərinə gətiririk. Layihəniz və ya sualınız var? Kömək etməyə hazırıq.