Szkolenie: Python - optymalizacja, refactoring i tuning wydajności
Szkolenie Python optymalizacja, refactoring i tuning wydajności uczy praktycznych technik zwiększania wydajności kodu, identyfikacji wąskich gardeł, profilowania, tuningu oraz wykorzystania współbieżności w Pythonie
- Trenerzy praktycy
- Kameralne grupy
Czas trwania szkolenia:2 dni (16h)
Kod kursu:PYTHON/OPT
Python - optymalizacja, refactoring i tuning wydajności
Cele szkolenia
Szkolenie przygotowuje do samodzielnej optymalizacji i refaktoryzacji kodu Python w celu zwiększenia jego wydajności
Szkolenie uczy identyfikowania i analizowania wąskich gardeł oraz stosowania narzędzi do profilowania kodu
Szkolenie omawia techniki tuningu wydajnościowego oraz wprowadza do zagadnień współbieżności i przetwarzania równoległego
Dla kogo?
Inżynierów oprogramowania i programistów Python z doświadczeniem na poziomie co najmniej średniozaawansowanym
Testerów, inżynierów jakości oraz specjalistów ds. wydajności zainteresowanych optymalizacją kodu
Osoby odpowiedzialne za rozwój, utrzymanie i tuning aplikacji Python w środowiskach produkcyjnych
Efekty kształcenia
Uczestnik analizuje i identyfikuje wąskie gardła w kodzie Python
Uczestnik stosuje narzędzia do profilowania i pomiaru wydajności
Uczestnik optymalizuje kod pod kątem złożoności obliczeniowej i pamięciowej
Uczestnik wdraża techniki tuningu wydajnościowego
Uczestnik wykorzystuje podstawy współbieżności i przetwarzania równoległego
Uczestnik ocenia efekty wprowadzonych zmian wydajnościowych
Wymagania
Umiejętność wytwarzania oprogramowania w języku Python na poziomie minimum średnim
Umiejętność biegłego posługiwania się komputerem
Umiejętność korzystania z konsoli systemu operacyjnego
Znajomość podstawowych koncepcji związanych z infrastrukturą
Wiedza o procesach obejmujących wytwarzanie oprogramowania
W cenie otrzymasz:
Materiały szkoleniowe
Certyfikat ukończenia szkolenia
W przypadku szkolenia w trybie stacjonarnym zapewnimy Ci również lunch oraz sprzęt niezbędny do nauki
Program szkolenia
Wprowadzenie
Projekt Faster CPython
Zmiany w wersjach 3.11, 3.12, 3.13, 3.14...
Architektura procesora i pamięci
Pojęcie latencji
Pojęcia złożoności kodu (pamięciowa, obliczeniowa, cyklomatyczna, kognitywna)
Optymalizacja
Złożoność obliczeniowa operacji na wbudowanych typach danych
Ręczna i automatyczna identyfikacja złożonego kodu
Testy obciążeniowe
Transpilacja kodu Python do C
Tuning wydajnościowy
Techniki pomiaru wydajności kodu
Microbenchmarking i jego pułapki
Identyfikacja wąskich gardeł
Wizualizacja wyników
Profilowanie
Profiling CPU
Profiling pamięci
Wprowadzenie do współbieżności i przetwarzania równoległego
GIL - Global Interpreter Lock
Programowanie wieloprocesowe
Programowanie wielowątkowe
Programowanie asynchroniczne
Wybrane opinie
Przeczytaj pozytywne opinie pochodzące z ankiet satysfakcji z naszych szkoleń wypełnianych wyłącznie przez ich uczestników po realizacji usługi
