频道栏目
读书频道 > web开发 > .NET > C#并行编程高级教程:精通.NET 4 Parallel Extension
1.1.2 并行程序设计和多核程序设计
2012-07-08 21:41:52     我来说两句
收藏   我要投稿
本书旨在帮助有经验的C#开发人员能够利用.NET Framework 4中引入的Parallel Extensions,将现代微处理器中的多核处理能力转换为应用程序的性能。无论您是刚刚开始从老的多线程模型开始转换,还是已经有过一些...  立即去当当网订购
 
在传统的顺序式代码中,指令一条接着一条运行,这种方式并不能发挥多内核的优势,因为顺序指令只能运行在一个可用内核上。使用Visual C# 2010编写的顺序代码并不能发挥多核的优势,除非利用.NET Framework 4所提供的新功能将任务分解到多个内核上。对于既有的顺序代码来说,并没有一种自动并行化的方法。
 
并行程序设计是程序设计的一种形式,以这种形式编写的代码能够充分利用底层硬件所提供的并行执行能力。并行程序设计能够在同一时刻运行很多条指令。如前所述,目前存在很多种不同的并行架构,而对这些架构进行详细分析需要完整的一本专著才行。
 
多核程序设计也是程序设计的一种形式,以这种形式编写的代码能够充分利用多个执行内核并行运行很多条指令。多核和多处理器计算机在一台计算机上提供了多个处理内核。因此,其目标在于通过将任务分布在多个可用内核上完成,以达到事半功倍的效果。
 
现代处理器可以在多个数据上执行相同的指令,Michael J. Flynn在他1966年提出的Flynn分类法中将这种方式分类为单指令多数据(Single Instruction, Multiple Data,SIMD)。通过这种方式,可以充分利用这些向量处理器来减少某些算法的执行时间。
 
本书深入探讨了两类并行程序设计:共享内存的多核程序设计和向量处理能力的应用。总体目标是要减少算法的执行时间。这些增加的处理能力还能让您在既有的软件中添加更多功能
您对本文章有什么意见或着疑问吗?请到论坛讨论您的关注和建议是我们前行的参考和动力  
上一篇:1.1.1 共享内存多核系统与分布式内存系统之间的区别
下一篇:1.2 理解硬件线程和软件线程
相关文章
图文推荐
排行
热门
最新书评
特别推荐

关于我们 | 联系我们 | 广告服务 | 投资合作 | 版权申明 | 在线帮助 | 网站地图 | 作品发布 | Vip技术培训 | 举报中心

版权所有: 红黑联盟--致力于做实用的IT技术学习网站