Wysoko wydajny Python. Efektywne programowanie w praktyce. Wydanie II
- Autorzy:
- Micha Gorelick, Ian Ozsvald
- Wydawnictwo:
- Helion
- Wydawnictwo:
- Helion
- Ocena:
- 4.4/6 Opinie: 5
- Stron:
- 424
- Druk:
- oprawa miękka
- Dostępne formaty:
-
PDFePubMobi
Opis ebooka: Wysoko wydajny Python. Efektywne programowanie w praktyce. Wydanie II
Python jest językiem łatwym do opanowania i przyjemnym dla programisty. Jednak łatwość projektowania nie przekłada się na szybkość działania kodu. W konsekwencji przetwarzanie dużych wolumenów danych czy próba skalowania aplikacji kończą się problemami z wydajnością lub niezawodnością. Niekiedy rozwiązaniem jest zastosowanie procesów szeregowych, w innych przypadkach warto sięgnąć do architektury wielordzeniowej, klastrów lub układów GPU. Relatywnie często okazuje się, że dobre wyniki uzyskuje się w efekcie takiego zmodyfikowania technik kodowania, aby przy wykorzystaniu potencjału Pythona stosować sprawdzone metody poprawy wydajności kodu.
Dzięki drugiemu, poszerzonemu i zaktualizowanemu wydaniu tej książki zdobędziesz wszechstronną wiedzę o czynnikach wpływających na wydajność kodu. Dowiesz się, jakie procesy zachodzą w tle komputera, na jakich zasadach odbywa się przydzielanie pamięci, oraz zyskasz nowe spojrzenie na proces kompilacji do postaci kodu maszynowego. Zapoznasz się z zagadnieniem współbieżności i obliczeń klastrowych. Zaczniesz swobodnie posługiwać się najlepszymi narzędziami Pythona, takimi jak NumPy czy moduł multiprocessing. Z pewnością docenisz techniki zapewniające korzystanie z minimum zasobów, takich jak czas procesora czy pamięć RAM. Opisane tu zagadnienia zilustrowano przykładami kodu oraz poradami najlepszych specjalistów z branży.
W książce:
- narzędzia NumPy, Cython i Docker
- znajdowanie wąskich gardeł związanych z wykorzystaniem czasu procesora i pamięci
- wydajność kodu a odpowiednie struktury danych
- przyspieszanie obliczeń opartych na macierzach i wektorach
- zarządzanie wieloma operacjami obliczeniowymi i wejścia-wyjścia
- przetwarzanie współbieżne i uruchamianie kodu w klastrze
Programowanie w Pythonie: przede wszystkim wydajność i niezawodność!
Programowanie wydajnego kodu dla ludzi w praktyce
Kod Python może działać poprawnie, ale wymagasz od niego większej wydajności. W tym poszerzonym wydaniu uaktualnionym pod kątem języka Python 3 dowiesz się, jak lokalizować "wąskie gardła" wydajności i znacznie zwiększyć szybkość kodu w programach przetwarzających duże wolumeny danych. Przybliżając podstawową teorię związaną z opcjami projektowania, praktyczny przewodnik ułatwia lepsze zrozumienie implementacji kodu Python.
W jaki sposób możesz skorzystać z architektur wielordzeniowych lub klastrów? Jak zbudować system, który może być dowolnie skalowany bez utraty niezawodności? Doświadczeni programiści używający języka Python omówią konkretne rozwiązania wielu problemów, a także przedstawią historie "z życia wzięte" opowiedziane przez pracowników firm, którzy wykorzystują wydajny kod Python do analizy rozwiązań społecznościowych, uczenia maszynowego w wersji produkcyjnej oraz w innych sytuacjach.
- Poznaj lepiej narzędzia NumPy i Cython, a także narzędzia profilujące.
- Dowiedz się, jak w języku Python dokonywana jest abstrakcja bazowej architektury komputera.
- Użyj profilowania do znajdowania "wąskich gardeł" związanych z wykorzystaniem czasu procesora i pamięci.
- Utwórz wydajne programy, wybierając odpowiednie struktury danych.
- Przyspiesz obliczenia oparte na macierzach i wektorach.
- Zastosuj narzędzia do kompilacji kodu Python do postaci kodu maszynowego.
- Zarządzaj jednocześnie wieloma operacjami obliczeniowymi i operacjami wejścia-wyjścia.
- Przekształć kod przetwarzania współbieżnego w celu uruchomienia go w klastrze lokalnym lub zdalnym.
- Wdrażaj kod szybciej za pomocą narzędzi takich jak Docker.
"Jest to jedna z tych rzadkiej klasy książek o programowaniu, która zmieni sposób, w jaki postrzegasz praktykę programowania."
Hilary Mason, danolog w firmie Accel
Wybrane bestsellery
-
Your Python code may run correctly, but you need it to run faster. Updated for Python 3, this expanded edition shows you how to locate performance bottlenecks and significantly speed up your code in high-data-volume programs. By exploring the fundamental theory behind design choices, High Perform...(201.62 zł najniższa cena z 30 dni)
201.42 zł
239.00 zł(-16%) -
Wydajne aplikacje w języku Python! Python to skryptowy język programowania istniejący na rynku od wielu lat — jego pierwsza wersja pojawiła się w 1991 roku. Przejrzystość kodu źródłowego była jednym z głównych celów Guida van Rossuma, twórcy tego języka. Dziś Py...(29.49 zł najniższa cena z 30 dni)
29.49 zł
59.00 zł(-50%) -
Dzięki tej książce dowiesz się, jak pozyskiwać, analizować i wizualizować dane, a potem używać ich do rozwiązywania problemów biznesowych. Wystarczy, że znasz podstawy Pythona i matematyki na poziomie liceum, aby zacząć stosować naukę o danych w codziennej pracy. Znajdziesz tu szereg praktycznych...
Data science i Python. Stawianie czoła najtrudniejszym wyzwaniom biznesowym Data science i Python. Stawianie czoła najtrudniejszym wyzwaniom biznesowym
(44.85 zł najniższa cena z 30 dni)41.40 zł
69.00 zł(-40%) -
Dzięki tej książce poznasz od podstaw Gita i GitLaba. Dowiesz się, jak skonfigurować runnery GitLaba, a także jak tworzyć i konfigurować potoki dla różnych etapów cyklu rozwoju oprogramowania. Poznasz zasady interpretacji wyników potoków w GitLabie. Nauczysz się też wdrażania kodu w różnych środo...
Automatyzacja metodyki DevOps za pomocą potoków CI/CD GitLaba. Buduj efektywne potoki CI/CD do weryfikacji, zabezpieczenia i wdrażania kodu, korzystając z rzeczywistych przykładów Automatyzacja metodyki DevOps za pomocą potoków CI/CD GitLaba. Buduj efektywne potoki CI/CD do weryfikacji, zabezpieczenia i wdrażania kodu, korzystając z rzeczywistych przykładów
(51.35 zł najniższa cena z 30 dni)47.40 zł
79.00 zł(-40%) -
Ta książka wyjaśni Ci rolę matematyki w tworzeniu, renderowaniu i zmienianiu wirtualnych środowisk 3D, a ponadto pozwoli odkryć tajemnice najpopularniejszych dzisiaj silników gier. Za sprawą licznych praktycznych ćwiczeń zorientujesz się, co się kryje za rysowaniem linii i kształtów graficznych, ...
Matematyka w programowaniu gier i grafice komputerowej. Tworzenie i renderowanie wirtualnych środowisk 3D oraz praca z nimi Matematyka w programowaniu gier i grafice komputerowej. Tworzenie i renderowanie wirtualnych środowisk 3D oraz praca z nimi
(57.84 zł najniższa cena z 30 dni)53.40 zł
89.00 zł(-40%) -
ChatGPT, chatbot opracowany i udostępniony przez firmę OpenAI, szybko stał się obiektem zainteresowania internautów na całym świecie — i na nowo wzbudził gorące dyskusje wokół sztucznej inteligencji. Ludzie mediów prześcigają się w skrajnych wizjach, jedni podchodzą do tematu entuzjastyczni...(10.95 zł najniższa cena z 30 dni)
10.95 zł
21.90 zł(-50%) -
Mam wrażenie, że wokół sieci neuronowych narosło wiele mitów. Nawet niektórzy starsi członkowie mojej rodziny na hasło "sztuczna inteligencja" robią posępną minę, niezależnie od tego, czy mowa jest o generowaniu obrazów czy - na przykład - o rozpoznawaniu odręcznego pisma czy też tłumaczeniu teks...(24.57 zł najniższa cena z 30 dni)
24.57 zł
28.90 zł(-15%) -
Tę książkę docenią przede wszystkim inżynierowie oprogramowania, programiści i administratorzy systemów, którzy muszą szybko zrozumieć praktyki DevOps. Znajdziesz tu bezcenną wiedzę, która ułatwi Ci efektywną pracę z nowoczesnym stosem aplikacji i sprawne przystąpienie do zadań związanych z DevOp...
DevOps dla zdesperowanych. Praktyczny poradnik przetrwania DevOps dla zdesperowanych. Praktyczny poradnik przetrwania
(40.20 zł najniższa cena z 30 dni)40.20 zł
67.00 zł(-40%) -
Pytest – nowoczesny framework do uruchamiania testów automatycznych w języku Python. Można używać tej platformy do przeprowadzania testów jednostkowych, ale sprawdzi się świetnie także podczas konstruowania rozbudowanych testów wyższego poziomu (integracyjnych, end-to-end) dla całych aplika...
Pytest. Kurs video. Automatyzacja testów w Pythonie Pytest. Kurs video. Automatyzacja testów w Pythonie
(67.05 zł najniższa cena z 30 dni)81.95 zł
149.00 zł(-45%) -
Oto zaktualizowane wydanie popularnego przewodnika, dzięki któremu skorzystasz z ponad dwustu sprawdzonych receptur bazujących na najnowszych wydaniach bibliotek Pythona. Wystarczy, że skopiujesz i dostosujesz kod do swoich potrzeb. Możesz też go uruchamiać i testować za pomocą przykładowego zbio...
Uczenie maszynowe w Pythonie. Receptury. Od przygotowania danych do deep learningu. Wydanie II Uczenie maszynowe w Pythonie. Receptury. Od przygotowania danych do deep learningu. Wydanie II
(53.40 zł najniższa cena z 30 dni)53.40 zł
89.00 zł(-40%)
O autorach ebooka
Micha Gorelick to laureat nagrody Nobla z roku 2046 za swój wkład w podróże w czasie. Cofnął się w czasie do pierwszej dekady XXI wieku, aby studiować astrofizykę, przetwarzać dane w serwisie bitly i zostać współzałożycielem firmy Fast Forward Labs jako obywatel Szalony Naukowiec, zajmując się różnymi zagadnieniami, począwszy od uczenia maszynowego, a skończywszy na wydajnych algorytmach strumieni.
Ian Ozsvald to analityk danych i nauczyciel w firmie ModelInsight.io z ponad 10-letnim doświadczeniem z zakresu języka Python. Ian prowadził wykłady poświęcone kodowi Python o dużej wydajności na konferencjach PyCon i PyData, a także od wielu lat oferuje w Wielkiej Brytanii usługi konsultingowe związane z analizą danych i obliczeniami o dużej wydajności.
Zobacz pozostałe książki z serii
-
To drugie, zaktualizowane wydanie przewodnika po systemie Prometheus. Znajdziesz w nim wyczerpujące wprowadzenie do tego oprogramowania, a także wskazówki dotyczące monitorowania aplikacji i infrastruktury, tworzenia wykresów, przekazywania ostrzeżeń, bezpośredniej instrumentacji kodu i pobierani...
Prometheus w pełnej gotowości. Jak monitorować pracę infrastruktury i wydajność działania aplikacji. Wydanie II Prometheus w pełnej gotowości. Jak monitorować pracę infrastruktury i wydajność działania aplikacji. Wydanie II
(53.40 zł najniższa cena z 30 dni)53.40 zł
89.00 zł(-40%) -
Dzięki tej książce zrozumiesz bazowe koncepcje programowania funkcyjnego i przekonasz się, że możesz włączać je do kodu bez rezygnacji z paradygmatu obiektowego. Dowiesz się również, kiedy w swojej codziennej pracy używać takich opcji jak niemutowalność i funkcje czyste i dlaczego warto to robić....
Java. Podejście funkcyjne. Rozszerzanie obiektowego kodu Javy o zasady programowania funkcyjnego Java. Podejście funkcyjne. Rozszerzanie obiektowego kodu Javy o zasady programowania funkcyjnego
(52.20 zł najniższa cena z 30 dni)52.20 zł
87.00 zł(-40%) -
Ta książka będzie świetnym uzupełnieniem wiedzy o Flutterze i Darcie, sprawdzi się również jako wsparcie podczas rozwiązywania konkretnych problemów. Znalazło się tu ponad sto receptur, dzięki którym poznasz tajniki pisania efektywnego kodu, korzystania z narzędzi udostępnianych przez framework F...
Flutter i Dart. Receptury. Tworzenie chmurowych aplikacji full stack Flutter i Dart. Receptury. Tworzenie chmurowych aplikacji full stack
(41.40 zł najniższa cena z 30 dni)41.40 zł
69.00 zł(-40%) -
Ten przewodnik, który docenią programiści i architekci, zawiera wyczerpujące omówienie zagadnień projektowania, funkcjonowania i modyfikowania architektury API. Od strony praktycznej przedstawia strategie budowania i testowania API REST umożliwiającego połączenie oferowanej funkcjonalności na poz...
Architektura API. Projektowanie, używanie i rozwijanie systemów opartych na API Architektura API. Projektowanie, używanie i rozwijanie systemów opartych na API
(41.40 zł najniższa cena z 30 dni)41.40 zł
69.00 zł(-40%) -
W tej książce omówiono ponad 20 najprzydatniejszych wzorców projektowych, dzięki którym tworzone aplikacje internetowe będą łatwe w późniejszej obsłudze technicznej i w trakcie skalowania. Poza wzorcami projektowymi przedstawiono wzorce generowania i wydajności działania, których znaczenie dla uż...
Wzorce projektowe w JavaScripcie. Przewodnik dla programistów JavaScriptu i Reacta. Wydanie II Wzorce projektowe w JavaScripcie. Przewodnik dla programistów JavaScriptu i Reacta. Wydanie II
(41.40 zł najniższa cena z 30 dni)41.40 zł
69.00 zł(-40%) -
To gruntownie zaktualizowane i uzupełnione wydanie praktycznego przewodnika po wdrażaniu i testowaniu kontenerów Dockera. Przedstawia proces przygotowania pakietu aplikacji ze wszystkimi ich zależnościami, a także jego testowania, wdrażania, skalowania i utrzymywania w środowiskach produkcyjnych....
Docker. Niezawodne kontenery produkcyjne. Praktyczne zastosowania. Wydanie III Docker. Niezawodne kontenery produkcyjne. Praktyczne zastosowania. Wydanie III
(52.20 zł najniższa cena z 30 dni)52.20 zł
87.00 zł(-40%) -
To książka przeznaczona dla osób, które pracują ze zbiorami danych. Jest praktycznym przewodnikiem po koncepcjach algebry liniowej, pomyślanym tak, by ułatwić ich zrozumienie i zastosowanie w użytecznych obliczeniach. Poszczególne zagadnienia przedstawiono za pomocą kodu Pythona, wraz z przykłada...
Praktyczna algebra liniowa dla analityków danych. Od podstawowych koncepcji do użytecznych aplikacji w Pythonie Praktyczna algebra liniowa dla analityków danych. Od podstawowych koncepcji do użytecznych aplikacji w Pythonie
(46.20 zł najniższa cena z 30 dni)46.20 zł
77.00 zł(-40%) -
Ta książka stanowi wszechstronne omówienie wszystkich bibliotek Pythona, potrzebnych naukowcom i specjalistom pracującym z danymi. Znalazł się tu dokładny opis IPythona, NumPy, Pandas, Matplotlib, Scikit-Learn i innych narzędzi. Podręcznik uwzględnia przede wszystkim ich aspekty praktyczne, dzięk...
Python Data Science. Niezbędne narzędzia do pracy z danymi. Wydanie II Python Data Science. Niezbędne narzędzia do pracy z danymi. Wydanie II
(77.40 zł najniższa cena z 30 dni)77.40 zł
129.00 zł(-40%) -
Oto kolejne wydanie zwięzłego podręcznika dla programistów Javy, który ma ułatwić maksymalne wykorzystanie technologii tego języka w wersji 17. Treść została skrupulatnie przejrzana i uzupełniona o materiał dotyczący nowości w obiektowym modelu Javy. Pierwsza część książki obejmuje wprowadzenie d...(53.40 zł najniższa cena z 30 dni)
53.40 zł
89.00 zł(-40%) -
Oto zwięzły i praktyczny przewodnik po usłudze GA4 i jej integracji z chmurą. Szczególnie skorzystają z niego analitycy danych, biznesu i marketingu. Opisano tu wszystkie istotne kwestie dotyczące tego nowego, potężnego modelu analitycznego. Szczególną uwagę poświęcono bardziej zaawansowanym funk...
Google Analytics od podstaw. Analiza wpływu biznesowego i wyznaczanie trendów Google Analytics od podstaw. Analiza wpływu biznesowego i wyznaczanie trendów
(41.40 zł najniższa cena z 30 dni)41.40 zł
69.00 zł(-40%)
Ebooka "Wysoko wydajny Python. Efektywne programowanie w praktyce. Wydanie II" przeczytasz na:
-
czytnikach Inkbook, Kindle, Pocketbook, Onyx Boox i innych
-
systemach Windows, MacOS i innych
-
systemach Windows, Android, iOS, HarmonyOS
-
na dowolnych urządzeniach i aplikacjach obsługujących formaty: PDF, EPub, Mobi
Masz pytania? Zajrzyj do zakładki Pomoc »
Audiobooka "Wysoko wydajny Python. Efektywne programowanie w praktyce. Wydanie II" posłuchasz:
-
w aplikacji Ebookpoint na Android, iOS, HarmonyOs
-
na systemach Windows, MacOS i innych
-
na dowolnych urządzeniach i aplikacjach obsługujących format MP3 (pliki spakowane w ZIP)
Masz pytania? Zajrzyj do zakładki Pomoc »
Kurs Video "Wysoko wydajny Python. Efektywne programowanie w praktyce. Wydanie II" zobaczysz:
-
w aplikacjach Ebookpoint i Videopoint na Android, iOS, HarmonyOs
-
na systemach Windows, MacOS i innych z dostępem do najnowszej wersji Twojej przeglądarki internetowej
Szczegóły ebooka
- Tytuł oryginału:
- High Performance Python: Practical Performant Programming for Humans, 2nd Edition
- Tłumaczenie:
- Piotr Pilch
- ISBN Książki drukowanej:
- 978-83-283-7184-2, 9788328371842
- Data wydania książki drukowanej:
- 2021-01-21
- ISBN Ebooka:
- 978-83-283-7185-9, 9788328371859
- Data wydania ebooka:
- 2021-01-21 Data wydania ebooka często jest dniem wprowadzenia tytułu do sprzedaży i może nie być równoznaczna z datą wydania książki papierowej. Dodatkowe informacje możesz znaleźć w darmowym fragmencie. Jeśli masz wątpliwości skontaktuj się z nami sklep@ebookpoint.pl.
- Format:
- 168x237
- Numer z katalogu:
- 125425
- Rozmiar pliku Pdf:
- 7.5MB
- Rozmiar pliku ePub:
- 10.0MB
- Rozmiar pliku Mobi:
- 21.8MB
- Pobierz przykładowy rozdział PDF
- Przykłady na ftp
Ebook zawiera materiały dodatkowe, które możesz pobrać z serwera FTP - link znajdziesz na stronie redakcyjnej.
Spis treści ebooka
- Podstawowy system komputerowy 19
- Jednostki obliczeniowe 20
- Jednostki pamięci 23
- Warstwy komunikacji 26
- Łączenie ze sobą podstawowych elementów 27
- Porównanie wyidealizowanego przetwarzania z maszyną wirtualną języka Python 27
- Dlaczego warto używać języka Python? 31
- Jak zostać bardzo wydajnym programistą? 34
- Sprawdzone praktyki 35
- Wnioski dotyczące sprawdzonych praktyk korzystania z rozszerzenia Jupyter Notebook 37
- Niech praca znów sprawia radość 38
- Efektywne profilowanie 40
- Wprowadzenie do zbioru Julii 41
- Obliczanie pełnego zbioru Julii 45
- Proste metody pomiaru czasu - instrukcja print i dekorator 48
- Prosty pomiar czasu za pomocą polecenia time systemu Unix 51
- Użycie modułu cProfile 52
- Użycie narzędzia snakeviz do wizualizacji danych wyjściowych modułu cProfile 57
- Użycie narzędzia line_profiler do pomiarów dotyczących kolejnych wierszy kodu 57
- Użycie narzędzia memory_profiler do diagnozowania wykorzystania pamięci 63
- Introspekcja istniejącego procesu za pomocą narzędzia py-spy 68
- Kod bajtowy od podszewki 69
- Użycie modułu dis do sprawdzenia kodu bajtowego narzędzia CPython 69
- Różne metody, różna złożoność 71
- Testowanie jednostkowe podczas optymalizacji w celu zachowania poprawności 73
- Dekorator @profile bez operacji 73
- Strategie udanego profilowania kodu 76
- Podsumowanie 77
- Bardziej efektywne wyszukiwanie 82
- Porównanie list i krotek 84
- Listy jako tablice dynamiczne 85
- Krotki w roli tablic statycznych 88
- Podsumowanie 89
- Jak działają słowniki i zbiory? 94
- Wstawianie i pobieranie 94
- Usuwanie 97
- Zmiana wielkości 98
- Funkcje mieszania i entropia 99
- Słowniki i przestrzenie nazw 102
- Podsumowanie 105
- Iteratory dla szeregów nieskończonych 111
- Wartościowanie leniwe generatora 112
- Podsumowanie 116
- Wprowadzenie do problemu 118
- Czy listy języka Python są wystarczająco dobre? 122
- Problemy z przesadną alokacją 123
- Fragmentacja pamięci 126
- Narzędzie perf 128
- Podejmowanie decyzji z wykorzystaniem danych wyjściowych narzędzia perf 131
- Wprowadzenie do narzędzia numpy 132
- Zastosowanie narzędzia numpy w przypadku problemu dotyczącego dyfuzji 135
- Przydziały pamięci i operacje wewnętrzne 138
- Optymalizacje selektywne: znajdowanie tego, co wymaga poprawienia 141
- Moduł numexpr: przyspieszanie i upraszczanie operacji wewnętrznych 143
- Przestroga: weryfikowanie "optymalizacji" (biblioteka scipy) 146
- Wnioski z optymalizacji macierzy 148
- Narzędzie Pandas 150
- Model wewnętrzny narzędzia Pandas 150
- Zastosowanie funkcji dla wielu wierszy danych 152
- Budowanie struktur DataFrame i szeregów z wyników częściowych, a nie przez łączenie 159
- Zadanie może zostać zrealizowane na więcej niż jeden sposób (i być może szybszy) 160
- Rada dotycząca efektywnego projektowania z wykorzystaniem narzędzia Pandas 161
- Podsumowanie 163
- Jakie wzrosty szybkości są możliwe? 166
- Porównanie kompilatorów JIT i AOT 168
- Dlaczego informacje o typie ułatwiają przyspieszenie działania kodu? 168
- Użycie kompilatora kodu C 169
- Analiza przykładu zbioru Julii 170
- Cython 170
- Kompilowanie czystego kodu Python za pomocą narzędzia Cython 171
- pyximport 173
- Użycie adnotacji kompilatora Cython do analizowania bloku kodu 173
- Dodawanie adnotacji typu 175
- Cython i numpy 179
- Przetwarzanie równoległe rozwiązania na jednym komputerze z wykorzystaniem interfejsu OpenMP 181
- Numba 183
- Użycie narzędzia Numba do kompilacji kodu NumPy dla narzędzia Pandas 185
- PyPy 186
- Różnice związane z czyszczeniem pamięci 187
- Uruchamianie interpretera PyPy i instalowanie modułów 188
- Zestawienie wzrostów szybkości 189
- Kiedy stosować poszczególne technologie? 190
- Inne przyszłe projekty 192
- Procesory graficzne (GPU) 193
- Grafy dynamiczne: PyTorch 193
- Podstawowe profilowanie procesora graficznego 196
- Elementy wydajności procesorów graficznych 197
- Kiedy stosować procesory graficzne? 199
- Interfejsy funkcji zewnętrznych 201
- ctypes 202
- cffi 204
- f2py 206
- Moduł narzędzia CPython 209
- Podsumowanie 212
- Wprowadzenie do programowania asynchronicznego 217
- Jak działają funkcja async i instrukcja await? 219
- Przeszukiwacz szeregowy 220
- gevent 222
- tornado 226
- aiohttp 229
- Wspólne obciążenie procesora i urządzeń wejścia-wyjścia 232
- Proces szeregowy 233
- Przetwarzanie wsadowe wyników 234
- Pełna asynchronizacja 237
- Podsumowanie 240
- Moduł multiprocessing 246
- Przybliżenie liczby pi przy użyciu metody Monte Carlo 248
- Przybliżanie liczby pi za pomocą procesów i wątków 249
- Zastosowanie obiektów języka Python 250
- Zastępowanie modułu multiprocessing biblioteką Joblib 256
- Liczby losowe w systemach przetwarzania równoległego 260
- Zastosowanie narzędzia numpy 261
- Znajdowanie liczb pierwszych 264
- Kolejki zadań roboczych 270
- Weryfikowanie liczb pierwszych za pomocą komunikacji międzyprocesowej 274
- Rozwiązanie z przetwarzaniem szeregowym 279
- Rozwiązanie z prostym obiektem Pool 280
- Rozwiązanie z bardzo prostym obiektem Pool dla mniejszych liczb 281
- Użycie obiektu Manager.Value jako flagi 282
- Użycie systemu Redis jako flagi 284
- Użycie obiektu RawValue jako flagi 286
- Użycie modułu mmap jako flagi 287
- Użycie modułu mmap do odtworzenia flagi 288
- Współużytkowanie danych narzędzia numpy za pomocą modułu multiprocessing 290
- Synchronizowanie dostępu do zmiennych i plików 297
- Blokowanie plików 297
- Blokowanie obiektu Value 300
- Podsumowanie 303
- Zalety klastrowania 306
- Wady klastrowania 307
- Strata o wartości 462 milionów dolarów na giełdzie Wall Street z powodu kiepskiej strategii aktualizacji klastra 309
- 24-godzinny przestój usługi Skype w skali globalnej 309
- Typowe projekty klastrowe 310
- Metoda rozpoczęcia tworzenia rozwiązania klastrowego 311
- Sposoby na uniknięcie kłopotów podczas korzystania z klastrów 312
- Dwa rozwiązania klastrowe 313
- Użycie modułu IPython Parallel do obsługi badań 314
- Operacje równoległe narzędzia Pandas z wykorzystaniem biblioteki Dask 316
- Użycie systemu NSQ dla niezawodnych klastrów produkcyjnych 321
- Kolejki 321
- Publikator/subskrybent 322
- Rozproszone obliczenia liczb pierwszych 324
- Inne warte uwagi narzędzia klastrowania 328
- Docker 329
- Wydajność Dockera 329
- Zalety Dockera 332
- Podsumowanie 334
- Obiekty typów podstawowych są kosztowne 336
- Moduł array zużywa mniej pamięci do przechowywania wielu obiektów typu podstawowego 337
- Mniejsze zużycie pamięci RAM w bibliotece NumPy dzięki narzędziu NumExpr 340
- Analiza wykorzystania pamięci RAM w kolekcji 343
- Bajty i obiekty Unicode 345
- Efektywne przechowywanie zbiorów tekstowych w pamięci RAM 346
- Zastosowanie metod dla 11 milionów tokenów 347
- Modelowanie większej ilości tekstu za pomocą narzędzia FeatureHasher biblioteki scikit-learn 355
- Wprowadzenie do narzędzi DictVectorizer i FeatureHasher 356
- Porównanie narzędzi DictVectorizer i FeatureHasher w wypadku rzeczywistego problemu 358
- Macierze rzadkie biblioteki SciPy 360
- Wskazówki dotyczące mniejszego wykorzystania pamięci RAM 363
- Probabilistyczne struktury danych 363
- Obliczenia o bardzo dużym stopniu przybliżenia z wykorzystaniem jednobajtowego licznika Morrisa 365
- Wartości k-minimum 367
- Filtry Blooma 371
- Licznik LogLog 376
- Praktyczny przykład 380
- Usprawnianie potoków inżynierii cech za pomocą biblioteki Feature-engine 385
- Inżynieria cech w przypadku uczenia maszynowego 386
- Trudne zadanie wdrażania potoków inżynierii cech 386
- Wykorzystanie możliwości bibliotek open source języka Python 387
- Biblioteka Feature-engine usprawnia budowanie i wdrażanie potoków inżynierii cech 388
- Ułatwienie adaptacji nowego pakietu open source 389
- Projektowanie, utrzymywanie i zachęcanie do uczestnictwa w rozwoju bibliotek open source 390
- Bardzo wydajne zespoły danologów 391
- Ile to potrwa? 392
- Poznawanie i planowanie 392
- Zarządzanie oczekiwaniami i dostarczeniem produktu 393
- Numba 395
- Prosty przykład 395
- Najlepsze praktyki i zalecenia 397
- Uzyskiwanie pomocy 400
- Optymalizowanie a myślenie 401
- Narzędzie Social Media Analytics (SoMA) firmy Adaptive Lab (2014) 403
- Język Python w firmie Adaptive Lab 404
- Projekt narzędzia SoMA 404
- Zastosowana metodologia projektowa 405
- Serwisowanie systemu SoMA 405
- Rada dla inżynierów z branży 406
- Technika głębokiego uczenia prezentowana przez firmę RadimRehurek.com (2014) 406
- Strzał w dziesiątkę 407
- Rady dotyczące optymalizacji 409
- Podsumowanie 411
- Uczenie maszynowe o dużej skali gotowe do zastosowań produkcyjnych w firmie Lyst.com (2014) 412
- Projekt klastra 412
- Ewolucja kodu w szybko rozwijającej się nowej firmie 412
- Budowanie mechanizmu rekomendacji 413
- Raportowanie i monitorowanie 413
- Rada 414
- Analiza serwisu społecznościowego o dużej skali w firmie Smesh (2014) 414
- Rola języka Python w firmie Smesh 414
- Platforma 415
- Dopasowywanie łańcuchów w czasie rzeczywistym z dużą wydajnością 415
- Raportowanie, monitorowanie, debugowanie i wdrażanie 417
- Interpreter PyPy zapewniający powodzenie systemów przetwarzania danych i systemów internetowych (2014) 418
- Wymagania wstępne 419
- Baza danych 419
- Aplikacja internetowa 420
- Mechanizm OCR i tłumaczenie 420
- Dystrybucja zadań i procesy robocze 421
- Podsumowanie 421
- Kolejki zadań w serwisie internetowym Lanyrd.com (2014) 421
- Rola języka Python w serwisie Lanyrd 422
- Zapewnianie odpowiedniej wydajności kolejki zadań 423
- Raportowanie, monitorowanie, debugowanie i wdrażanie 423
- Rada dla programistów z branży 423
Słowo wstępne 11
Przedmowa 13
1. Wydajny kod Python 19
2. Użycie profilowania do znajdowania wąskich gardeł 39
3. Listy i krotki 79
4. Słowniki i zbiory 91
5. Iteratory i generatory 107
6. Obliczenia macierzowe i wektorowe 117
7. Kompilowanie do postaci kodu C 165
8. Asynchroniczne operacje wejścia-wyjścia 215
9. Moduł multiprocessing 243
10. Klastry i kolejki zadań 305
11. Mniejsze wykorzystanie pamięci RAM 335
12. Rady specjalistów z branży 385
Oceny i opinie klientów: Wysoko wydajny Python. Efektywne programowanie w praktyce. Wydanie II Micha Gorelick, Ian Ozsvald (5) Weryfikacja opinii następuję na podstawie historii zamówień na koncie Użytkownika umieszczającego opinię. Użytkownik mógł otrzymać punkty za opublikowanie opinii uprawniające do uzyskania rabatu w ramach Programu Punktowego.
(2)
(1)
(0)
(1)
(1)
(0)
więcej opinii