Wydanie Nuitka 0.6.17, kompilatora języka Python

Dostępny jest już projekt Nuitka 0.6.17, w ramach którego opracowuje się kompilator do tłumaczenia skryptów Pythona na reprezentację C++, którą można następnie skompilować do pliku wykonywalnego przy użyciu biblioteki libpython w celu uzyskania maksymalnej kompatybilności z CPython (przy użyciu natywnych narzędzi do zarządzania obiektami CPython). Zapewniona jest pełna kompatybilność z aktualnymi wydaniami Pythona 2.6, 2.7, 3.3 - 3.9. W porównaniu z CPythonem, skompilowane skrypty wykazują 335% poprawę wydajności w testach porównawczych Pythona. Kod projektu jest rozpowszechniany na licencji Apache.

Nowa wersja dodaje eksperymentalne wsparcie optymalizacji opartej na wynikach profilowania kodu (PGO – Profile-guided optymalizacja), co pozwala uwzględnić cechy określone podczas wykonywania programu. Optymalizacja obecnie dotyczy tylko kodu skompilowanego za pomocą GCC. Wtyczki mają teraz możliwość żądania zasobów w czasie kompilacji (pkg_resources.require). Znacząco rozszerzono możliwości wtyczki przeciwdziałającej wzdęciom, dzięki której można teraz zmniejszyć liczbę pakietów podczas korzystania z bibliotek numpy, scipy, skimage, pywt i matplotlib, m.in. poprzez wykluczenie niepotrzebnych funkcji i podstawienie niezbędnego kodu funkcji pod adresem etap analizowania. Zoptymalizowany kod związany z wielowątkowością, tworzeniem klas, sprawdzaniem atrybutów i wywoływaniem metod. Przyspieszono operacje na typach bajtów, str i list.

Źródło: opennet.ru

Dodaj komentarz