Python Benchmarking
Language: English
Published by Independently Published, 2023
- Softcover
- New

Seller: PBShop.store UK, Fairford, GLOS, United KingdomPBShop.store UK
AbeBooks seller since June 11, 1999
Condition: New
£ 23.01
Quantity: Over 20 available
Add to basketItem description from seller
Seller Inventory # L0-9798865481171
- Title
- Python Benchmarking
- Author
- Brownlee, Jason
- Publisher
- Independently Published
- Publication year
- 2023
- Condition
- New
- Binding
- PAP
- Language
- English
- ISBN 13
- 9798865481171
- Item weight
- 503 grams
- Series
- Book 3 of 3: Python Concurrency By Example
Without benchmarking, we're working in the dark.
Python code can be slow.Benchmarking is a way of discovering exactly how long code takes to execute. Without benchmarking, we have no idea whether changes make code run faster or not.
You need to know:
- How to benchmark statements, functions, and programs using the time module.
- How to develop benchmarking helper functions, context managers, and decorators.
- How to benchmark snippets of code using the timeit module.
Benchmarking is required to develop fast Python code.
Python provides 5 built-in functions for reporting the current time. The problem is, that many developers use just one, the time() function, and are unaware of how inappropriate it is for benchmarking. Instead, we should be using the perf_counter() function.
Python also provides the timeit module with API and command line interface specifically designed for benchmarking. It encodes best practices such as repeated execution of target code and use of a high-precision timing function. Nevertheless, few developers use it because it is confusing. The trick is to adopt the "timeit" mindset.
Introducing: "Python Benchmarking". A new book designed to teach you how to bring modern benchmarking practices to your projects, super fast!
You will get fast-paced tutorials showing you how to benchmark your Python code, as well as some much-needed advice on advanced topics, such as:
- How to benchmark asyncio programs and coroutines.
- How to choose the precision and units of measure when reporting benchmark results.
- Why it is a good idea to repeat benchmark tests many times and report average results.
- How profiling is not benchmarking but can help in deciding what to optimize.
Each tutorial is carefully designed to teach one critical aspect of how to effectively benchmark Python code.
Table of Contents
- Tutorial 01: Introduction.
- Tutorial 02: Benchmarking Python.
- Tutorial 03: Benchmarking With time.time()
- Tutorial 04: Benchmarking With time.monotonic()
- Tutorial 05: Benchmarking With time.perf_counter()
- Tutorial 06: Benchmarking With time.thread_time()
- Tutorial 07: Benchmarking With time.process_time()
- Tutorial 08: Comparing time Module Functions
- Tutorial 09: Benchmark Metrics
- Tutorial 10: Benchmark Repetition
- Tutorial 11: Benchmark Reporting
- Tutorial 12: Benchmark Helper Function
- Tutorial 13: Benchmark Stopwatch Class
- Tutorial 14: Benchmark Context Manager
- Tutorial 15: Benchmark Function Decorator
- Tutorial 16: Gentle Introduction to Asyncio
- Tutorial 17: Benchmarking Asyncio With loop.time()
- Tutorial 18: Benchmark Helper Coroutine
- Tutorial 19: Benchmark Asynchronous Context Manager
- Tutorial 20: Benchmark Coroutine Decorator
- Tutorial 21: Benchmarking With The timeit Module
- Tutorial 22: Benchmarking With timeit.timeit()
- Tutorial 23: Benchmarking With The timeit Command Line
- Tutorial 24: Profile Python Code
- Tutorial 25: Benchmarking With The time Command
- Tutorial 26: Conclusions
Learn Python benchmarking correctly, step-by-step.
"Synopsis" may belong to another edition of this title.
PBShop.store UK
Fairford, GLOS, United Kingdom
AbeBooks seller since June 11, 1999
Shipping rates from United Kingdom to U.S.A.
| Item | 10 to 20 business days | 10 to 20 business days |
|---|---|---|
| First item | £ 5.02 | £ 5.02 |
Payment methods
Store description
Specialty
Hardbacks, PaperbacksSeller's business information
Pbshop.co.uk
Unit 22 Horcott Industrial Estate, Horcott Road
Fairford, United Kingdom GL7 4BX
Terms of sale
Returns Policy
We ask all customers to contact us for authorisation should they wish to return their order. Orders returned without authorisation may not be credited.
If you wish to return, please contact us within 14 days of receiving your order to obtain authorisation.
Returns requested beyond this time will not be authorised.
Our team will provide full instructions on how to return your order and once received our returns department will process your refund.
Please note the cost to return any unwanted order to us is borne by the buyer.
Should your order arrive damaged, not as advertised or faulty, we must be advised of this within 14 days of delivery. Please contact us so we can find the best solution for you.
Our Customer Care Team can be contacted by emailing alborders@paperbackshop.co.uk, or by calling our UK Office on +441285 712 917. We are available 9:00am till 5:30pm GMT Monday to Friday.
Right of withdrawal
If you are a consumer you can withdraw from the contract in accordance with the following. Consumer means any natural person who is acting for purposes which are outside his trade, business, craft or profession.
Information regarding the right of withdrawal
Statutory right to withdraw
You have the right to withdraw from this contract within 14 days without giving any reason.
The withdrawal period will expire after 14 days from the day on which you acquire, or a third party other than the carrier and indicated by you acquires, physical possession of the last good or the last lot or piece.
To exercise the right of withdrawal, electronically fill in and submit a clear statement on our website, under "My Purchases" in "My Account". We will communicate to you an acknowledgement of receipt of such a withdrawal on a durable medium (e.g. by e-mail) without delay.
To meet the withdrawal deadline, it is sufficient for you to send your communication concerning your exercise of the right of withdrawal before the withdrawal period has expired.
Effects of withdrawal
If you withdraw from this contract, we will reimburse to you all payments received from you, including the costs of delivery (except for the supplementary costs arising if you chose a type of delivery other than the least expensive type of standard delivery offered by us).
We may make a deduction from the reimbursement for loss in value of any goods supplied, if the loss is the result of unnecessary handling by you.
We will make the reimbursement without undue delay, and not later than 14 days after the day on which we are informed about your decision to withdraw from this contract.
We will make the reimbursement using the same means of payment as you used for the initial transaction, unless you have expressly agreed otherwise; in any event, you will not incur any fees as a result of such reimbursement.
We may withhold reimbursement until we have received the goods back, or you have supplied evidence of having sent back the goods, whichever is the earliest.
You shall send back the goods or hand them over to PBShop.store UK, Fairford, United Kingdom, +44 1285 712917, without undue delay and in any event not later than 14 days from the day on which you communicate your withdrawal from this contract to us. The deadline is met if you send back the goods before the period of 14 days has expired. You will have to bear the direct cost of returning the goods. You are only liable for any diminished value of the goods resulting from the handling other than what is necessary to establish the nature, characteristics and functioning of the goods.
Exceptions to the right of withdrawal
The right of withdrawal does not apply to:
- The delivery of newspapers, journals or magazines with the exception of subscription contracts; and
- The supply of digital content which is not supplied on a tangible medium (e.g. on a CD or DVD) if you accepted when you placed your order that we could start to deliver it, and that you could not withdraw once delivery had started.
Shipping terms
Orders are shipped from our UK warehouse. Delivery thereafter is between 4 and 14 business days. Please contact us if you have any queries about our services or products.