开发者
鲲鹏BoostKit 技术入门:从硬件加速到场景使能,释放鲲鹏算力极限
鲲鹏BoostKit 技术入门:从硬件加速到场景使能,释放鲲鹏算力极限
发表于04/01
2460

引言:为什么要关注鲲鹏BoostKit?

在国产化浪潮与多样性计算时代,鲲鹏处理器凭借其多核、高并发、低功耗的优势,正逐步成为数据中心的核心算力底座。然而,硬件性能的释放并非仅靠CPU本身——如何充分发挥ARM架构的独特能力,如何让大数据、分布式存储、Web应用等主流场景在鲲鹏上跑得更快,成为开发者面临的核心挑战。

**鲲鹏BoostKit(应用使能套件)**正是为解决这一问题而生。它是一套面向数据中心主流场景的系统优化方案,从硬件指令集到基础软件栈,提供全栈加速能力。2025年9月,华为宣布鲲鹏BoostKit面向数据中心主要场景陆续全面开源,这意味着开发者可以自由获取这些经过生产验证的优化技术,将鲲鹏硬件算力真正转化为业务竞争力。

本文将带你从零开始,了解鲲鹏BoostKit的核心架构、关键组件,并通过实战脚本完成KAE加速引擎配置和Global Cache性能测试,让你快速上手这一强大工具。

一、鲲鹏BoostKit是什么?

1.1 定位与价值

鲲鹏BoostKit是鲲鹏计算产业生态中的关键一环,其核心使命是:通过软硬协同优化,充分挖掘鲲鹏处理器潜能,使能场景极致性能

具体而言,BoostKit解决了三类核心问题:

  • 如何发挥ARM多核优势:针对大数据、数据库等并行负载场景,优化调度与并发处理
  • 如何利用硬件加速能力:集成鲲鹏KAE加速引擎,为加密、压缩等场景提供硬件级加速
  • 如何降低开发门槛:提供与主流库兼容的加速库,开发者可无缝替换,轻松实现性能提升

1.2 架构革新:BoostCore + Boost-X 两层设计

鲲鹏BoostKit在软件架构上进行了全面革新,优化为两层结构:

BoostCore(基础加速库):提供8类基础加速库,涵盖加密、压缩、正则表达式、数学计算等领域。这些库与主流开源库接口兼容,开发者可无缝替换,实现业务性能10%-30% 的提升。目前,这些加速库已集成至openEuler社区,一键下载即可使用。

Boost-X(场景加速套件):面向十大主流场景提供一站式加速套件,包括:

  • 大数据加速套件
  • 分布式存储加速套件(含Global Cache)
  • 数据库加速套件
  • Web加速套件(含KAE)
  • 虚拟化加速套件
  • 云手机加速套件
  • 多媒体编解码加速套件

在主流场景中,Boost-X可实现性能提升20%-50%。例如,某互联网客户采用BoostKit大数据Flink算子加速后,鲲鹏920的性能领先同档次x86平台20%以上。

1.3 2025年开源里程碑

2025年9月,华为在全联接大会上宣布鲲鹏BoostKit面向数据中心主要场景陆续全面开源。首批开源的是大数据的加速套件OmniRuntime系列,后续其他场景和基础加速能力也将陆续开源。这意味着开发者和客户可以更自主、便捷地集成和使用这些优化技术,不再受商业版本限制。

二、核心组件解析

2.1 鲲鹏加速引擎KAE(Kunpeng Accelerator Engine)

KAE是集成在鲲鹏处理器内部的硬件加速引擎,支持RSA/SM3/SM4等加密算法、压缩/解压缩等操作的硬件卸载。它的特点是高性能、低功耗,能将加密计算从CPU核卸载到专用硬件,释放CPU算力用于业务处理。

典型应用场景:HTTPS网站(SSL/TLS握手)、数据库加密、存储加密等。

2.2 Global Cache(全局缓存)

Global Cache是BoostKit分布式存储场景的核心加速技术,专门针对Ceph等分布式存储系统优化。其核心技术包括:

  • IO聚合(Write Coalescing):将大量小块随机写聚合成大块顺序写,把HDD最害怕的随机写变成NVMe SSD最擅长的顺序写
  • 智能预读(Intelligent Prefetching):基于访问模式提前加载数据,提升热点数据命中率
  • Client-Server分离架构:通过RoCE v2高速网络实现低延迟数据传输,绕过TCP/IP协议栈开销

实测数据显示,开启Global Cache后,4K随机写IOPS从约2万提升至20万,提升达10倍,平均时延从10.2ms降至0.8ms,降低92%。

2.3 Hyperscan正则表达式加速库

Hyperscan是一款高性能的正则表达式匹配库,鲲鹏BoostKit针对鲲鹏微架构特征进行了深度优化。在网络安全、日志分析、入侵检测等场景中,正则匹配是核心负载,优化后的Hyperscan可显著提升处理效率。

三、实战:KAE加速引擎安装与验证

以下实战基于openEuler 22.03 LTS系统,演示如何安装并验证KAE加速引擎的效果。

3.1 环境准备

# 登录鲲鹏服务器
ssh root@your-kunpeng-ip

# 检查系统版本
cat /etc/os-release

# 安装依赖包
yum install -y kernel-devel.aarch64 wget pciutils

3.2 升级OpenSSL至1.1.1a以上

KAE要求OpenSSL版本不低于1.1.1a:

# 检查当前版本
openssl version

# 下载OpenSSL 1.1.1a源码
cd /home
wget https://codeload.github.com/openssl/openssl/tar.gz/OpenSSL_1_1_1a --no-check-certificate
mv OpenSSL_1_1_1a openssl-OpenSSL_1_1_1a.tar.gz
tar -xvf openssl-OpenSSL_1_1_1a.tar.gz

# 编译安装
cd openssl-OpenSSL_1_1_1a/
./config
make -j$(nproc) && make install

# 配置动态链接库
echo "/usr/local/lib/" >> /etc/ld.so.conf
ldconfig -v

# 配置环境变量
echo export PATH=/usr/local/bin:\$PATH >> /etc/profile
source /etc/profile

# 验证升级结果
openssl version  # 应显示 OpenSSL 1.1.1a

3.3 安装KAE加速引擎软件包

# 下载KAE RPM包(以CentOS 7.6环境为例)
cd /home
wget https://gitee.com/kunpengcompute/KAE/releases/download/v1.2.10/kae_1.3.11_CentOS.7.6.4.14.0-115.el7a.0.1.zip --no-check-certificate
unzip kae_1.3.11_CentOS.7.6.4.14.0-115.el7a.0.1.zip
cd 'kae_1.3.11_CentOS 7.6 4.14.0-115.el7a.0.1'

# 安装所有RPM包
rpm -ivh *.rpm

# 验证安装
ll /usr/local/lib/engines-1.1/  # 应看到kae.so

3.4 配置OpenSSL调用KAE引擎

# 创建OpenSSL配置文件
cat > /home/openssl.cnf << 'EOF'
openssl_conf = openssl_def

[openssl_def]
engines = engine_section

[engine_section]
kae = kae_section

[kae_section]
engine_id = kae
dynamic_path = /usr/local/lib/engines-1.1/kae.so
default_algorithms = ALL
init = 1
EOF

# 配置环境变量
echo "export OPENSSL_CONF=/home/openssl.cnf" >> /etc/profile
echo "export OPENSSL_ENGINES=/usr/local/lib/engines-1.1" >> /etc/profile
source /etc/profile

# 验证配置
echo $OPENSSL_CONF
```

### 3.5 验证加速效果

使用`openssl speed`命令对比KAE加速前后的性能:

```bash
# 不调用KAE加速(使用默认软件实现)
openssl speed -elapsed rsa2048

# 调用KAE引擎加速
openssl speed -elapsed -engine kae rsa2048
```

**预期结果**:使用KAE加速后,RSA2048签名/验签速度显著提升,耗时明显降低。

异步性能测试(适合高并发场景):

```bash
# 不调用KAE加速
openssl speed -elapsed -async_jobs 36 rsa2048

# 调用KAE引擎加速
openssl speed -engine kae -elapsed -async_jobs 36 rsa2048
```

实测数据显示,KAE加速可将RSA2048异步处理速度从约690次/秒提升至710次/秒以上。

## 四、进阶:Global Cache性能测试实战

本节演示如何在Ceph环境中部署Global Cache,并通过fio验证加速效果。

### 4.1 环境要求

- 鲲鹏920处理器(64核,2.6GHz)
- 数据盘:10块4TB SATA HDD(Ceph OSD)
- 缓存盘:2块2TB NVMe SSD(Global Cache缓存池)
- 网络:25GbE RoCE v2
- 软件:Ceph 16.2.10,BoostKit Global Cache 2.3.0

### 4.2 Global Cache部署配置

```bash
# 安装Global Cache软件包
yum install -y boostkit-gc

# 配置GC Server(在独立节点或与OSD混部)
cat > /etc/global_cache/gc_server.conf << EOF
[cache]
cache_devices = /dev/nvme0n1,/dev/nvme1n1
cache_mode = writeback
aggregation_size = 8192

[network]
listen_addr = 0.0.0.0
port = 11211
transport = rdma
EOF

# 配置GC Client(在每个Ceph OSD节点)
cat > /etc/global_cache/gc_client.conf << EOF
[server]
server_addr = 192.168.1.100
port = 11211

[backend]
osd_uuid = $(ceph osd dump | grep osd.0 | awk '{print $NF}')
EOF

# 启动服务
systemctl start gc-server
systemctl enable gc-server
systemctl restart ceph-osd.target

4.3 性能对比测试

测试脚本 ceph_perf_test.sh

#!/bin/bash
# 4KB随机写性能测试

# 安装fio
yum install -y fio

# 创建测试镜像
rbd create rbd/test_img --size 102400

# 编写fio配置文件
cat > 4k_randwrite.fio << EOF
[global]
ioengine=rbd
clientname=admin
pool=rbd
rbdname=test_img
rw=randwrite
bs=4k
iodepth=64
numjobs=16
runtime=300
time_based
group_reporting

[job1]
EOF

# 原生Ceph测试(关闭缓存)
ceph config set global rbd_cache false
echo "=== 原生Ceph测试 ==="
fio 4k_randwrite.fio --output=native_result.txt
grep -E "IOPS|lat" native_result.txt

# 开启Global Cache后测试
ceph config set global rbd_cache_target_type boostkit_gc
echo "=== Global Cache加速测试 ==="
fio 4k_randwrite.fio --output=gc_result.txt
grep -E "IOPS|lat" gc_result.txt

预期测试结果

指标原生CephGlobal Cache提升幅度
IOPS(4K随机写)~20,000~200,00010倍
平均时延10.2ms0.8ms降低92%
带宽78.6 MiB/s794.7 MiB/s10倍
CPU利用率85.2%52.7%节省38%算力

五、更多场景与资源

5.1 大数据场景

鲲鹏BoostKit大数据使能套件针对Hadoop、Spark、Flink等组件优化,提升计算并行度。某互联网客户采用Flink算子加速后,性能领先20%以上。

5.2 云手机场景

BoostKit云手机套件提供视频流引擎,支持Kbox容器部署和GPU加速,适用于云游戏、移动办公等场景。

5.3 学习资源

  • 鲲鹏BoostKit训练营:提供直播课程、实战演练,由鲲鹏技术专家授课
  • 鲲鹏社区:获取最新开源代码和文档
  • 华为开发者空间:免费云主机体验BoostKit能力

结语:拥抱开源,释放鲲鹏极致算力

鲲鹏BoostKit的全面开源,标志着鲲鹏计算生态进入新阶段。开发者不再只能“使用”优化成果,更可以“理解”优化原理、“参与”生态共建。

收藏举报
Level 1
0
帖子
0
粉丝
0
获赞