你的位置:水利图书 >> >> 电脑编程 >> 详细内容 在线投稿

Intel Threading Building Blocks编程指南

热度69票 浏览20次 【共0条评论】【我要评论 时间:2010年6月10日 14:34
水利图书w3I,n$dS

Intel Threading Building Blocks编程指南

,\_SO a&Q,]0

9hK:abt)h6K _0水利图书i ^5XA)A/^

k;LB*e^.w0作  者: (美)仁达敬(Reinders,J) 著;聂雪军 等译水利图书 _/o/Bbf:@~ Dh%q u

;?,~Y&Rl$mL6r d:tu0出 版 社: 机械工业出版社

&M dhd#n ~Q0 水利图书K_#T G h!f

出版时间: 2009-1-1水利图书k BvQy8?e5A)z

水利图书2B5f FoL _;G9B3p

字  数:水利图书 ?G8o UH

n_!U*yNy8M7a&q0版  次: 1

MgZc.t4|a.V2d0 水利图书}"t9TuR'w

页  数: 323水利图书:R#`Dj%ED'p"o

水利图书S_ g{ RE;M:A#@

印刷时间: 2009-1-1

-j-d{!B;W1?+qq0 水利图书CD(g}SXA+R&M

开  本: 16开水利图书"vMOw}eX

6Q[&u2gOr I0印  次: 1

oH#omC ?0 水利图书 [G:` og0a5w8w t

纸  张: 胶版纸

4q*n+q4QL I|0

y0BqI D9B7jy0I S B N : 9787111242314水利图书x-K|(nk:Bg

水利图书 }2^"A*a9{f.I

包  装: 平装

Qp^Q U]"D-u0

v%@Z]+b-kks!\0所属分类: 图书 >> 计算机/网络 >> 程序设计 >> 其他

XJ a3j}+e5F2C G0

7m.a)^3d@f j OT0编辑推荐水利图书4?*|5d t8x'ib

水利图书ra_8k'j^ ~Y

“串行计算的时代已经结束了……本书很好地介绍了线程构建模块库,无论是初学者还是专家,都能通过本书清晰地理解并发的复杂性。”水利图书'?j vn[3UH

水利图书0h$m!t _7J&X1rA

——Charles E.Leiserson,麻省理工大学计算机与人工智能实验室

p} Y_0g"L0 水利图书&y2QBdo

 “我们通常习惯说,首先要使程序正确,然后再提高程序的速度。现在,我们无需这么做。TBB使我们在正确地设计程序的同时,还能提升Maya前台视图的速度。本书将向你展示如何通过在代码中使用TBB来获得最大的性能提升。”

9w T:SN"s bO0

\B`0bD^,D!S%R0——Martin Watt,Autodesk公司高级软件工程师

I!LhX(NS1`z8v0

QR[}b0  本书介绍了如何通过Intel线程构建模块来最大限度地利用多核处理器的强大性能。TBB是一个可移植的C++库,能够运行在Windows、Linux、Macintosh以及uNIx等系统上。本书阐述了在多线程编程中的关键任务以及如何通过TBBE上可移植的和稳定的方式来实现它们。书中包含了大量的示例和丰富的资料,给出了常见的使用模式,揭示了TBB中的精彩之处,并且还提供了一些指导意见,用来在不同的并行编程方式上进行选择以获得最佳的性能。本书的内容包括:水利图书 k`Bo.X:J

水利图书 E2Q_:s5I m(q

  " 充分利用多核系统中并行语义的简单且高效的方式。水利图书$z"R}2_/G

水利图书rA Z8`&s f8b

  " 编写并行程序的关键问题。

2u!J#]Et u0

.k Ps"x6O*\!n(u*c$b0  " 多线程中的常见模式。

\"H%Wgri-P.E.i0 水利图书(O,H3MaPg6X1s

  " 用于高效处理的线程安全容器。

Y z v+R&qxU+hN0

o0hGqMV0  " 任务调度。

Osf'z? @ga N V0

2k W*rEX U2I r0  " 在线程环境中的内存管理。水利图书l2o$u+q q^

水利图书@!`6Wd:B F"v

  本书说明了TBB能够比原始线程更方便地在c++中指定并行语义,同时还可以提升程序的性能、可移植性以及可伸缩性。在开始学习TBB时,并不要求具备并行编程或者多核处理器的经验。任何希望在多核系统上编写软件的程序员,都能够从本书中获益。水利图书[$?4Thss

G Y*qH7R:kSf`W0内容简介水利图书MF/@:m-p"\ GU

o%v3`+]K7_0多核处理器的出现使得并行编程成为了每个程序员关注的主题。不具备多处理器核的计算机系统已经变得越来越少。本书为c++程序给出了并行编程的解决方案,它既不要求放弃c++,也不要求使用那些裸线程或者本地线程。水利图书\Q|!br)OT

2O;gS+jq6q0  本书介绍的是Intel线程构建模块。线程构建模块是一个用来实现并行语义的c++模板库,它对c++进行了扩展,抽象出了线程管理机制并支持简明的并行编程。在使用这个库时,你所要指定的是任务而不是线程,然后库将高效自动地将这些任务映射到线程上。如果希望程序在处理器核不断增加的情况下也能够继续运行,那么这种方式将带来许多好处。与裸线程相比,线程构建模块能够使你更方便地表达并行语义,同时还能够提高程序的性能,可移植性和可扩展性。在使用本书时,你无需任何并行编程经验或者在多核处理器上的编程经验。无论你是拥有丰富的并行编程经验,还是对并行编程一无所知,本书的内容都将是非常有用的。此外,本书也不要求之前是否对线程有所了解。

YU kuU#I&J2@0 水利图书2zEI3GU.r

作者简介水利图书o,Fy"DG5T

水利图书 @3A!QBi[){\

James Reinders(仁达敬),Intel软件开发产品部门的首席讲师。他是一位高级工程师,于1989年加入Intel公司。他在许多项目上做出了贡献,包括世界上第一台万亿次浮点运算超级计算机(ASCI Red)以及iWarp、Pentium Pro、Pentium Ⅱ、Itanium、Pentium 4等处理器上的编译器和架构工作。他在处理器架构、编译器优化、并行计算机架构以及为软件开发人员编写工具产品上有着多年的经验。

'W*^ s }@;S)x'{0

^zY8|8a i0  Reinders还是WWW.goparallel.com网站上月刊“The Gauntlet”的专栏编辑,他还编写了《VTune Performance Analyzer Essentials》(Intel Press)一书,并参与编写了《Multi—Core Programming》(Intel Press)一书。水利图书&OK,np7N ` ?2J'n`

!t7c2i6Eq$q0目录

-R$b G!tz5M0 水利图书Y&?A6M&d2O

致中文版读者

xk3`UJ S0

o h9w\&@8^)^}0

WX(^s p0 水利图书j6Nt4C\M-L8lT

Intel线程构建模块首席开发师的笔记水利图书6_j3H H(gH-`

水利图书2vT$WHO6~M]8H8w0M

前言

WKM_CI \E.g0 水利图书&u)Hz\'[@ w6@

第1章 为什么需要线程构建模块

(S C2A'\daD2w6fN0

:Ngbgx1N'~ A&B?3t0 简介水利图书FDz9E@n.G[4U}Z

)h*Pl2f Io4{9S"w0 优势

3t:k-EG|$}0 水利图书t8m"vfLM

第2章 并行思维 水利图书_\"~$o3A

水利图书oC4Y5U:u

 并行思维的要素水利图书LS&@l;n:I]

水利图书/HH'T z4mLn

 分解

r#y N?-F0 水利图书zJ%d,a]?%u Gk

 扩展性与加速性水利图书H%cR;vn]4u%o]

4kz'u!z!X \!wY%C c"`,r0什么是线程

$U)` pwV:uo3c0 水利图书 tg,LW~]WEFo8^

互斥和锁水利图书C!A5`k4rg"|[

.IRqP#h#k[0正确性

)u CS*it;|o0

c;r eb [0抽象

.e}+x4}4hY0

M!r3HK'si8f0模式水利图书0v Ga#N,`?Et7G

水利图书&K hl?L{ a(g&hO

直觉思维水利图书0l ah!I}

;?s'v*dFoZ g a0第3章 基本算法

VT%Zr ym LE0 水利图书EezRjv;Fh

库的初始化和结束水利图书"Ta*E5N#Z3s

水利图书S Uy7p!~Fg

循环的并行化水利图书hoCl4_*? V

+du Q{)OlKZ:Cd0递归区间的定义

2M,mfWH$Y*Ng[0

1Y6i$[3bs0对循环的小结

EQ o.nEY8h0

p WW'|Ce5Gz0第4章 高级算法

cZ0v5M/WQ0

o4Yl ^!?? g5E0用于流的并行算法

C'k:~GN'[:LK0

%H@ k zfu5d0第5章 容器水利图书+o k'P/T5_ W ]

%D9[?6?nBZ0 cocurrent_queue水利图书W+RWudl~3}

%f}b,\+^@:xh0 ConCUrrent_VeCtOr水利图书%yde_)S|4N3V*g

水利图书dDJ{ jzs.G~

 concurrent_hash_map

+{Tj3_\X r.d?0 水利图书6OWM;?N igS x"z

第6章 可扩展的内存分配.水利图书A Zx+K(z_0@df5j*q

水利图书T#X'Lf9r5q bss}#M

 限制

e],g8s;Eqc}t.c4s0

3yl?.q Vp {z {0 内存分配中的若干问题水利图书@/yp'Z2UW

水利图书q'Q;aO6WFP

 内存分配器水利图书dOTY0_ n9Un

.]M7Lz0[/F0 替换malloc、new和delete

#B&q C7_V&L0 水利图书 ?9J^/l0|G

第7章 互斥水利图书 l/Ar d/S^F9N

水利图书$?^X)JFZ%B

何时使用互斥

`8}2e$}uL5C0 水利图书'n-x2F:k |6p

Mutexes水利图书W b-N@m,{ Sy

,JY v]9R:w9Z m^0 互斥量

D7Cg6HJoM?0 水利图书(k!T:z8Ut8o0K+Br

 原子操作

fLD*me.cY(b0 水利图书,F K+Z3MQ%Hi

第8章 计量水利图书0v4gh I!wS/G

"GiTe8FX \0第9章 任务调度器水利图书k,@U9z`

n(H%T~XQ,o'M4B0第10章 成功的关键因素

(Fq%r+ow,p3J0

Sd9`n!Os9s8hB0第11章 编程示例

I&b~,e$i e._7z0 水利图书5iH+m"pG

第12澡 发展历程及相关项目水利图书3r#b;U:?"sK(Y#?

水利图书^#g K3_OHu

书摘插图

f#Y3pMh k HJ0 水利图书Ivq6yE4B

第1章 为什么需要线程构建模块水利图书_q)l U2xu

\G$D+i9X }}x;e-l0  简介

"V9xEolG7{GU0 水利图书rD2?^mr3{

  多核处理器正在变得日益普及,而利用现有的线程软件包来编写一个简单的paralle_for循环却是一项乏味的工作。要编写一个高效的可扩展(scalable)程序则更为困难。可扩展性体现的是这样的概念:随着处理器中核数量的增加,程序的性能能够得到相应的提升。

"A6WrYv~.^0

To/U ~F$Rw0  随着在新推出的处理器中有着越来越多的核,使用线程构建模块来编写程序将帮助你从中获得许多好处。水利图书*KvR1M&x Zu

水利图书C\G'Ve8Z

  线程构建模块是一个用来支撑可扩展并行编程的库,它是用标准的C++代码实现的。它不需要专门的语言或者编译器。线程构建模块可以几乎应用于所有处理器或者操作系统上的任何一种c++编译器中,这种强大的功能对于程序员来说是非常有吸引力的。

|e#v[,xVOk%F0

oux[2@2~L3O6d0  线程构建模块通过模板来提供常见的并行迭代模式,这使得程序员即使在不具备同步、负载均衡以及快存优化等专门知识的情况下,也能够从多核处理器中获得性能提升。使用线程构建模块编写的程序既能够运行在单核处理器的系统上,也能够运行在多核处理器的系统上。线程构建模块促进了可扩展数据并行编程技术的发展。此外,它还支持嵌套并行,因此你可以很容易地从小型的并行组件中构建出大型的并行组件。在使用这个库时,你需要指定的是任务,而不是线程,然后再通过这个库以高效的方式将任务自动映射到线程。因此,与裸线程(Raw Thread)相比,线程构建模块能够更方便地实现并行,并获得更优的结果。

oQ2u nE&k?0 水利图书']ryG'zV

  ……

5TTE8GH^? P@0R,S0
顶:3 踩:4
对本文中的事件或人物打分:
当前平均分:-0.36 (22次打分)
对本篇资讯内容的质量打分:
当前平均分:-0.82 (22次打分)
【已经有18人表态】
下一篇:Linux设备驱动开发入门与编程实践
上一篇:ASP.NET 3.5核心编程(微软技术丛书)

水资讯网广告招租

查看全部回复【已有0位网友发表了看法】

广告投放

广告投放