发明名称 CPU+MIC异构平台下的大涡模拟算法优化处理方法
摘要 本发明涉及一种CPU+MIC异构平台下的大涡模拟算法优化处理方法,首先,进行核心分析改进,根据获取的各个调用函数的比重,对程序中的核心代码进行优化修改;CPU端,进行循环嵌套优化,对循环中的动态数组进行私有化处理,并进行核心循环并行化处理;MIC端,进行循环嵌套优化,挖掘程序中的指令级并行;以及异构协同,通过数据传输和负载均衡处理,完成CPU+MIC协同优化处理。本发明实现3D线性大涡模拟程序在异构平台的移植,有效提升程序的运行效率和执行性能,相对原始代码,优化后的程序在异构平台上获得24X加速效。
申请公布号 CN106383961A 申请公布日期 2017.02.08
申请号 CN201610863835.9 申请日期 2016.09.29
申请人 中国南方电网有限责任公司电网技术研究中心;南方电网科学研究院有限责任公司 发明人 戴涛;张乾坤;丁伟;蒙家晓;黄建理;洪超;方萌;王志明;单征;韩林;郭绍忠;孟虹松
分类号 G06F17/50(2006.01)I;G06F9/50(2006.01)I 主分类号 G06F17/50(2006.01)I
代理机构 郑州大通专利商标代理有限公司 41111 代理人 周艳巧
主权项 一种CPU+MIC异构平台下的大涡模拟算法优化处理方法,其特征在于:包含如下步骤:步骤1、利用性能分析器对大涡模拟程序中的调用函数进行剖析,获取各个调用函数的比重,根据比重对程序中的核心代码进行优化修改;步骤2、针对CPU端程序代码,进行循环嵌套优化,对循环中的动态数组进行私有化处理,并通过ICC编译器对程序中的核心循环自动进行并行化处理;步骤3、针对MIC端程序代码,进行循环嵌套优化,通过循环剥离和多版本生成来获取若干对齐指令,同时进行尾循环展开,挖掘程序中的指令级并行;步骤4、通过数据传输和负载均衡处理,保持MIC端变量空间不释放,回传CPU端需要数据,通过分配CPU端和MIC端计算量,缩短两端计算时间的时间差,完成CPU+MIC协同优化处理。
地址 510000 广东省广州市萝岗区科学城科翔路11号