书籍详情

并行开发艺术(影印版)

并行开发艺术(影印版)

作者:Clay Breshears(布雷谢斯) 著

出版社:东南大学出版社

出版时间:2010-01-01

ISBN:9787564119294

定价:¥48.00

购买这本书可以去
内容简介
  如果你想利用并发程序设计充分发挥多核心处理器的性能,《并行开发艺术(影印版)》就为你提供了所需要的实践知识和亲身体验。《并行开发艺术》是一份难得的材料,专注于多核心处理器的共享内存模型,而不只是理论模型或分布式内存架构。《并行开发艺术(影印版)》提供了详尽的解释和可用的示例,帮助你将算法从串行代码转化为并行代码,此外还包括建议和分析,避免程序员的典型错误。作者为Intel资深工程师,拥有超过20年的并行和并发编程经验,《并行开发艺术(影印版)》将会帮助你:· 探索共享内存与分布式内存编程间的区别· 学习设计多线程程序的指导方针,包括测试和调整· 研究如何善用不同的线程库,包括Windows线程、POSIX线程、OpenMP和Intel Threading Building Blocks· 研究如何实现排序、查找、图形和其他实用计算的并行算法《并行开发艺术》向你展示如何扩展算法,以从新型的多核处理器中获益。对于开发并行算法和并发编程来说,《并行开发艺术(影印版)》不可或缺。
作者简介
  Clay Breshears博士,是Intel公司的课程架构师,专攻多核心及多线程程序设计与培训。
目录
PREFACE
1 WANT TO GO FASTER? RAISE YOUR HANDS IF YOU WANT TO GO FASTER!
Some Questions You May Have
Four Steps of a Threading Methodology
Background of Parallel Algorithms
Shared-Memory Programming Versus Distributed-Memory Programming
This Book’s Approach to Concurrent Programming
2 CONCURRENT OR NOT CONCURRENT?
Design Models for Concurrent Algorithms
What’s Not Parallel
3 PROVING CORRECTNESS AND MEASURING PERFORMANCE
Verification of Parallel Algorithms
Example: The Critical Section Problem
Performance Metrics (How Am I Doing?)
Review of the Evolution for Supporting Parallelism in Hardware
4 EIGHT SIMPLE RULES FOR DESIGNING MULTITHREADED APPLICATIONS
Rule 1: Identify Truly Independent Computations
Rule 2: Implement Concurrency at the Highest Level Possible
Rule 3: Plan Early for Scalability to Take Advantage of Increasing Numbers of Cores
Rule 4: Make Use of Thread-Safe Libraries Wherever Possible
Rule 5: Use the Right Threading Model
Rule 6: Never Assume a Particular Order of Execution
Rule 7: Use Thread-Local Storage Whenever Possible or Associate Locks to Specific Data
Rule 8: Dare to Change the Algorithm for a Better Chance of Concurrency
Summary
5 THREADING LIBRARIES
Implicit Threading
Explicit Threading
What Else Is Out There?
Domain-Specific Libraries
6 PARALLEL SUM AND PREFIX SCAN
Parallel Sum
Prefix Scan
Selection
A Final Thought
7 MAPREDUCE
Map As a Concurrent Operation
Reduce As a Concurrent Operation
Applying MapReduce
MapReduce As Generic Concurrency
8 SORTING
Bubblesort
Odd-Even Transposition Sort
Shellsort
Quicksort
Radix Sort
9 SEARCHING
Unsorted Sequence
Binary Search
10 GRAPH ALGORITHMS
Depth-First Search
All-Pairs Shortest Path
Minimum Spanning Tree
11 THREADING TOOLS
Debuggers
Performance Tools
Anything Else Out There?
Go Forth and Conquer
GLOSSARY
PHOTO CREDITS
INDEX
猜您喜欢

读书导航