应用动态生成树的GPU显存数据复用优化
【作者】
李亮
[1] ;
王恩东
[2] ;
朱正东
[1] ;
颜康
[1] ;
张保
[1] ;
董小社
[1]
【关键词】
GPU显存
动态生成树
数据复用
数据传输
【摘要】针对手工优化GPU(Graphic Processing Unit)显存级数据复用过程复杂和编译时优化数据复用开销过大的问题,提出了一种基于动态生成树在运行时进行数据复用的优化方法,可为程序员提供一种透明且高效简单的优化方式.该方法将已经执行的GPU计算任务的数据访问抽象为生成树的叶子节点,利用动态生成树管理GPU数据访问信息,实现了运行时GPU显存级数据的复用优化,并通过运行时对生成树的搜索和维护,动态地发掘和优化GPU显存级数据复用,因此,在编程时不需要进行复杂且困难的数据复用分析,直接调用文中提出的运行时库就能有效减少程序执行过程中CPU内存和GPU显存之间的冗余数据传输次数,从而提升应用的运行性能.实验结果表明,使用文中提出的优化方法可有效消除未进行数据复用优化的CPU-GPU应用程序中的冗余数据传输,最大加速比达原始执行的3~10倍,额外开销不到优化后程序总执行时间的5%.
上一篇:重复数据删除中的无向图遍历分组预测方法
下一篇:一种针对Android平台恶意代码的检测方法及系统实现