High Performance Python. Practical Performant Programming for Humans. 2nd Edition

- Autorzy:
- Micha Gorelick, Ian Ozsvald
- Promocja Przejdź


- Ocena:
- Bądź pierwszym, który oceni tę książkę
- Stron:
- 468
- Dostępne formaty:
-
ePubMobi
Opis książki: High Performance Python. Practical Performant Programming for Humans. 2nd Edition
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 Performance Python helps you gain a deeper understanding of Python’s implementation.
How do you take advantage of multicore architectures or clusters? Or build a system that scales up and down without losing reliability? Experienced Python programmers will learn concrete solutions to many issues, along with war stories from companies that use high-performance Python for social media analytics, productionized machine learning, and more.
- Get a better grasp of NumPy, Cython, and profilers
- Learn how Python abstracts the underlying computer architecture
- Use profiling to find bottlenecks in CPU time and memory usage
- Write efficient programs by choosing appropriate data structures
- Speed up matrix and vector computations
- Use tools to compile Python down to machine code
- Manage multiple I/O and computational operations concurrently
- Convert multiprocessing code to run on local or remote clusters
- Deploy code faster using tools like Docker
Wybrane bestsellery
-
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 kompi...
Wysoko wydajny Python. Efektywne programowanie w praktyce. Wydanie II Wysoko wydajny Python. Efektywne programowanie w praktyce. Wydanie II
(0,00 zł najniższa cena z 30 dni)57.85 zł
89.00 zł(-35%) -
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...(0,00 zł najniższa cena z 30 dni)
32.45 zł
59.00 zł(-45%) -
To drugie, zaktualizowane i poprawione wydanie bestsellerowego podręcznika Programowania w Pythonie pozwoli Ci błyskawicznie zacząć tworzyć kod, który działa! Zaczniesz od zrozumienia podstawowych koncepcji programistycznych, następnie nauczysz się zapewniać programom interaktywność i wykształcis...(0,00 zł najniższa cena z 30 dni)
64.35 zł
99.00 zł(-35%) -
Metody statystyczne są kluczowym elementem data science, mimo to niewielu specjalistów data science posiada formalne wykształcenie statystyczne. Kursy i podręczniki o podstawach statystyki, rzadko kiedy omawiają temat z perspektywy data science. W drugim wydaniu tego popularnego podręcznika zosta...
Statystyka praktyczna w data science. 50 kluczowych zagadnień w językach R i Python. Wydanie II Statystyka praktyczna w data science. 50 kluczowych zagadnień w językach R i Python. Wydanie II
(0,00 zł najniższa cena z 30 dni)44.85 zł
69.00 zł(-35%) -
To kompleksowy podręcznik do nauki programowania w Pythonie. Jego piąte wydanie zostało gruntownie zaktualizowane i rozbudowane o dodatkowe treści. Omówiono tu najnowsze wersje Pythona w liniach 3.X i 2.X, czyli 3.3 i 2.7, i dodano opisy nowych lub rozszerzonych mechanizmów, takich jak obsługa fo...(0,00 zł najniższa cena z 30 dni)
129.35 zł
199.00 zł(-35%) -
Mało kto lubi matematykę, zwłaszcza algebrę czy analizę matematyczną. Wydaje się trudna i niezrozumiała. Bardzo łatwo popełnić błędy podczas rozwiązywania równań różniczkowych czy całek. Jeśli jednak powierzysz najtrudniejszą i najżmudniejszą część obliczeń komputerowi, szybko się przekonasz, że ...
Matematyka w Pythonie. Algebra, statystyka, analiza matematyczna i inne dziedziny Matematyka w Pythonie. Algebra, statystyka, analiza matematyczna i inne dziedziny
(0,00 zł najniższa cena z 30 dni)44.85 zł
69.00 zł(-35%) -
Oto praktyczny przewodnik po wersji 3.0 systemu Spark, metodach statystycznych i rzeczywistych zbiorach danych. Omówiono w nim zasady rozwiązywania problemów analitycznych za pomocą interfejsu PySpark, z wykorzystaniem dobrych praktyk programowania w systemie Spark. Po lekturze można bezproblemow...
Zaawansowana analiza danych w PySpark. Metody przetwarzania informacji na szeroką skalę z wykorzystaniem Pythona i systemu Spark Zaawansowana analiza danych w PySpark. Metody przetwarzania informacji na szeroką skalę z wykorzystaniem Pythona i systemu Spark
Akash Tandon, Sandy Ryza, Uri Laserson, Sean Owen, Josh Wills
(0,00 zł najniższa cena z 30 dni)48.30 zł
69.00 zł(-30%) -
Ta książka jest kompleksowym wprowadzeniem do matematyki dyskretnej, przydatnym dla każdego, kto chce pogłębić i ugruntować swoje umiejętności informatyczne. W zrozumiały sposób przedstawiono tu metody matematyki dyskretnej i ich zastosowanie w algorytmach i analizie danych, włączając w to techni...
Matematyka dyskretna dla praktyków. Algorytmy i uczenie maszynowe w Pythonie Matematyka dyskretna dla praktyków. Algorytmy i uczenie maszynowe w Pythonie
(0,00 zł najniższa cena z 30 dni)44.85 zł
69.00 zł(-35%) -
Ta książka jest przeznaczona dla osób, które nie umieją programować, ale chciałyby zapoznać się z kryptografią. Omówiono tu podstawowe koncepcje programowania w Pythonie, który dziś jest uważany za najlepszy język dla początkujących koderów. Pokazano, jak tworzyć, testować i łamać programy implem...
Złam ten kod z Pythonem. Jak tworzyć, testować i łamać szyfry Złam ten kod z Pythonem. Jak tworzyć, testować i łamać szyfry
(0,00 zł najniższa cena z 30 dni)26.90 zł
89.00 zł(-70%) -
To drugie wydanie bestsellerowego przewodnika po technikach uczenia maszynowego. Wystarczą minimalne umiejętności programistyczne, aby dzięki tej książce nauczyć się budowania i trenowania głębokiej sieci neuronowej. Zawarto tu minimum teorii, a proces nauki jest ułatwiony przez liczne przykłady ...
Uczenie maszynowe z użyciem Scikit-Learn i TensorFlow. Wydanie II Uczenie maszynowe z użyciem Scikit-Learn i TensorFlow. Wydanie II
(0,00 zł najniższa cena z 30 dni)83.85 zł
129.00 zł(-35%)
O autorach książki
2 Micha Gorelick, Ian OzsvaldMicha 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.
Kup polskie wydanie:
Wysoko wydajny Python. Efektywne programowanie w praktyce. Wydanie II
- Autor:
- Micha Gorelick, Ian Ozsvald
57,85 zł
89,00 zł
(53.40 zł najniższa cena z 30 dni)
Ebooka 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 posłuchasz:
-
w aplikacji Ebookpoint na Android, iOS, HarmonyOs
-
na systemach Windows, MacOS i innych
-
na dowolonych urządzeniach i aplikacjach obsługujących format MP3 (pliki spakowane w ZIP)
Masz pytania? Zajrzyj do zakładki Pomoc »
Kurs Video zobaczysz:
-
w aplikacji Ebookpoint na Android, iOS, HarmonyOs
-
na systemach Windows, MacOS i innych
-
na dowolonych urządzeniach i aplikacjach obsługujących format MP4 (pliki spakowane w ZIP)
Szczegóły książki
- ISBN Ebooka:
- 978-14-920-5497-9, 9781492054979
- Data wydania ebooka:
-
2020-04-30
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@helion.pl.
- Język publikacji:
- angielski
- Rozmiar pliku ePub:
- 6.5MB
- Rozmiar pliku Mobi:
- 18.2MB
- Kategorie:
Programowanie » Python - Programowanie
Spis treści książki
- Foreword
- Preface
- Who This Book Is For
- Who This Book Is Not For
- What Youll Learn
- Python 3
- Changes from Python 2.7
- License
- How to Make an Attribution
- Errata and Feedback
- Conventions Used in This Book
- Using Code Examples
- OReilly Online Learning
- How to Contact Us
- Acknowledgments
- 1. Understanding Performant Python
- The Fundamental Computer System
- Computing Units
- Memory Units
- Communications Layers
- The Fundamental Computer System
- Putting the Fundamental Elements Together
- Idealized Computing Versus the Python Virtual Machine
- Idealized computing
- Pythons virtual machine
- Idealized Computing Versus the Python Virtual Machine
- So Why Use Python?
- How to Be a Highly Performant Programmer
- Good Working Practices
- Some Thoughts on Good Notebook Practice
- Getting the Joy Back into Your Work
- 2. Profiling to Find Bottlenecks
- Profiling Efficiently
- Introducing the Julia Set
- Calculating the Full Julia Set
- Simple Approaches to Timingprint and a Decorator
- Simple Timing Using the Unix time Command
- Using the cProfile Module
- Visualizing cProfile Output with SnakeViz
- Using line_profiler for Line-by-Line Measurements
- Using memory_profiler to Diagnose Memory Usage
- Introspecting an Existing Process with PySpy
- Bytecode: Under the Hood
- Using the dis Module to Examine CPython Bytecode
- Different Approaches, Different Complexity
- Unit Testing During Optimization to Maintain Correctness
- No-op @profile Decorator
- Strategies to Profile Your Code Successfully
- Wrap-Up
- 3. Lists and Tuples
- A More Efficient Search
- Lists Versus Tuples
- Lists as Dynamic Arrays
- Tuples as Static Arrays
- Wrap-Up
- 4. Dictionaries and Sets
- How Do Dictionaries and Sets Work?
- Inserting and Retrieving
- Deletion
- Resizing
- Hash Functions and Entropy
- How Do Dictionaries and Sets Work?
- Dictionaries and Namespaces
- Wrap-Up
- 5. Iterators and Generators
- Iterators for Infinite Series
- Lazy Generator Evaluation
- Wrap-Up
- 6. Matrix and Vector Computation
- Introduction to the Problem
- Arent Python Lists Good Enough?
- Problems with Allocating Too Much
- Memory Fragmentation
- Understanding perf
- Making Decisions with perfs Output
- Enter numpy
- Applying numpy to the Diffusion Problem
- Memory Allocations and In-Place Operations
- Selective Optimizations: Finding What Needs to Be Fixed
- numexpr: Making In-Place Operations Faster and Easier
- A Cautionary Tale: Verify Optimizations (scipy)
- Lessons from Matrix Optimizations
- Pandas
- Pandass Internal Model
- Applying a Function to Many Rows of Data
- Which OLS implementation should we use?
- Applying lstsq to our rows of data
- Building DataFrames and Series from Partial Results Rather than Concatenating
- Theres More Than One (and Possibly a Faster) Way to Do a Job
- Advice for Effective Pandas Development
- Wrap-Up
- 7. Compiling to C
- What Sort of Speed Gains Are Possible?
- JIT Versus AOT Compilers
- Why Does Type Information Help the Code Run Faster?
- Using a C Compiler
- Reviewing the Julia Set Example
- Cython
- Compiling a Pure Python Version Using Cython
- pyximport
- Cython Annotations to Analyze a Block of Code
- Adding Some Type Annotations
- Cython and numpy
- Parallelizing the Solution with OpenMP on One Machine
- Numba
- Numba to Compile NumPy for Pandas
- PyPy
- Garbage Collection Differences
- Running PyPy and Installing Modules
- A Summary of Speed Improvements
- When to Use Each Technology
- Other Upcoming Projects
- Graphics Processing Units (GPUs)
- Dynamic Graphs: PyTorch
- Basic GPU Profiling
- Performance Considerations of GPUs
- When to Use GPUs
- Foreign Function Interfaces
- ctypes
- cffi
- f2py
- CPython Module
- Wrap-Up
- 8. Asynchronous I/O
- Introduction to Asynchronous Programming
- How Does async/await Work?
- Serial Crawler
- Gevent
- tornado
- aiohttp
- Shared CPUI/O Workload
- Serial
- Batched Results
- Full Async
- Wrap-Up
- 9. The multiprocessing Module
- An Overview of the multiprocessing Module
- Estimating Pi Using the Monte Carlo Method
- Estimating Pi Using Processes and Threads
- Using Python Objects
- Replacing multiprocessing with Joblib
- Intelligent caching of function call results
- Random Numbers in Parallel Systems
- Using numpy
- Finding Prime Numbers
- Queues of Work
- Asynchronously adding jobs to the Queue
- Queues of Work
- Verifying Primes Using Interprocess Communication
- Serial Solution
- Naive Pool Solution
- A Less Naive Pool Solution
- Using Manager.Value as a Flag
- Using Redis as a Flag
- Using RawValue as a Flag
- Using mmap as a Flag
- Using mmap as a Flag Redux
- Sharing numpy Data with multiprocessing
- Synchronizing File and Variable Access
- File Locking
- Locking a Value
- Wrap-Up
- 10. Clusters and Job Queues
- Benefits of Clustering
- Drawbacks of Clustering
- $462 Million Wall Street Loss Through Poor Cluster Upgrade Strategy
- Skypes 24-Hour Global Outage
- Common Cluster Designs
- How to Start a Clustered Solution
- Ways to Avoid Pain When Using Clusters
- Two Clustering Solutions
- Using IPython Parallel to Support Research
- Parallel Pandas with Dask
- Parallelized apply with Swifter on Dask
- Vaex for bigger-than-RAM DataFrames
- NSQ for Robust Production Clustering
- Queues
- Pub/sub
- Distributed Prime Calculation
- Other Clustering Tools to Look At
- Docker
- Dockers Performance
- Advantages of Docker
- Wrap-Up
- 11. Using Less RAM
- Objects for Primitives Are Expensive
- The array Module Stores Many Primitive Objects Cheaply
- Using Less RAM in NumPy with NumExpr
- Objects for Primitives Are Expensive
- Understanding the RAM Used in a Collection
- Bytes Versus Unicode
- Efficiently Storing Lots of Text in RAM
- Trying These Approaches on 11 Million Tokens
- list
- set
- More efficient tree structures
- Directed acyclic word graph
- Marisa trie
- Using tries (and DAWGs) in production systems
- Trying These Approaches on 11 Million Tokens
- Modeling More Text with Scikit-Learns FeatureHasher
- Introducing DictVectorizer and FeatureHasher
- Comparing DictVectorizer and FeatureHasher on a Real Problem
- SciPys Sparse Matrices
- Tips for Using Less RAM
- Probabilistic Data Structures
- Very Approximate Counting with a 1-Byte Morris Counter
- K-Minimum Values
- Bloom Filters
- LogLog Counter
- Real-World Example
- 12. Lessons from the Field
- Streamlining Feature Engineering Pipelines with
Feature-engine
- Feature Engineering for Machine Learning
- The Hard Task of Deploying Feature Engineering Pipelines
- Leveraging the Power of Open Source Python Libraries
- Feature-engine Smooths Building and Deployment of Feature Engineering Pipelines
- Helping with the Adoption of a New Open Source Package
- Developing, Maintaining, and Encouraging Contribution to Open Source Libraries
- Streamlining Feature Engineering Pipelines with
Feature-engine
- Highly Performant Data Science Teams
- How Long Will It Take?
- Discovery and Planning
- Managing Expectations and Delivery
- Numba
- A Simple Example
- Best Practices and Recommendations
- Getting Help
- Optimizing Versus Thinking
- Adaptive Labs Social Media Analytics (2014)
- Python at Adaptive Lab
- SoMAs Design
- Our Development Methodology
- Maintaining SoMA
- Advice for Fellow Engineers
- Making Deep Learning Fly with RadimRehurek.com (2014)
- The Sweet Spot
- Lessons in Optimizing
- Conclusion
- Large-Scale Productionized Machine Learning
at Lyst.com (2014)
- Cluster Design
- Code Evolution in a Fast-Moving Start-Up
- Building the Recommendation Engine
- Reporting and Monitoring
- Some Advice
- Large-Scale Social Media Analysis at Smesh (2014)
- Pythons Role at Smesh
- The Platform
- High Performance Real-Time String Matching
- Reporting, Monitoring, Debugging, and Deployment
- PyPy for Successful Web and Data Processing Systems (2014)
- Prerequisites
- The Database
- The Web Application
- OCR and Translation
- Task Distribution and Workers
- Conclusion
- Task Queues at Lanyrd.com (2014)
- Pythons Role at Lanyrd
- Making the Task Queue Performant
- Reporting, Monitoring, Debugging, and Deployment
- Advice to a Fellow Developer
- Index
O'Reilly Media - inne książki
-
The way developers design, build, and run software has changed significantly with the evolution of microservices and containers. These modern architectures offer new distributed primitives that require a different set of practices than many developers, tech leads, and architects are accustomed to...(0,00 zł najniższa cena z 30 dni)
220.15 zł
259.00 zł(-15%) -
What is eBPF? With this revolutionary technology, you can write custom code that dynamically changes the way the kernel behaves. It's an extraordinary platform for building a whole new generation of security, observability, and networking tools.This practical book is ideal for developers, system ...(0,00 zł najniższa cena z 30 dni)
186.15 zł
219.00 zł(-15%) -
Learn how to build end-to-end scalable machine learning solutions with Apache Spark. With this practical guide, author Adi Polak introduces data and ML practitioners to creative solutions that supersede today's traditional methods. You'll learn a more holistic approach that takes you beyond speci...(0,00 zł najniższa cena z 30 dni)
262.65 zł
309.00 zł(-15%) -
Combing the web is simple, but how do you search for data at work? It's difficult and time-consuming, and can sometimes seem impossible. This book introduces a practical solution: the data catalog. Data analysts, data scientists, and data engineers will learn how to create true data discovery in ...(0,00 zł najniższa cena z 30 dni)
220.15 zł
259.00 zł(-15%) -
This updated edition of the Nutshell guide not only helps experienced Java programmers get the most out of versions through Java 17, it also serves as a learning path for new developers. Chock-full of examples that demonstrate how to take complete advantage of modern Java APIs and development bes...(0,00 zł najniższa cena z 30 dni)
220.15 zł
259.00 zł(-15%) -
Get started with Ray, the open source distributed computing framework that simplifies the process of scaling compute-intensive Python workloads. With this practical book, Python programmers, data engineers, and data scientists will learn how to leverage Ray locally and spin up compute clusters. Y...(0,00 zł najniższa cena z 30 dni)
220.15 zł
259.00 zł(-15%) -
Remove your doubts about AI and explore how this technology can be future-proofed using blockchain's smart contracts and tamper-evident ledgers. With this practical book, system architects, software engineers, and systems solution specialists will learn how enterprise blockchain provides permanen...(0,00 zł najniższa cena z 30 dni)
262.65 zł
309.00 zł(-15%) -
FinOps brings financial accountability to the variable spend model of cloud. Used by the majority of global enterprises, this management practice has grown from a fringe activity to the de facto discipline managing cloud spend. In this book, authors J.R. Storment and Mike Fuller outline the proce...(0,00 zł najniższa cena z 30 dni)
262.65 zł
309.00 zł(-15%) -
Edge AI is transforming the way computers interact with the real world, allowing IoT devices to make decisions using the 99% of sensor data that was previously discarded due to cost, bandwidth, or power limitations. With techniques like embedded machine learning, developers can capture human intu...(0,00 zł najniższa cena z 30 dni)
262.65 zł
309.00 zł(-15%) -
Why is it difficult for so many companies to get digital identity right? If you're still wrestling with even simple identity problems like modern website authentication, this practical book has the answers you need. Author Phil Windley provides conceptual frameworks to help you make sense of all ...(0,00 zł najniższa cena z 30 dni)
186.15 zł
219.00 zł(-15%)
Dzieki opcji "Druk na żądanie" do sprzedaży wracają tytuły Grupy Helion, które cieszyły sie dużym zainteresowaniem, a których nakład został wyprzedany.
Dla naszych Czytelników wydrukowaliśmy dodatkową pulę egzemplarzy w technice druku cyfrowego.
Co powinieneś wiedzieć o usłudze "Druk na żądanie":
- usługa obejmuje tylko widoczną poniżej listę tytułów, którą na bieżąco aktualizujemy;
- cena książki może być wyższa od początkowej ceny detalicznej, co jest spowodowane kosztami druku cyfrowego (wyższymi niż koszty tradycyjnego druku offsetowego). Obowiązująca cena jest zawsze podawana na stronie WWW książki;
- zawartość książki wraz z dodatkami (płyta CD, DVD) odpowiada jej pierwotnemu wydaniu i jest w pełni komplementarna;
- usługa nie obejmuje książek w kolorze.
W przypadku usługi "Druk na żądanie" termin dostarczenia przesyłki może obejmować także czas potrzebny na dodruk (do 10 dni roboczych)
Masz pytanie o konkretny tytuł? Napisz do nas: sklep[at]helion.pl.
Książka, którą chcesz zamówić pochodzi z końcówki nakładu. Oznacza to, że mogą się pojawić drobne defekty (otarcia, rysy, zagięcia).
Co powinieneś wiedzieć o usłudze "Końcówka nakładu":
- usługa obejmuje tylko książki oznaczone tagiem "Końcówka nakładu";
- wady o których mowa powyżej nie podlegają reklamacji;
Masz pytanie o konkretny tytuł? Napisz do nas: sklep[at]helion.pl.


Oceny i opinie klientów: High Performance Python. Practical Performant Programming for Humans. 2nd Edition Micha Gorelick, Ian Ozsvald (0)
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.