-
Book Overview & Buying
-
Table Of Contents
-
Feedback & Rating
The C++ Programmer's Mindset
By :
Modern hardware is extremely complicated and possesses a large number of facilities for making code run more quickly and efficiently. It is important that a programmer understands all the tools at their disposal when solving problems, particularly when chasing performance, and this certainly includes the hardware of the computer and the operating system that works closely with the hardware.
In this chapter, we take a brief look at some of the crucial pieces of hardware, including the various parts of the processor, such as cache memory and single instruction multiple data (SIMD) extensions, and the main memory. We will see some examples of how we can design algorithms that make use of the cache memory on the processor and make use of SIMD instructions to greatly improve the throughput of the processor. We will look at higher-level parallelism through multithreading with OpenMP and making use of operating system facilities to make sure the application...