TeamQuest Blog

Python dwa razy szybszy

Python dwa razy szybszy

Marcin Sarna , 18.05.2021 r.

Przynajmniej tak chce twórca tego języka.

Za wolny na wyjście poza data learning?

Guido van Rossum, który 30 lat temu stworzył język programowania Python, nakreślił właśnie swoje ambicje. Chce uczynić go dwa razy szybszym – a więc zająć się kluczową słabością Pythona w porównaniu z takimi językami jak C++. Szybkość w Core Python (CPython) jest jednym z powodów, dla których pojawiły się inne implementacje, takie jak Pyston. Jest więc to też gra o zachowanie jedności języka.

Niedostateczna dla niektórych wydajność częściowo wyjaśnia, dlaczego Python znajdował zastosowanie głównie w nauce o danych i uczeniu maszynowym. Tam wiele obciążeń jest przekazywanych do procesorów graficznych. Innym powodem wzrostu jego popularności w tych dziedzinach jest bogactwo specyficznych bibliotek, od NumPy do wspieranej przez Google platformy uczenia maszynowego TensorFlow.

Nie wytrzymał długo na emeryturze

W ramach US PyCon Language Summit van Rossum opublikował na GitHubie dokument, w którym szczegółowo opisał niektóre z jego ambicji uczynienia Pythona językiem szybszym niż do tej pory. Obiecał w nim właśnie podwojenie szybkości w Pythonie 3.11 - jednej z trzech gałęzi Pythona, które pojawią się w przyszłym roku w wersji pre-alpha.

Twórca Pythona został zatrudniony w listopadzie przez Microsoft co spowodowało, że wrócił z emerytury na której przebywał po pracy w Dropbox, gdzie z kolei pomagał zmagać się z czterema milionami wierszy kodu Pythona używanymi przez tą firmę. Mówi, że znudził się siedząc na emeryturze w domu i złożył CV do Microsoftu. Obecnie zajmuje tam pozycję inżyniera. Otrzymał swobodę wyboru projektu i dodaje, że wybrał powrót do swoich korzeni.

Wszyscy ludzie Pythona

Microsoft na wiele sposobów postawił na Pythona, w tym oferując bezpłatne kursy tego języka, który służy jako podstawa dla usług sztucznej inteligencji w chmurze na platformie Azure czy wsparcie za pośrednictwem rozszerzenia VS Code Python oraz Python w systemie Windows 10. Gigant z Redmond jest także od 2006 roku sponsorem Python Software Foundation (PSF). Według van Rossuma Microsoft sfinansował wreszcie mały zespół, który zajął się poprawą wydajności tego języka interpretowanego.

Microsoft ma obecnie pięciu głównych programistów, którzy przyczyniają się do rozwoju CPython. Są to Brett Cannon, Steve Dower, Guido van Rossum, Eric Snow i Barry Warsaw – sami weterani w rdzennej społeczności programistów Pythona. Snow pracował nad wydajnością wielowątkową w Pythonie za pośrednictwem subinterpretatorów. Dower udziela się jako menedżer kompilacji i jest ekspertem w zakresie CPython dla systemu Windows od wydania 3.5. Warsaw ma swój wkład w Python Steering Council, Python Security Response Team i Python Release Managers.

W świetle ostatnich ataków na łańcuchy dostaw oprogramowania Microsoft koncentruje się również na zabezpieczeniu głównego repozytorium pakietów PyPI (Python Package Index).

Łatwo nie będzie

Guido van Rossum zauważa, że on i jego współpracownicy z Microsoft koncentrują się na stopniowych zmianach w CPythonie. Przełomowe, rewolucyjne zmiany to w końcu delikatny problem dla deweloperów Pythona, którzy stanęli przed gigantycznym zadaniem podczas przenoszenia kodu z Python 2.x do Python 3 – poświęcając na to ponad dekadę. Ale czy główny projekt Pythona rzeczywiście będzie w stanie zapewnić dwukrotnie większą prędkość niż obecne jego wersje? To co mówi van Rossum sugeruje, że nie chce on być pociągany do odpowiedzialności za tak ambitny projekt.

Nie jesteśmy pewni, czy osiągniemy 2x! Ale jesteśmy nastawieni optymistycznie i pełni ciekawości.

Podtrzymuje w każdym razie swoje dotychczasowe twierdzenia, że głównymi beneficjentami nadchodzących zmian w Pythonie będą osoby korzystające z czystego kodu Pythona, intensywnie korzystającego z procesora oraz użytkownicy stron internetowych z wbudowanym Pythonem.

Najnowsze oferty pracy:

Polecane wpisy na blogu IT:

Szukasz pracownika IT?

Dostarczymy Ci najlepszych specjalistów z branży IT. Wyślij zapytanie

Wyrażam zgodę TeamQuest Sp. z o.o. na przetwarzanie moich danych osobowych w celu marketingu produktów i usług własnych TeamQuest, w tym na kontaktowanie się ze mną w formie połączenia telefonicznego lub środkami elektronicznymi.
Administratorem podanych przez Ciebie danych osobowych jest TeamQuest Sp. z o.o., z siedzibą w Warszawie (00-814), ul. Miedziana 3a/21, zwana dalej „Administratorem".
Jeśli masz jakiekolwiek pytania odnośnie przetwarzania przez nas Twoich danych, skontaktuj się z naszym Inspektorem Ochrony Danych (IOD). Do Twojej dyspozycji jest pod adresem e-mail: office@teamquest.pl.
W jakim celu i na jakiej podstawie będziemy wykorzystywać Twoje dane? Dowiedz się więcej