检索规则说明:AND代表“并且”;OR代表“或者”;NOT代表“不包含”;(注意必须大写,运算符两边需空一格)
检 索 范 例 :范例一: (K=图书馆学 OR K=情报学) AND A=范并思 范例二:J=计算机应用与软件 AND (U=C++ OR U=Basic) NOT M=Visual
机构地区:[1]国防科学技术大学计算机学院计算机研究所,长沙410073
出 处:《计算机工程与应用》2016年第6期19-25,共7页Computer Engineering and Applications
基 金:国家自然科学基金(No.61170046);国家高技术研究发展计划(863)(No.2012AA010903)
摘 要:数据预取技术是为缓解微处理器与DRAM之间速度差异而出现的隐藏访存延迟的方法。GCC作为广泛使用的开源编译器,在tree-ssa上对循环级数组实现了预取优化。在深入分析GCC4.9循环级数组预取的基本实现机制,以及剖析基于预取收益和分析时间的三种不予预取的代价模型的基础上,得出影响循环数组预取效果的几个因素,并针对典型测试用例测试了GCC编译器循环数组预取的效果。此项工作对于改进和提高GCC现有循环级数组的预取优化有指导意义。Data prefetching is an approach to reducing cache miss latencies, which can appropriately fill the speed gap between the microprocessor and DRAM. As the widely used open source compiler collection, GCC achieves prefetching arrays used in loops on the tree-ssa. After analyzing the implementation and effects of the loop-array-prefetching in GCC4.9, and dissecting three heuristics of a cost model, which determine whether or not prefetching is profitable for a given loop based on the profitability and analysis time, after testing some benchmarks with GCC, this paper concludes several factors affecting the effect of loop-arrays-prefetching. These works provide a valuable contribution for the research and development of the loop-array-prefetching optimization in GCC.
关 键 词:GNU编译器集合(GCC) 数组预取 循环 代价模型
分 类 号:TP314[自动化与计算机技术—计算机软件与理论]
正在载入数据...
正在载入数据...
正在载入数据...
正在载入数据...
正在载入数据...
正在载入数据...
正在载入数据...
正在链接到云南高校图书馆文献保障联盟下载...
云南高校图书馆联盟文献共享服务平台 版权所有©
您的IP:3.144.149.217