发明名称 一种前瞻多线程并行执行优化方法
摘要 本发明公开了一种前瞻多线程并行执行优化方法,其步骤如下:(1)、将串行程序划分为一个个的线程;(2)、判断线程是否前瞻执行,对于前瞻执行的线程分析每一个线程和线程的直接前驱线程之间是否存在写后读数据依赖;(3)、以设定的生产者距离与消费者距离的比值选择线程是否前瞻执行;(4)、线程前瞻执行完后验证前瞻执行结果。该方法能减少线程并行执行时的数据依赖冲突和不必要的延迟等待;本发明综合考虑了串行程序中并行效率较高的循环部分和子函数部分,能够充分挖掘程序中的写后读数据依赖,充分利用线程级并行性,并通过量化线程间写后读数据依赖,有选择地前瞻执行,能提高串行程序在多核处理器上的执行速度和处理器利用率。
申请公布号 CN101807144A 申请公布日期 2010.08.18
申请号 CN201010126624.X 申请日期 2010.03.17
申请人 上海大学 发明人 吴悦;徐磊;刘清华;杨洪斌
分类号 G06F9/38(2006.01)I 主分类号 G06F9/38(2006.01)I
代理机构 上海上大专利事务所(普通合伙) 31205 代理人 陆聪明
主权项 一种前瞻多线程并行执行优化方法,其特征在于,利用生产者距离和消费者距离来量化两个有依赖关系的线程之间的依赖程度,并根据依赖程度有选择性设计前瞻多线程并行执行模式,其具体步骤如下:(1)、对串行程序中覆盖率较高和并行效率较高的循环部分和子函数部分,将循环部分和子函数部分相应的串行程序部分划分为一个个的线程;(2)、判断线程是否前瞻执行,对于前瞻执行的线程分析每一个线程和线程的直接前驱线程之间是否存在写后读数据依赖;(3)、以设定的生产者距离R与消费者距离P的比值R/P判断并行线程之间的依赖程度选择线程是否前瞻执行;(4)、线程前瞻执行完后验证前瞻执行结果。
地址 200444 上海市宝山区上大路99号