arXivDaily arXiv每日学术速递 周一至周五更新
arXiv 2108.09073cs.DCcs.AR
收藏

从研究到概念验证:FPGA在商业搜索引擎上的部署分析

From Research to Proof-of-Concept: Analysis of a Deployment of FPGAs on a Commercial Search Engine

Fabio Maschi, Gustavo Alonso, Anthony Hock-Koon, Nicolas Bondoux, Teddy Roy, Mourad Boudia, Matteo Casalino

摘要:

FPGA正在迅速成为云中可用的另一种异构处理元件,补充CPU和GPU。文献中有许多报告显示,FPGA具有加速各种算法的潜力,加上其不断增长的可用性,似乎也表明它在许多应用中得到了广泛的应用。不幸的是,没有太多已发表的研究探索如何以具有成本效益的方式将FPGA集成到现有应用中并保持算法性能优势。基于最近探索如何使用FPGA来改进旅游行业中使用的搜索引擎的结果,本文分析了使用FPGA时搜索引擎的端到端性能,以及对软件的必要更改和此类部署的成本。这些结果为当前的FPGA部署以及如何使FPGA得到更广泛的应用提供了重要的见解。例如,如果应用程序不能以最佳方式提交请求,则FPGA提供的巨大潜在性能增益在实践中会大大降低,这并不总是可能的,并且可能需要对应用程序进行重大更改。类似地,一些现有的云部署使用了非常不平衡的架构:一个强大的FPGA连接到一个不那么强大的CPU。结果是CPU无法为FPGA生成足够的负载,这可能会消除所有性能增益,甚至可能导致更昂贵的系统。在本文中,我们报告了一个广泛的研究和开发工作,将FPGA到一个搜索引擎,并分析遇到的问题及其实际影响。我们希望这些结果将通过提供有关FPGA在现有系统中的端到端集成的重要见解,为未来FPGA的开发和部署提供信息。

英文摘要:

FPGAs are quickly becoming available in the cloud as a one more heterogeneous processing element complementing CPUs and GPUs. There are many reports in the literature showing the potential for FPGAs to accelerate a wide variety of algorithms, which combined with their growing availability, would seem to also indicate a widespread use in many applications. Unfortunately, there is not much published research exploring what it takes to integrate an FPGA into an existing application in a cost-effective way and keeping the algorithmic performance advantages. Building on recent results exploring how to employ FPGAs to improve the search engines used in the travel industry, this paper analyses the end-to-end performance of the search engine when using FPGAs, as well as the necessary changes to the software and the cost of such deployments. The results provide important insights on current FPGA deployments and what needs to be done to make FPGAs more widely used. For instance, the large potential performance gains provided by an FPGA are greatly diminished in practice if the application cannot submit request in the most optimal way, something that is not always possible and might require significant changes to the application. Similarly, some existing cloud deployments turn out to use a very imbalanced architecture: a powerful FPGA connected to a not so powerful CPU. The result is that the CPU cannot generate enough load for the FPGA, which potentially eliminates all performance gains and might even result in a more expensive system. In this paper, we report on an extensive study and development effort to incorporate FPGAs into a search engine and analyse the issues encountered and their practical impact. We expect that these results will inform the development and deployment of FPGAs in the future by providing important insights on the end-to-end integration of FPGAs within existing systems.

机构、总结、中文摘要均由AI分析而来,可能存在错误,请以论文正文为准。

↑