回 帖 发 新 帖 刷新版面

主题:[讨论]说一说,怎样用VS 2010开发并行软件?

随着多核处理器的快速发展,传统的应用程序再也无法顺其自然地在更高端的硬件设备上获得更高的性能回报,多核并行计算软件成为应对硬件发展解决主流解决方案,同时成为软件核心发展趋势。

因为并行编程有别于串行编程,要改变这种思维定式不但需要一段时间,更需要良好的开发平台。最新发布的VS 2010中对于并行计算开发有了良好的支持,能够便捷进行并行计算开发。

因为并行开发不仅仅是写代码这么简单,并行开发首先要从需求分析、程序的设计编写、到调试和性能优化、以及测试、发布和后期维护,这一系列的行为在串行编程的复杂性上平添了一个维度。所以需要系统的工具和模型。
 
VS  2010中为C++实现了一套并发编程框架,支持常用的协同任务调度和硬件资源(CPU和内存)管理。使开发者充分利用细颗粒度并行的优势,保证空闲的线程依照一定的顺序,从本地、全局,甚至是其他线程的任务队列中“偷取”任务执行。同时,性增的新语言和库功能,以及一系列面向任务的并行结构和算法是简化并行程序开发的另一个重要基础。

VS 2010里包含了两个新的调试器窗口和一个新的性能可视化剖析器(Profiler)。有了这两个调试器窗口,开着可以在代码同等的任务进行调试,不但可以看到任务的状态,彼此之间的关系,调用堆栈等等。还可以看到任务对应的线程,并利用一个全局的统一视图来查看所有线程的调用堆栈,以及彼此之间的关系等。

另外,VS 2010里的并行性能可视化探查器,可以帮助开发者你看到应用程序对资源的利用情况,程序的哪个部分是受计算量限制的,以及线程的执行情况,阻断的原因,线程在不同的核之间切换的情况等等。当然,我们也可以根据在线程执行的不同时间点上,跳转到相应的调用堆栈,去研究造成线程阻断的根本原因。

总之,VS 2010的新特性新技术,在简化、推动并行应用程序的开发中变的更加便捷简单。

回复列表 (共19个回复)

沙发

我还是要挑出一些Visual Studio 2010的缺陷

板凳

  主要还是机器的进步节奏跟不上需求的增长速度了

3 楼

微软云计算平台Windows Azure,这将把微软带入一个崭新的时代

4 楼

还是先用老版本的吧,新版本的等研究出来普及了再用

5 楼

我不太赞成楼上的说法,有好的为什么不用好的呢?

6 楼

深圳华信群英科技有限公司,目前主要从事软件外包开发、高级软件人才定向输送等业务,面对日益严峻的大学生就业难和IT企业招聘难,自2006以来,与知名通信软件公司正式签订定向输送人才的合作协议,针对想进入软件行业的人员提供企业实训,实训课程采用“2+3”分段教学模式,分为2个月理论强化和3个月项目实训两个阶段,共计900学时。
企业订单委培,内训前签订就业安置协议,100%保证就业。实训结束之后,在华信群英科技及其战略合作伙伴从事通信软件研发工作。欢迎有意向者加QQ:649846168咨询。

7 楼

多显示器支持:多显示器支持:比如将代码编辑器放置在主显示器中,将输出窗口,类图窗口,代码定义窗口等等提供辅助信息的窗口放置在副显示器中,这样就可以在主窗口中编辑代码,同时有需要的时候,可以及时地从辅助窗口中得到一些有用的辅助信息

8 楼

并行开发不仅仅是写代码这么简单,并行开发首先要从需求分析、程序的设计编写、到调试和性能优化、以及测试、发布和后期维护

9 楼

最新发布的VS 2010中对于并行计算开发有了良好的支持

10 楼

NET框架还为基于WF的工作流程提供重大的性能改进:改进Windows通讯基础( WCF )构架,例如流服务相关支持,双向通信的持久性等。

我来回复

您尚未登录,请登录后再回复。点此登录或注册