关于并行程序分析的一点思考

     当线宽逐渐接近物理空间上的极限的时候,摩尔定理终将成为历史。多核的盛行使得并行编程日益成为热点,因此,一个个新的并行编程模型如雨后春笋一般涌现:MPI, OpenMP, UPC, TBB, CILK, TCT, StreamIT, X10, ...... ,在这种情况下,编译器的结构也将发生变化,目前编译器对于并行程序的分析和优化处在一个尴尬的境地,如果程序员通过annotation指定某一个变量是线程共享的,那么编译器对其进行保守分析,而且保守得过头了;反之,如果程序员没有指定annotation或者关键字,编译器就会将并行代码按照串行的思路进行优化,这样做的后果是分析结果有时候是错误的,激进得过了头。抛开高层的编程模型不谈,假使我们分析的都是最原始的Pthread程序,编译器势必要在架构上进行调整,已满足对于并行程序的分析需求,在保证分析正确性的同时,给与并行程序足够多的优化。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值