文献综述
一﹑算法设计的背景及意义进入21世纪以来,人类的科技水平飞速发展,伴随而来的是呈指数型增长的数据规模,面临着日益增长的计算量,常规的串行程序执行速度以及处理能力已经不能满足当前的社会需要,因而并行计算势在必行。
从1986年到2002年,微处理器的性能以平均每年50%的速度不断提升。
但从2002年开始,单处理器的性能提升速度下降到每年大约20%,这个差距是巨大的。
所以,从2005年起,大部分主流的CPU制造商决定通过并行处理来快速提升微处理器的性能。
单处理器性能大幅度提升的主要原因之一是日益增加的集成电路晶体管密度。
随着晶体管尺寸减小,传递速度增快,集成电路整体的速度也加快,它们的能耗也相应增加,而在21世纪的前10年中,用空气冷却的集成电路的散热能力已经达到极限了,所以,集成电脑制造商的决策是:与其构建更快、更复杂的单处理器,不如在芯片上放置多个相对简单的处理器,这样的有多个处理器的集成电脑称之为多核处理器。
通常我们传统单核处理器上编写的程序无法利用多核处理器,我们需要使得程序充分利用处理器更快的运行程序,更加及时与逼真的模拟现实世界。
为了达到这一目的,就需要软件开发工程师将串行程序改写为并行程序。
作为开发中常使用的语言:C ,其在原始的98标准中并没有支持并行计算的库,而在11的新标准中,包含了Intel开发的TBB(Thread Building Blocks)以及Microsoft开发的PPL(Parallel Patterns Library),其功能主要包含:并行算法、任务调度、并行容器、同步原语、内存分配器,这使得C 具备了并行开发的能力。
课题毕业论文、文献综述、任务书、外文翻译、程序设计、图纸设计等资料可联系客服协助查找。