基于FPGA的SAP原型设计

时间:2025-09-17  作者:Diven  阅读:0

SAP SE 开发人员当前正在就基于云的压缩即服务 (CaaS) 创建概念验证 (PoC)。选择利用 FPGA 来加速这一计算密集型工作负载,并计划使用 Garden Linux 操作系统 (OS) 发行版在其高性能分析设备 (High Performance AnalytICs Appliance, HANA) 云上的 Docker 容器中运行相关工作负载。有了开放式 FPGA 堆栈 (OFS),开发人员就可以利用可扩展、可访问源代码的软硬件基础设施,来简化自定义板卡和工作负载的开发。OFS 提供的灵活性使能够按照自己的首选配置开发概念验证,其模块化架构则加快了开发速度。

基于FPGA的SAP原型设计

面向英特尔 Agilex FPGA 的 OFS 版本包含一个 Docker 映像文件,与容器配合使用可快速启动开发。Docker 映像文件及用户指南可从开源 OFS 存储库获取。

背景

SAP SE 是一家总部位于巴登符腾堡州沃尔多夫镇的德国跨国软件公司,专注于开发企业运营和客户关系管理的企业级软件。

SAP HANA 是 SAP SE 开发和上市的关系数据库管理系统。SAP HANA 的列数据采用字典编码。字符串字典可能包含大量文本数据,这些数据需通过压缩来降低内存需求。目前可用的压缩算法有很多种,包括 LZ77、LZR、LZSS、LZMA、ZStandard 等,但这些算法常用于将大量信息压缩到一个模块中。如果以这种方式压缩字典,就必须解压缩整个文件才能访问单个条目,这无论是从耗时、计算效率还是功耗来看都是非常不理想的。另方案是利用上述算法逐个压缩字典条目,但由于这些算法没有针对少量数据的压缩进行优化,因此同样很低效。

对于像字符串字典这类需要随机访问压缩数据的应用而言,Re-Pair 是非常合适的压缩算法。美中不足的是,Re-Pair 属于计算密集型算法且成本高昂。由于其在中央处理器 (CPU) 上实施压缩和解压缩的时间过长,因此并未在数据管理社区中得到应用。不过,现场可编程门阵列 (FPGA) 的可编程逻辑结构经过配置后,可以大规模并行执行算法处理。这意味着像 Re-Pair 这样的算法藉此能够以相对较低的功耗在 FPGA 上快速执行。

SAP 使用的操作系统 Garden Linux 是 Debian GNU/Linux 衍生版本,旨在提供小型、可审计的 Linux 映像,供云服务提供商 (CSP) 和裸机部署使用。Garden Linux 运行当前的 LTS Linux 内核,并可为前沿企业服务器硬件提供额外的驱动程序支持。该操作系统使用经过测试的安全构建模块来构建映像,功能灵活多样,并且可根据不同的工作负载要求进行定制。

这一过程中面临的挑战是如何利用 SAP HANA 云中的 Docker 容器针对 Re-Pair 压缩工作负载部署进行原型设计。这其中,SAP HANA 云采用的是 Garden Linux OS 以及基于高性能 PCI Express (PCIe) 的 FPGA 加速卡。由于容器包含运行应用所需的一切,因此使用容器有助于初始部署,也可简化应用在服务器之间的迁移。

SAP 部署

SAP 使用共享虚拟内存 (SVM) 板级支持包 (BSP) 获取独立的英特尔 加速堆栈 2.0 (DCP2.0) OpenCL 压缩工作负载,并将其移植到 OFS。该步骤易于操作,只需将新的通用共享内存 (USM) BSP 与 OFS 堆栈一起使用即可重新编译 FPGA 编程文件。主机代码无需修改,只需用 OFS 库重新编译。

接下来,以 CentOS 7 为基础映像编写 Dockerfile,并在 Dockerfile 中实施以下步骤:

1 确保已安装或已配置依赖项。 2 定义一组环境变量。 3 克隆 OFS Git 存储库。 4 建立 OPAE。 5 安装面向 OpenCL 的英特尔 FPGA SDK v20.4。 6 设置额外的环境变量。 7 添加压缩主机代码和 FPGA 编程文件 *.aocx。 8 建立可执行主机。 9 编写运行脚本。

接着,用英特尔 FPGA 可编程加速卡(英特尔 FPGA PAC) D5005 设置服务器,设置过程需要使用 OFS 固件和 Garden Linux,其中 Garden Linux 已包含 OFS 设备功能列表 (DFL) 驱动程序。自 Garden Linux 5.15 版起,OFS DFL 驱动程序均包含在其内核中,因此 SAP 无需单独安装 DFL 驱动程序。将 Docker 容器部署到服务器上并启动。

SAP 为什么使用英特尔 OFS?

基于英特尔 FPGA 的参考平台既为 OFS 提供支持,也是其验证平台。客户和合作伙伴可利用这些平台进行应用的评估和开发,然后再将应用移植到基于 OFS 的自定义或第三方量产板卡。 

在本案例中,SAP 开发人员希望以英特尔 FPGA PAC D5005 为部署平台。英特尔 FPGA PAC D5005 是一款基于 PCI Express (PCIe) 的高性能 FPGA 加速卡,适用于数据中心。由于英特尔 Stratix 10 FPGA 的 OFS 参考平台是英特尔 FPGA PAC D5005,因此 SAP 能够在几乎无需修改 FPGA 接口管理器 (FIM) 硬件或软件的前提下,完成其容器化工作负载的部署。 

OFS 硬件由一个 FPGA 接口管理器 (FIM) 和一个加速功能单元 (AFU) 区域组成。有了 OFS,板卡 (FIM) 开发人员就可以利用提供的基础设施(基础 FIM),根据目标工作负载的接口和协议要求,为板卡快速创建个性化定制的 FIM。AFU(工作负载)开发人员可以利用提供的 FIM 和 AFU 区域以及标准化的 Arm AMBA 4 AXI 接口(高级可扩展接口),专注于创建自定义工作负载/AFU,且不必担心 FPGA 通信设计的其余工作。  

同样,借助 OFS 提供的软件框架,开发人员可以利用上游和开源内核驱动程序来加速与通用应用框架的集成。 

SAP 开发人员利用提供的基础设施和文档可将相关的 Re-Pair 压缩工作负载快速移植到英特尔 FPGA PAC D5005 上。能够快速、轻松地生成概念验证将有助于 SAP 规划其在生产环境中部署基于 FPGA 的解决方案。

SAP 所用的 OFS 功能和特性

OFS 的推出使软件、硬件和应用开发人员能够使用标准接口和应用编程接口 (API) 来加速工作负载开发并实现代码复用。 

OFS 还为不同的操作系统发行版本和部署模型(包括裸机、虚拟化和容器化模型)提供灵活性。在这种情况下,SAP 开发人员能够利用 Docker 容器来部署工作负载。这是因为从 Garden Linux 5.15 版开始,其内核都包含 OFS DFL FPGA 驱动程序。 

SAP 开发人员即使不具备精深的 FPGA 专业知识,也能利用 OFS 提供的 FIM 对 FPGA 进行重新编程。得益于模块化、易定制的架构,SAP 开发人员也可以快速轻松地对 FIM 进行修改。 

OFS 还提供两种配置选择,即扁平化设计和支持部分重配置 (PR) 的设计,使开发人员能够充分利用 FPGA 的可重新编程性。部分重配置功能具有高度灵活性,支持在设备运行时重新配置部分 FPGA——使整个基础设施保持完整性及运行状态,藉此在不中断整个系统的情况下更改配置。借助 OFS,SAP 开发人员能够在 Docker 容器内利用部分重配置功能进行概念验证。 

按照 OFS 部署流程,SAP 开发人员还可利用高级设计 (HLD) shim 组件,这种集成到 AFU 区域的组件,使 OpenCL 和 oneAPI 内核能够通过构建正确的数据包协议与运行时软件进行通信。SAP 的压缩即服务的初步概念验证目前利用 OpenCL 来运行,SAP 计划在未来的迭代中采用 oneAPI。同样,虽然基于英特尔 Stratix 10 FPGA 的 PAC D5005 是初步概念验证的开发平台,但 SAP 已计划在未来将其迁移到基于英特尔 Agilex FPGA 的加速卡。

OFS 解决了在设计基于 FPGA 的加速平台解决方案时可能面临的多种挑战,使这些解决方案可用于基于英特尔 至强 处理器的服务器。OFS 使硬件、软件和应用的开发人员可以更轻松地创建自定义加速平台和解决方案。 

OFS 提供标准接口和 API,可更好地支持代码复用、加速开发和部署。例如,借助 OFS,开发人员可以轻松部署 Docker 容器等容器化工作负载。 

最终,通过利用 OFS 提供的基础设施、源代码和文档以及基于 FPGA 的参考平台,可以将开发时间缩短数月。

编辑:黄飞

 

猜您喜欢

近期,国内气体传感器龙头厂商汉威科技收购嘉兴市纳杰微电子技术有限公司(简称:纳杰微)51%股份,纳杰微主要从事MEMS芯片的设计、制造、封测业务,纳杰微持有浙江...
2024-04-07 09:26:00

现代电子设备中,连接器是非常重要的配件。TERMINAL_28.48X8.7MM_TM是新型的连接器,因其独特的设计和优良的性能而受到关注。本文将详细介绍TER...
2025-04-22 18:30:43

熔断器作为重要的保护元件,有着着关键作用。ZYCN宗意熔断器系列很好的质量和可靠的性能,赢得了的市场认可。本文将详细介绍ZYCN宗意熔断器系列涉及的主要品牌,帮...
2021-04-06 08:22:30

你是否想过,你的手机、笔记本电脑和其电子设备是如何在不同的电压下稳定工作的?这背后默默奉献的功臣,就是DC-DC控制器。就像一个精密的能量管家,负责将一种直流电...
2024-02-15 00:00:00

扁平柔性带电缆和跳线是新型的电缆产品,应用于自动化设备、电子产品及机器人等领域。其独特的扁平结构设计,不仅节省了空间,还有效减少了电缆的摩擦和磨损,提升了使用寿...
2008-06-21 00:00:00

光纤熔接机是用于光纤连接的重要设备,应用于通信、网络建设及维护等领域。其主要功能是将两根光纤通过高温熔接的方式连接在一起,确保信号的稳定传输。现代光纤熔接机采用...
2022-08-31 00:00:00


贴片电阻的瓦数选择并非越大越好,而是取决于具体的应用场景。没有一个 universally 「最好」的瓦数,适合的才是最好的。通常,贴片电阻的常用功率范围从1/...
2024-11-26 11:29:39

汽车保险丝作为保护电路安全的重要元件,受到了越来越多车主和维修人员的关注。选择合适的汽车保险丝,不仅能够有效保护汽车电路,防止电流过载引发火灾或损坏,还能延长汽...
2025-01-11 07:17:30

NTC热敏电阻作为重要的温度传感元件,应用于家电、汽车、医疗设备等领域。奥斯特(OST)作为一家专业的NTC热敏电阻制造商,优异的产品性能和丰富的产品线,赢得了...
2024-09-25 06:48:31