Chip Multiprocessor Architecture: Techniques to Improve Throughput and Latency

· ·
· Synthesis lectures in computer architecture Book 3 · Morgan & Claypool Publishers
4.0
1 review
Ebook
145
Pages

About this ebook

Chip multiprocessors - also called multi-core microprocessors or CMPs for short - are now the only way to build high-performance microprocessors, for a variety of reasons. Large uniprocessors are no longer scaling in performance, because it is only possible to extract a limited amount of parallelism from a typical instruction stream using conventional superscalar instruction issue techniques. In addition, one cannot simply ratchet up the clock speed on today's processors, or the power dissipation will become prohibitive in all but water-cooled systems. After a discussion of the basic pros and cons of CMPs when they are compared with conventional uniprocessors, this book examines how CMPs can best be designed to handle two radically different kinds of workloads that are likely to be used with a CMP: highly parallel, throughput-sensitive applications at one end of the spectrum, and less parallel, latency-sensitive applications at the other. Throughput-sensitive applications, such as server workloads that handle many independent transactions at once, require careful balancing of all parts of a CMP that can limit throughput, such as the individual cores, on-chip cache memory, and off-chip memory interfaces. Several studies and example systems, such as the Sun Niagara, that examine the necessary tradeoffs are presented here. In contrast, latency-sensitive applications - many desktop applications fall into this category - require a focus on reducing inter-core communication latency and applying techniques to help programmers divide their programs into multiple threads as easily as possible. This book discusses many techniques that can be used in CMPs to simplify parallel programming, with an emphasis on research directions proposed at Stanford University. To illustrate the advantages possible with a CMP using a couple of solid examples, extra focus is given to thread-level speculation (TLS), a way to automatically break up nominally sequential applications into parallel threads on a CMP, and transactional memory. This model can greatly simplify manual parallel programming by using hardware - instead of conventional software locks - to enforce atomic code execution of blocks of instructions, a technique that makes parallel coding much less error-prone. Book jacket.

Ratings and reviews

4.0
1 review
A Google user
November 26, 2008
For non-practitioner(s) of computer system design or processor design, this concise book definitely helps. Anyone with enough EE background (curiosity can make up for this too!) wanting to get up to speed with recent trends in processor design, will find this useful. This is important because sooner or later, you will deal with computer systems using these innovations. Workload charectarization has a huge influence in computer system design, as well as processor design. This book focuses on the Workload charecterization issues (Throughput sensitive and Latency sensitive workloads), and how they affect processor design. You might have to look up the various benchmarks referred to in this book. Chapter 1 makes the case of CMT (chip multi-threading architecture). Chapter 2 covers Application workloads may already come with a good degree of threading already exists, and how CMT architecture exploits this property. Chapter 3 covers other considerations where legacy code with little or no direct threading can still exploit the CMT benefits via automatic Thread Level Parallelism from sequential code. It also covers recent techniques where you can get completely automated parallelization of java code. Chapter 4 covers manual programming techniques for exploiting CMT.
Did you find this helpful?

Rate this ebook

Tell us what you think.

Reading information

Smartphones and tablets
Install the Google Play Books app for Android and iPad/iPhone. It syncs automatically with your account and allows you to read online or offline wherever you are.
Laptops and computers
You can listen to audiobooks purchased on Google Play using your computer's web browser.
eReaders and other devices
To read on e-ink devices like Kobo eReaders, you'll need to download a file and transfer it to your device. Follow the detailed Help Center instructions to transfer the files to supported eReaders.