GPGPU-Sim兼容性问题解决方案及脚本自动化运行方法的研究
2023-10-09曹建立仲怡宁赵晨阳
曹建立, 仲怡宁, 赵晨阳
(洛阳师范学院 数学科学学院, 河南 洛阳 471934)
0 引言
GPGPU-Sim是一款用CPU来模拟GPU运行过程的模拟器软件[1]. 该模拟器的运行统计结果可以达到时钟周期的精度, 其代码和配置文件可根据用户需求来修改, 并且提供了可视化工具Aerial Vision[2]来帮助用户直观地观察Kerne内核的运行状态, 此外, 还集成了可以提供功耗报告的功耗分析模块GPUWattch[3]. 因此, GPGPU-Sim成为大量学者研究GPU体系结构、验证GPU新设计方案和调度算法的工具. 如Sahoo等[4]利用GPGPU-Sim来研究GPU缓存管理方案, Li等[5]利用GPGPU-Sim来研究Bypass技术在GPU上的应用效果, Mu等[6]利用GPGPU-Sim来研究GPU中的内存调度优化.
该模拟器基于Ubuntu10.10开发, 在Ubuntu 10.10版本和12.04版本上运行良好,但在16.04及之后的版本上运行时, 会出现动态链接库不兼容的问题. Ubuntu 10.10版本和12.04版本的操作系统分别于2010年10月和2012年4月发布, 目前看来已经比较陈旧, 大量主流的计算机硬件已经不再支持该版本的安装与运行. 于是, 对于众多通过GPGPU-Sim来研究GPU体系结构的学者来说, 继续使用该软件存在两个问题: 一方面, 目前主流的计算机硬件具备较高的运算能力, 但是因为不支持Ubuntu12.04之前的版本, 所以无法直接运行GPGPU-Sim; 另一方面, 能运行老版本Ubuntu系统的硬件大多比较陈旧, 且运行GPGPU-Sim时效率十分低下. 虽然这些问题可以通过在新硬件上运行虚拟机来解决, 但是经过实验对比, 虚拟机的运行效率很低, 性能大约是直接在硬件上运行时的2/3. 因此, 研究让GPGPU-Sim可以在新的软硬件平台上直接运行的方法, 对于广大模拟器使用者和研……
