功能验证在处理器芯片开发流程中所占用的时间超过70%,因此优化提升功能验证环节的效率非常必要.软件仿真等传统验证方法提供了包括断言等多种验证机制,以提升验证的细粒度可见性和自检查能力,但是软件仿真运行速度较慢,在高效性方面有...功能验证在处理器芯片开发流程中所占用的时间超过70%,因此优化提升功能验证环节的效率非常必要.软件仿真等传统验证方法提供了包括断言等多种验证机制,以提升验证的细粒度可见性和自检查能力,但是软件仿真运行速度较慢,在高效性方面有明显不足.基于FPGA的硬件原型验证方法能极大地加速验证性能,但其调试能力较弱,虽能快速发现漏洞,但难以定位漏洞出现的具体位置和根本原因,存在有效性不足难题.为同时解决上述功能验证有效性与高效性的问题,提出一种将不可综合的断言语言SVA(SystemVerilog Assertion)自动转换成逻辑等效但可综合的RTL电路的方法,聚焦于断言这一类对设计进行非全局建模、纵向贯穿各抽象层级的验证方式,对基于全局指令集架构(instruction set architecture,ISA)模型的验证能力进行补足.同时,结合FPGA细粒度并行化、高度可扩展的优势,对处理器的验证过程进行硬件加速,提升了处理器的开发效率.实现了一个端到端的硬件断言平台,集成对SVA进行硬件化的完整工具链,并统计运行在FPGA上的硬件化断言的触发和覆盖率情况.实验表明,和软件仿真相比,所提方法能取得超过2万倍的验证效率提升.展开更多
传统的三维图形处理器通过裁剪操作获取三角形的可见区域。然而,裁剪操作的延迟长且硬件开销高,大量的裁剪操作会降低图形处理器的性能。本文设计了一款基于OpenGL ES 2.0标准的三维图形处理器芯片,采用了统一渲染架构。该图形处理器采...传统的三维图形处理器通过裁剪操作获取三角形的可见区域。然而,裁剪操作的延迟长且硬件开销高,大量的裁剪操作会降低图形处理器的性能。本文设计了一款基于OpenGL ES 2.0标准的三维图形处理器芯片,采用了统一渲染架构。该图形处理器采用高效的无裁剪图形流水线结构,消除了裁剪所带来的硬件开销和性能损耗。此外,本文为该图形处理器设计了一个符合IEEE-754标准的三维向量内积(DP3)计算单元,用于固定功能流水线,以提高图形处理器的性能,并消除图形渲染过程中浮点乘加操作的误差,增强了图形处理器的图形渲染鲁棒性。该三维图形处理器每秒能够处理500 M个顶点和8 G个纹素,功耗为1000 mW,采用了28 nm工艺,面积为7.92 mm^(2)。实现结果表明,与之前的工作相比,本文设计的图形处理器的性能-功耗比提高了27.8%。展开更多
图是一种非常重要的数据结构形式,被广泛用于社交网络、交通网络和搜索引擎等领域。随着图数据规模爆发式增长,存储容量受限,分布式图计算成为处理大规模图数据的焦点。宽度优先搜索(breadth first search,BFS)算法是图遍历和许多图分...图是一种非常重要的数据结构形式,被广泛用于社交网络、交通网络和搜索引擎等领域。随着图数据规模爆发式增长,存储容量受限,分布式图计算成为处理大规模图数据的焦点。宽度优先搜索(breadth first search,BFS)算法是图遍历和许多图分析算法的基础,而在分布式图计算过程中存在严重的通信开销。针对上述问题,本文提出了一种综合的数据压缩编码优化方案,结合位图和变长压缩数组,通过更高的压缩率来降低数据通信开销;此外,还提出了一种点对点异步环形通信策略,进一步降低分布式图计算中计算-通信的同步开销。通过这些优化手段,本文在8节点的分布式集群上对优化后BFS算法的性能进行了系统评估,结果表明,当图数据规模为28时,优化后的BFS算法平均性能为46.79亿条边每秒遍历(giga-traversed edges per second,GTEPS),性能比优化前提升了接近7.82%。展开更多
随着内存密集型应用的快速发展,应用对单机内存容量的需求日益增大.然而,受到颗粒密度的限制,内存容量的扩展度较低.页交换机制是进行内存扩展的经典技术,该机制通过将较少使用的内存页面暂存在存储设备,以达到扩展内存的目的.过去页交...随着内存密集型应用的快速发展,应用对单机内存容量的需求日益增大.然而,受到颗粒密度的限制,内存容量的扩展度较低.页交换机制是进行内存扩展的经典技术,该机制通过将较少使用的内存页面暂存在存储设备,以达到扩展内存的目的.过去页交换机制由于慢速磁盘的读写速度限制,无法被广泛应用.近年来,得益于超低延迟固态硬盘(solid state drive,SSD)的快速发展,页交换机制可以利用其低延迟的读写特性,提升页交换效率.然而,在低I/O延迟的情况下,传统页交换机制的I/O栈存在巨大的软件开销.首先对使用超低延迟SSD的Linux页交换机制进行测试与分析,发现现有页交换机制的主要瓶颈在于发送请求时存在队头阻塞问题、I/O合并和调度开销,以及内核返回路径上的中断处理和直接内存回收开销.基于分析结果,提出基于超低延迟SSD的页交换机制Ultraswap.Ultraswap在Linux I/O栈的基础上增加对轮询请求的处理,并降低I/O合并与调度开销,实现轻量级的I/O栈.基于Ultraswap的I/O栈,对内核页交换机制的换入与换出路径进一步优化.通过优化对缺页、直接内存回收的处理,降低页交换机制关键路径上的时间开销.实验结果表明Ultraswap在应用测试场景下相比Linux页交换机制能够提升19%的平均性能;在可使用内存比例为20%的情况下,Ultraswap可达到33%的性能提升.展开更多
文摘顺序任务流(sequential task flow,STF)将对共享数据的访问表示为任务之间的依赖关系,STF运行时系统通过任务构造、依赖分析和任务依赖图(task dependence graph,TDG)生成、任务调度实现异步并行,这3个环节的开销直接影响并行程序的性能.目前以STF为核心的AceMesh运行时系统,在SW39000处理器上仅使用单主核构图、多从核执行的方式.然而,SW39000处理器离散访存性能较弱,细粒度任务构图离散访存增多,构图更容易成为瓶颈.对此,提出了一种利用多从核辅助主核进行构图的算法.首先,分析在依赖分析和TDG生成过程中的并行性,在SW39000处理器上实现了一种基于胖任务依赖图(fatTDG)的多核辅助并行构图算法PFBH(parallelized fatTDG building algorithm with helpers)并进行优化.其次,针对线程间的主存资源竞争问题,提出构图与执行并行中从核资源调节方法及参数选择.最终,在5类典型应用下进行实验测试.与单核串行构图系统相比,在细粒度任务场景下最高加速为1.75倍;与SW39000处理器上的OpenACC模型相比,AceMesh最高可达2倍加速.
文摘功能验证在处理器芯片开发流程中所占用的时间超过70%,因此优化提升功能验证环节的效率非常必要.软件仿真等传统验证方法提供了包括断言等多种验证机制,以提升验证的细粒度可见性和自检查能力,但是软件仿真运行速度较慢,在高效性方面有明显不足.基于FPGA的硬件原型验证方法能极大地加速验证性能,但其调试能力较弱,虽能快速发现漏洞,但难以定位漏洞出现的具体位置和根本原因,存在有效性不足难题.为同时解决上述功能验证有效性与高效性的问题,提出一种将不可综合的断言语言SVA(SystemVerilog Assertion)自动转换成逻辑等效但可综合的RTL电路的方法,聚焦于断言这一类对设计进行非全局建模、纵向贯穿各抽象层级的验证方式,对基于全局指令集架构(instruction set architecture,ISA)模型的验证能力进行补足.同时,结合FPGA细粒度并行化、高度可扩展的优势,对处理器的验证过程进行硬件加速,提升了处理器的开发效率.实现了一个端到端的硬件断言平台,集成对SVA进行硬件化的完整工具链,并统计运行在FPGA上的硬件化断言的触发和覆盖率情况.实验表明,和软件仿真相比,所提方法能取得超过2万倍的验证效率提升.
文摘图是一种非常重要的数据结构形式,被广泛用于社交网络、交通网络和搜索引擎等领域。随着图数据规模爆发式增长,存储容量受限,分布式图计算成为处理大规模图数据的焦点。宽度优先搜索(breadth first search,BFS)算法是图遍历和许多图分析算法的基础,而在分布式图计算过程中存在严重的通信开销。针对上述问题,本文提出了一种综合的数据压缩编码优化方案,结合位图和变长压缩数组,通过更高的压缩率来降低数据通信开销;此外,还提出了一种点对点异步环形通信策略,进一步降低分布式图计算中计算-通信的同步开销。通过这些优化手段,本文在8节点的分布式集群上对优化后BFS算法的性能进行了系统评估,结果表明,当图数据规模为28时,优化后的BFS算法平均性能为46.79亿条边每秒遍历(giga-traversed edges per second,GTEPS),性能比优化前提升了接近7.82%。
文摘随着内存密集型应用的快速发展,应用对单机内存容量的需求日益增大.然而,受到颗粒密度的限制,内存容量的扩展度较低.页交换机制是进行内存扩展的经典技术,该机制通过将较少使用的内存页面暂存在存储设备,以达到扩展内存的目的.过去页交换机制由于慢速磁盘的读写速度限制,无法被广泛应用.近年来,得益于超低延迟固态硬盘(solid state drive,SSD)的快速发展,页交换机制可以利用其低延迟的读写特性,提升页交换效率.然而,在低I/O延迟的情况下,传统页交换机制的I/O栈存在巨大的软件开销.首先对使用超低延迟SSD的Linux页交换机制进行测试与分析,发现现有页交换机制的主要瓶颈在于发送请求时存在队头阻塞问题、I/O合并和调度开销,以及内核返回路径上的中断处理和直接内存回收开销.基于分析结果,提出基于超低延迟SSD的页交换机制Ultraswap.Ultraswap在Linux I/O栈的基础上增加对轮询请求的处理,并降低I/O合并与调度开销,实现轻量级的I/O栈.基于Ultraswap的I/O栈,对内核页交换机制的换入与换出路径进一步优化.通过优化对缺页、直接内存回收的处理,降低页交换机制关键路径上的时间开销.实验结果表明Ultraswap在应用测试场景下相比Linux页交换机制能够提升19%的平均性能;在可使用内存比例为20%的情况下,Ultraswap可达到33%的性能提升.