论文部分内容阅读
随着互联网技术的发展与应用的深化,各种数据呈爆炸式增长,数据密集型应用的负载特性与传统应用具有很大区别,传统处理器利用时空局部性提升性能的方法将不再适用。因此,针对大数据问题的微处理器体系结构研究成为了学术界关注的热点,流处理器体系结构就是其中值得探索的一个方向。图搜索问题是一类典型的大数据问题,Graph500就采用了BFS算法作为其benchmark。本文面向BFS算法研究面向大数据处理的流处理器体系架构,研究数据通路的测试分析、设计和优化。本文主要从以下几个方面展开研究:第一,通过对混合BFS并行算法的访存行为以及数据摆放方式的研究,发现了在既定的流处理器体系结构下该算法的访存模式。并且基于FPGA和DDR3平台,测试和研究存控在不同访存模式下的带宽表现,接着通过更改MIG内核,定制了一个适于BFS算法的存控访存策略。经过访存策略的选择和定制后,使得混合BFS并行算法在既定流处理器体系结构下的性能得到了51%的提升。第二,设计了一系列该流处理器架构下的性能测试工具与分析方法。为了评估流处理器性能,提出了包括用平均队列长度分析通路堵塞情况、用模块平均时延判断数据通路功能模块性能等一系列分析方法,并依据方法设计了相关测试工具。测试工具以多应用对比并精准定位模块的方式,设计了包括计数标记法在内的多种测试具体实现。设计的测试工具和分析方法在该流处理器结构下有很强的适用性,并且能够通过测试分析确定该处理瓶颈所在。第三,通过研究影响数据通路总控接口带宽的各个因素,设计了一个性能较好且资源开销合适的数据通路总控接口,达到了总控接口高带宽的目标。并且研究了数据通路并行化方式,基于该流处理器架构下,设计了一套拥有包括三级缓存、轮序仲裁等机制在内的高并行度交叉开关。新交叉开关的实现使得处理器整体性能得到了37.5%的提升。第四,根据流处理器体系结构架构特点,设计了相适应的远程访存机制,并依此实现了远程访存接口。使得流处理器可以进行多节点间的远程访存操作,为多节点并行处理大数据问题提供了硬件支持。最后通过Top-down、Bottom-up和混合算法验证了远程访存机制的正确性,性能分别为0.89MTEPs、5.23MTEPs和74.44MTEPs。