Concurrent NumPy in Python: Faster NumPy With BLAS, Python Threads, and Multiprocessing

SuperFastPython.com
2,0
1 koment
Libër elektronik
474
Faqe
I përshtatshëm

Rreth këtij libri elektronik

Concurrency in NumPy is not an afterthought


* Discover matrix multiplication that is 2.7x faster.

* Discover array initialization that is up to 3.2x faster.

* Discover sharing copied arrays that is up to 516.91x faster.


NumPy is how we represent arrays of numbers in Python.


An entire ecosystem of third-party libraries has been developed around NumPy arrays, from machine learning and deep learning to image and computer vision and more.


Given the wide use of NumPy, it is essential we know how to get the most out of our system when using it.


We cannot afford to have CPU cores sit idle when performing mathematical operations on arrays.


Therefore we must know how to correctly harness concurrency in NumPy, such as:


* NumPy has multithreaded algorithms and functions built-in (using BLAS).

* NumPy will release the infamous GIL so Python threads can run in parallel.

* NumPy arrays can be shared efficiently between Python processes using shared memory.


The problem is, no one is talking about how.


Introducing: "Concurrent NumPy in Python". A new book designed to teach you how to bring concurrency to your NumPy programs in Python, super fast!


You will get fast-paced tutorials showing you how to bring concurrency to the most common NumPy tasks.


Including:


* Parallel array multiplication, common math functions, matrix solvers, and decompositions.

* Parallel array filling and parallel creation of arrays of random numbers.

* Parallel element-wise array arithmetic and common array math functions

* Parallel programs for working with many NumPy arrays with thread and process pools.

* Efficiently share arrays directly, and copies of arrays between Python processes.


Don't worry if you are new to NumPy programming or concurrency, you will also get primers on the background required to get the most out of this book, including:


* The importance of concurrency when using NumPy and the cost of approaching it naively.

* How to perform common NumPy operations and math functions.

* How to install, query, and configure BLAS libraries for built-in multithreaded NumPy functions.

* How to use Python concurrency APIs including threading, multiprocessing, and pools of workers.


Each tutorial is carefully designed to teach one critical aspect of how to bring concurrency to your NumPy projects.


Learn Python concurrency correctly, step-by-step.

Vlerësime dhe komente

2,0
1 koment

Rreth autorit

Jason Brownlee, Ph.D. helps Python developers bring modern concurrency methods to their projects with hands-on tutorials. Learn more at https://SuperFastPython.com


Jason is a software engineer and research scientist with a background in artificial intelligence and high-performance computing. He has authored more than 20 technical books on machine learning and has built, operated, and exited online businesses.

Vlerëso këtë libër elektronik

Na trego se çfarë mendon.

Informacione për leximin

Telefona inteligjentë dhe tabletë
Instalo aplikacionin "Librat e Google Play" për Android dhe iPad/iPhone. Ai sinkronizohet automatikisht me llogarinë tënde dhe të lejon të lexosh online dhe offline kudo që të ndodhesh.
Laptopë dhe kompjuterë
Mund të dëgjosh librat me audio të blerë në Google Play duke përdorur shfletuesin e uebit të kompjuterit.
Lexuesit elektronikë dhe pajisjet e tjera
Për të lexuar në pajisjet me bojë elektronike si p.sh. lexuesit e librave elektronikë Kobo, do të të duhet të shkarkosh një skedar dhe ta transferosh atë te pajisja jote. Ndiq udhëzimet e detajuara në Qendrën e ndihmës për të transferuar skedarët te lexuesit e mbështetur të librave elektronikë.