Fedor G. Pikus - The Art of Writing Efficient Programs: An advanced programmers guide to efficient hardware utilization and compiler optimizations using C++ examples
Here you can read online Fedor G. Pikus - The Art of Writing Efficient Programs: An advanced programmers guide to efficient hardware utilization and compiler optimizations using C++ examples full text of the book (entire story) in english for free. Download pdf and epub, get meaning, cover and reviews about this ebook. year: 2021, publisher: Packt Publishing, genre: Computer. Description of the work, (preface) as well as reviews are available. Best literature library LitArk.com created for fans of good reading and offers a wide selection of genres:
Romance novel
Science fiction
Adventure
Detective
Science
History
Home and family
Prose
Art
Politics
Computer
Non-fiction
Religion
Business
Children
Humor
Choose a favorite category and find really read worthwhile books. Enjoy immersion in the world of imagination, feel the emotions of the characters or learn something new for yourself, make an fascinating discovery.
- Book:The Art of Writing Efficient Programs: An advanced programmers guide to efficient hardware utilization and compiler optimizations using C++ examples
- Author:
- Publisher:Packt Publishing
- Genre:
- Year:2021
- Rating:5 / 5
- Favourites:Add to favourites
- Your mark:
The Art of Writing Efficient Programs: An advanced programmers guide to efficient hardware utilization and compiler optimizations using C++ examples: summary, description and annotation
We offer to read an annotation, description, summary or preface (depends on what the author of the book "The Art of Writing Efficient Programs: An advanced programmers guide to efficient hardware utilization and compiler optimizations using C++ examples" wrote himself). If you haven't found the necessary information about the book — write in the comments, we will try to find it.
Get to grips with various performance improvement techniques such as concurrency, lock-free programming, atomic operations, parallelism, and memory management
Key Features- Understand the limitations of modern CPUs and their performance impact
- Find out how you can avoid writing inefficient code and get the best optimizations from the compiler
- Learn the tradeoffs and costs of writing high-performance programs
The great free lunch of performance taking care of itself is over. Until recently, programs got faster by themselves as CPUs were upgraded, but that doesnt happen anymore. The clock frequency of new processors has almost peaked. New architectures provide small improvements to existing programs, but this only helps slightly. Processors do get larger and more powerful, but most of this new power is consumed by the increased number of processing cores and other extra computing units. To write efficient software, you now have to know how to program by making good use of the available computing resources, and this book will teach you how to do that.
The book covers all the major aspects of writing efficient programs, such as using CPU resources and memory efficiently, avoiding unnecessary computations, measuring performance, and how to put concurrency and multithreading to good use. Youll also learn about compiler optimizations and how to use the programming language (C++) more efficiently. Finally, youll understand how design decisions impact performance.
By the end of this book, youll not only have enough knowledge of processors and compilers to write efficient programs, but youll also be able to understand which techniques to use and what to measure while improving performance. At its core, this book is about learning how to learn.
What you will learn- Discover how to use the hardware computing resources in your programs effectively
- Understand the relationship between memory order and memory barriers
- Familiarize yourself with the performance implications of different data structures and organizations
- Assess the performance impact of concurrent memory accessed and how to minimize it
- Discover when to use and when not to use lock-free programming techniques
- Explore different ways to improve the effectiveness of compiler optimizations
- Design APIs for concurrent data structures and high-performance data structures to avoid inefficiencies
This book is for experienced developers and programmers who work on performance-critical projects and want to learn different techniques to improve the performance of their code. Programmers who belong to algorithmic trading, gaming, bioinformatics, computational genomics, or computational fluid dynamics communities can learn various techniques from this book and apply them in their domain of work.
Although this book uses the C++ language, the concepts demonstrated in the book can be easily transferred or applied to other compiled languages such as C, Java, Rust, Go, and more.
Table of Contents- Introduction to Performance and Concurrency
- Performance Measurements
- CPU Architecture, Resources, and Performance Implications
- Memory Architecture and Performance
- Threads, Memory, and Concurrency
- Concurrency and Performance
- Data Structures for Concurrency
- Concurrency in C++
- High-Performance C++
- Compiler Optimizations in C++
- Undefined Behavior and Performance
- Design for Performance
Fedor G. Pikus: author's other books
Who wrote The Art of Writing Efficient Programs: An advanced programmers guide to efficient hardware utilization and compiler optimizations using C++ examples? Find out the surname, the name of the author of the book and a list of all author's works by series.