论文部分内容阅读
模拟器是体系结构研究和设计的重要工具,在学术界和工业界得到广泛使用。软件全系统模拟器具有开发速度快、成本低、易于修改等特点,因此在计算机系统设计、验证,系统软件开发、调优等方面都可以发挥重要作用。然而,由于开发计算机体系结构软件模拟器通常十分困难,模拟器运行程序的时间很长以及模拟结果精度差等问题,限制了体系结构软件模拟技术在计算机系统设计中的有效性。许多研究人员已经提出了各种各样的方法和技术来解决这些问题,但是,到目前为止,这些问题还并未得到根本性解决。近年来,GPU得到了高速的发展,GPU非常适合于高效率低成本的高性能并行数值计算。而GPGPU是一种处理图形任务的专业图形处理器,具有强大的并行处理能力和可编程流水线。特别是在面对SIMD且数据处理的运算量远大于数据调度和传输的需要时,通用图形处理器在性能上大大超越了传统的CPU。另一方面,CPU由于受摩尔定律的限制,采用提高CPU制程和主频的办法遇到了工艺上的瓶颈,暂时无法突破;而从1993年开始,GPU的性能以每年2.8倍的速度增长。所以对于GPU的研究在当前学术界非常的热门,但是NVIDIA(英伟达公司)并没有公开其源代码且主流GPU模拟器更新换代较慢,导致对这方面的研究比较困难。当前学术界主流的GPU模拟器GPGPU-SIM是由UBC开发于2010年,因为其性能良好,且实验数据和物理GPU结果高度一致(矫正后数据一致性可达98%以上)被学术界广泛采用。但是其缺陷也非常明显,(1):不支持多任务抢占式操作,(2):代码陈旧且不适用于灵活多变的应用场景。本文所作的工作是自底向上的搭建了一个新的GPU模拟器即Z-GPU-Simulatoir,利用该模拟器来测试对GPU体系结构进行优化后的效果,主要工作包括以下四个部分:1:简易调试器Z-GDB的实现,该调试器能够打印寄存器状态,扫描内存,实现复杂表达式的求值。2:内存模块的实现,该步骤对内存进行模拟并且实现访问内存的读写操作,同时给予GPU以返回。3:片上网络模块的实现,构建了整个模拟器的片上网络同时模拟了信息在网络上交互的过程。4:验证了一种新的GPU作业调度策略,该设计方法参考IBM Blue Gene系列机器核间通信策略,扩展了 Cache访问之间的局部性原理,提高了核间通信机制的效率,同时对粗粒度任务调度进行了优化。