论文部分内容阅读
作为搜索引擎展示最终搜索结果的重要组成部分,基于查询的摘要是现代搜索引擎最常用的方法,它可以向用户展示结果文档中与检索词关联度最大的若干片段,这种基于查询的摘要可以使得搜索结果对于用户而言更直观,更具针对性。根据查询词来计算一篇文档的摘要是轻量级的任务,但是现今的搜索引擎往往要面对海量的查询请求,而每个请求所呈现的结果页面中的每个结果文档都必须根据查询词来生成相应的摘要,因此基于查询的摘要计算是现代搜索引擎系统中耗费计算资源相当大的一个部分。为了改进在大负载条件下摘要生成计算的性能和经济性,提出了一种基于CPU-GPU(Graphic Processing Unit,图形处理单元)混合系统的高性能并行处理方法。提出了一种适合GPU处理的摘要生成算法,这个算法采用了滑动窗口的文档切分方法,目的是为了避免传统的截断式文档切分法所导致的高关联度片段被切断的问题。与此同时,算法还采用了一种新的量化公式来评估一个片段与查询词的关联度。在对CPU-GPU混合系统运行特征进行分析的基础之上,对前述的摘要生成算法进行了改进。将一个摘要生成任务内部并行化的同时,还实现了任务间的并行化,并设计了一种三段式的流水线系统来支持此并行化的处理方法。为了实现此三段式流水线系统,设计了一种异步执行框架JobFlow,此框架采用基于服务的编程模式,可以支持高度的模块化和并行化的程序设计。开展了多项试验以优化系统的性能指标并评估系统的性能和经济效能。实验结果显示,与基准摘要生成算法Lucene的Highlighter组件相比较,GPU流水线处理系统获得了较高的加速比,同时能降低了系统的成本。