QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 7513|回复: 14
打印 上一主题 下一主题

C++多核高级编程[中文高清版]

[复制链接]
字体大小: 正常 放大

377

主题

148

听众

5980

积分

升级  19.6%

  • TA的每日心情
    奋斗
    2016-7-14 13:54
  • 签到天数: 219 天

    [LV.7]常住居民III

    社区QQ达人 元老勋章 发帖功臣 新人进步奖 优秀斑竹奖 金点子奖 原创写作奖 最具活力勋章 助人为乐奖 风雨历程奖

    群组2015年美赛冲刺

    群组高等数学串讲

    群组2014第三期英语写作

    群组SAS数据分析大赛冲刺

    群组2015美赛优秀论文解析

    跳转到指定楼层
    1#
    发表于 2014-7-25 10:42 |只看该作者 |正序浏览
    |招呼Ta 关注Ta
    编辑推荐
    - u% y$ Y) }/ E* f' q" b& ZC++多核高级编程》主要内容:并发编程和同步带来的各种缺陷、陷阱和挑战,调试和测试多核编程的方法与技术,如何使川跨下台技术米利用处理器的特定特性,操作系统在多核编程中的任务,将框架类作为并发构建块加以利用的方法,如何通过使用接口类宋降低任务同步和通信的复杂性。. H8 A- ]# W9 `
    《C++多核高级编程》适合于希望从事多核编程和多核应用程序开发的开发人员 。
    + E( c0 e. @/ C: Y; x9 m- C! e媒体推荐
    % u) X( t0 f: l! O3 N. O2 B) Y适合于希望从事多核编程和多核应用程序开发的开发人员
    9 y0 ^6 {) X. |" j) A$ O作者简介
    / j! a; \+ J& E- gCameron Hughes是一名专业的软件开发人员。他是CTEST实验室的软件工程师,同时还是Youngstown州立大学的编程人员/分析师。Cameron Hughes有着超过15年的软件开发经验,参与过各种规模的软件开发工作,从商业和工业应用到航空设计和开发项目。Cameron是Cognopaedia的设计者,目前是运行在CTEST实验室的Pantheon上的GRIOT项目的领导者。Pantheon是具有24个节点的多核集群,用于多线程搜索引擎和文本提取程序的开发。5 r3 j6 _4 M; q: L% l
    Tracey Hughes是CTEST实验室的高级图像程序员,负责开发知识和信息的可视化软件。Tracey Hughes是利用CTEST实验室的知识可视化的M.I.N.D、C.R_A.I.G、NOFAQS等项目的主要设计人员。她经常致力于Linux开发软件。她还是GRIOT项目的小组成员。
    2 U$ O& n# }2 q/ \Cameron和Tracey Hughes还是关于软件开发、多线程和并行编程方面的6本著作的作者,这6本著作是:Parallel andDistributedProgramming Using C++、Linux RapidApplicationDevelopment、Mastering the Standard C++Classes、Object-Oriented Multithreading UsingC++、Collection and Container Classes in C++和Object-OrientedI/O Using C++lostreams。 0 p9 l& j: [# m

    + [$ H/ I& E0 ]目录
    8 j: g2 ]+ s; ]7 |* K9 I9 W/ u7 i# L! m( A/ \
    序言
    & b$ @/ }# t2 O- z' l多核革命即将到来。并行处理不再是超级计算机或集群的专属领域,入门级服务器乃至基本的开发工作站都拥有硬件级和软件级并行处理的能力。问题是这对于软件开发人员意味着什么?对软件开发过程会有怎样的影响?在谁拥有速度最快的计算机的竞争中,芯片生产商更倾向于在单独的芯片上放置多个处理器,而不是提高处理器的速度。迄今为止,软件开发人员尚能依赖于新的处理器,在不对软件做出任何实际改进的情况下提高软件的速度,但是这样的情况将成为过去。为了提高总体系统性能,计算机供应商已经决定增加更多的处理器,而不是提高时钟频率。这意味着如果软件开发人员希望应用程序从下一个新的处理器受益,就必须对应用程序进行修改以利用多处理器计算机。 0 F6 B; l; i; k  U; g" s
    尽管顺序编程和单核应用程序开发仍会有一席之地,但软件开发将向多线程和多进程转变。曾经仅被理论计算机科学家和大学学术界所关注的并行编程技术,现在正处于为大多数人所接受的过程中。多核应用程序设计和开发的思想如今成为人们关注的主流。
    ! ]% N! g1 y$ S学习多核编程
    % O1 {  Y# _2 I5 L* T9 s本书使用一般软件开发人员能够理解的术语介绍多核编程的基本知识。为读者介绍了为多处理器和多线程体系结构进行编程的基础知识,对并行处理和软件并发的概念进行了实用的介绍。本书介绍的是深奥的、不易理解的并行编程技术,但将使用一种简单、可理解的方式来介绍它们。我们介绍了并发编程和同步的缺陷与陷阱以及应对之策,对多处理和多线程模型进行了直截了当的讨论。本书提供了大量的编程实例,示范了如何实现成功的多核编程。本书还包含了调试及测试多核编程的方法与技术。最后,我们示范了如何使用跨平台技术来利用处理器的具体特性。
    ! p* \/ y- x& V$ |9 t9 R: `不同的视角
    * z- o# z  s5 S7 H! O2 `* p! Y4 x本书的内容是为对多核编程和应用程序开发有着不同切入点的广大读者设计的。本书的读者包含但不限于:
    8 V$ ~1 i) ]0 E6 [0 N& ~; [  U·库及工具制作人员 # \* T7 P  `2 R+ s6 v% _  D8 j
    ·操作系统程序员 . L! r; ?- }" h
    ·内核开发人员 5 b$ V5 ]1 W5 N: i# C3 {
    ·数据库服务器及应用服务器的设计人员及实现人员 % d" B* o1 x& V7 w9 y$ z, P
    ·科学应用程序员以及使用计算密集型应用程序的用户 3 P( y3 l& q, R1 k
    ·应用程序开发人员
    5 t: ~+ @* \, e·系统程序员
    # t' D1 |. \1 X% e" y% M每组人员都会从不同的视角来了解多核计算机。有些人关心的是使用自底向上的方法,需要开发利用特定硬件和特定供应商的特性的软件。对于上述人员而言,他们希望更加详尽地介绍多线程处理的知识。其他人员可能对自顶向下的方法感兴趣,他们不希望为并发任务同步或线程安全的细节费心,而是倾向于使用高级库和工具来完成工作。还有一些人需要混合使用自底向上和自顶向下的方法。本书提供了对多核编程的多种视角的介绍,涵盖了自底向上和自顶向下的方法。
    8 k0 d6 f/ w  o* Y! t解决方案是多范型方法
    3 Y2 T( B1 U, ~! n+ S) M首先,我们承认不是每个软件解决方案都需要多处理或多线程。有些软件解决方案通过使用顺序编程技术能够更好地实现(即使目标平台是多核的)。我们的方法是以解决方案和模型作为驱动。首先,针对问题开发出模型或解决方案。如果解决方案要求某些指令、过程或任务并发地执行,那么就决定了最好使用哪组技术。这个方法同强迫解决方案或模型去适合一些预先选择的库或开发工具的方法相反。技术应当遵从解决方案。尽管本书讨论库和开发工具,但并不偏向任何具体生产商库或工具集。尽管书中包含了利用特定硬件平台的实例,但我们依赖跨平台方法,使用POSIX标准操作系统调用和库,并且仅使用国际化C++标准所支持的C++特性。
    ( ^% a3 m( X  F3 X5 |  D4 b面对多处理和多线程中的挑战和障碍,我们倡导组件方法。主要的目的是利用框架类作为并发的构建块。框架类被面向对象互斥量(mutex)、信号量(semaphore)、管道(pipe)、队列(queue)和套接字(socket)所支持。通过使用接口类,显著降低了任务同步和通信的复杂度。在我们的多线程和多处理应用程序中,控制机制主要是agent驱动。这意味着在本书中,您将看到应用程序架构支持软件开发的多范型(multiple-paradigm)方法。
    ( N8 Q) x6 R/ i' P: M3 `我们对组件实现使用面向对象编程技术,对控制机制主要使用面向agent编程技术。面向agent编程的思想有时被逻辑编程技术支持。随着处理器上可用内核数目的增加,软件开发模型将会越发地依赖面向agent编程和逻辑编程。本书包含了对软件开发的这种多范型方法的简介。 / `" }8 v) Y# ^2 p' A; E

    " k/ R' W2 Q  w5 E6 U封面4 N6 O/ N4 |+ a" j9 |* m
    1.jpg : C, S) ?; k8 c' M# [8 _
    游客,如果您要查看本帖隐藏内容请回复
    ; U/ M# x4 @1 e" q6 M6 \$ ]

    4 @+ z4 c0 M, Z- w/ k4 [5 _1 A7 F6 K/ G
    zan
    转播转播0 分享淘帖0 分享分享1 收藏收藏0 支持支持1 反对反对0 微信微信

    0

    主题

    11

    听众

    -10

    积分

  • TA的每日心情
    开心
    2017-3-26 23:18
  • 签到天数: 1 天

    [LV.1]初来乍到

    自我介绍
    感觉没什么好介绍的
    回复

    使用道具 举报

    慢跑20 实名认证       

    60

    主题

    8

    听众

    3684

    积分

  • TA的每日心情
    开心
    2017-2-22 14:21
  • 签到天数: 271 天

    [LV.8]以坛为家I

    群组2014年美赛冲刺培训

    群组物联网工程师考试

    群组2013年电工杯B题讨论群

    群组物联网工程师培训

    群组2013电工杯A题讨论群组

    回复

    使用道具 举报

    1

    主题

    13

    听众

    151

    积分

    升级  25.5%

  • TA的每日心情
    擦汗
    2019-4-16 15:20
  • 签到天数: 47 天

    [LV.5]常住居民I

    国际赛参赛者

    社区QQ达人 新人进步奖

    群组2016数学建模算法集锦

    群组2017科技论文写作

    群组天津大学数学建模讨论

    群组2016国赛备战群组

    群组Matlab讨论组

    回复

    使用道具 举报

    LYJA        

    20

    主题

    3

    听众

    375

    积分

    升级  25%

  • TA的每日心情
    开心
    2017-8-27 23:29
  • 签到天数: 61 天

    [LV.6]常住居民II

    社区QQ达人

    回复

    使用道具 举报

    逍遥浩     中国数模人才认证   

    4

    主题

    12

    听众

    2855

    积分

  • TA的每日心情
    开心
    2021-11-19 11:07
  • 签到天数: 844 天

    [LV.10]以坛为家III

    2013挑战赛参赛者

    国际赛参赛者

    社区QQ达人 新人进步奖 发帖功臣 最具活力勋章 风雨历程奖

    群组2015年数学中国“建模

    群组Matlab讨论组

    群组第一期sas基础实训课堂

    群组第三届数模基础实训

    群组2013认证赛C题讨论群组

    回复

    使用道具 举报

    181

    主题

    20

    听众

    1万

    积分

    升级  0%

  • TA的每日心情
    奋斗
    2026-1-16 08:14
  • 签到天数: 3658 天

    [LV.Master]伴坛终老

    群组2014国赛优秀论文解析

    群组2016好贷杯赛前培训

    群组2013年美赛优秀论文解

    群组2013年第二期美赛论文

    群组2013年电工杯B题讨论群

    回复

    使用道具 举报

    gancm 实名认证       

    8

    主题

    13

    听众

    1831

    积分

  • TA的每日心情

    2015-5-31 00:30
  • 签到天数: 432 天

    [LV.9]以坛为家II

    国际赛参赛者

    社区QQ达人

    群组2013电工杯A题讨论群组

    回复

    使用道具 举报

    hellocyd        

    1

    主题

    9

    听众

    227

    积分

    升级  63.5%

  • TA的每日心情
    奋斗
    2015-6-14 23:18
  • 签到天数: 120 天

    [LV.7]常住居民III

    自我介绍
    数学建模爱好者

    群组Matlab讨论组

    群组第一期sas基础实训课堂

    群组2014年网络挑战赛交流

    回复

    使用道具 举报

    772559732 实名认证       

    1

    主题

    10

    听众

    72

    积分

    升级  70.53%

  • TA的每日心情
    开心
    2015-1-31 13:43
  • 签到天数: 49 天

    [LV.5]常住居民I

    群组Matlab讨论组

    群组2014国赛优秀论文解析

    群组2014年网络挑战赛交流

    群组2013年电工杯B题讨论群

    群组2013电工杯A题讨论群组

    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 注册地址

    qq
    收缩
    • 电话咨询

    • 04714969085
    fastpost

    关于我们| 联系我们| 诚征英才| 对外合作| 产品服务| QQ

    手机版|Archiver| |繁體中文 手机客户端  

    蒙公网安备 15010502000194号

    Powered by Discuz! X2.5   © 2001-2013 数学建模网-数学中国 ( 蒙ICP备14002410号-3 蒙BBS备-0002号 )     论坛法律顾问:王兆丰

    GMT+8, 2026-4-14 13:05 , Processed in 0.769374 second(s), 109 queries .

    回顶部