diff --git a/README.md b/README.md index 59f05c9371050d20605fc0af635c5a3b369d850a..22370ca62553a56c7e5be3c879034ddf3e31617f 100644 --- a/README.md +++ b/README.md @@ -1,28 +1,81 @@ -# KSAL ZSTD -## 介绍 -存储算法加速库(简称KSAL)是华为自研的存储算法加速库,当前包括EC算法、CRC16 T10DIF算法、CRC32C算法、memcpy优化算法、DAS智能预取算法和Ceph百亿对象存储元数据zstd压缩算法。 -关于KSAL的详细特性介绍可参考[存储加速算法库](https://www.hikunpeng.com/document/detail/zh/kunpengsdss/basicAccelFeatures/ksal/kunpengksal_16_0001.html),关于zstd算法的详细特性介绍可参考[Zstandard - Real-time data compression algorithm (facebook.github.io)](https://facebook.github.io/zstd/) +# 项目介绍 -## 仓库说明 -本仓库主要用于KSAL zstd算法包的编译与安装 +存储算法加速库(简称KSAL)是华为自研的存储算法加速库,当前包括EC算法、CRC16 T10DIF算法、CRC32C算法、memcpy优化算法、DAS智能预取算法和Ceph百亿对象存储元数据zstd压缩算法。 关于KSAL的详细特性介绍可参考[存储加速算法库](https://gitee.com/link?target=https%3A%2F%2Fwww.hikunpeng.com%2Fdocument%2Fdetail%2Fzh%2Fkunpengsdss%2FbasicAccelFeatures%2Fksal%2Fkunpengksal_16_0001.html),关于zstd算法的详细特性介绍可参考[Zstandard - Real-time data compression algorithm \(facebook.github.io\)](https://gitee.com/link?target=https%3A%2F%2Ffacebook.github.io%2Fzstd%2F) -## 支持CPU -华为鲲鹏920处理器 +# 版本说明 -## 支持软件版本 -Ceph 14.2.8 -zstd 1.5.6 + + + + + + + + + + +

Kunpeng zstd

+

开源zstd

+

特性

+

v1.0.0

+

1.5.2

+

优化压缩性能

+
-## 支持操作系统 -openEuler 20.03 LTS SP1 -openEuler 22.03 LTS SP1 +# 环境部署 +鲲鹏优化后的zstd库仅支持运行在华为鲲鹏硬件平台上。 -## 使用说明 -详细使用说明可参考以下文档: -[# 编译安装KSAL zstd算法包](https://www.hikunpeng.com/document/detail/zh/kunpengsdss/basicAccelFeatures/ksal/kunpengksal_16_0025.html) +执行目录中的build.sh脚本即可编译生成相关动态库以及可执行程序,完成安装部署。 +执行安装脚本后,会编译生成相关动态库以及可执行程序。 + +动态库位于当前源码目录的zstd-Kzstar\_1.5.2/lib子目录中: + +``` +lrwxrwxrwx. 1 root root 66 Sep 17 09:49 libzstd.so -> libzstd.so.1.5.2 +lrwxrwxrwx. 1 root root 66 Sep 17 09:49 libzstd.so.1 -> libzstd.so.1.5.2 +-rwxr-xr-x. 1 root root 908552 Sep 17 09:49 libzstd.so.1.5.2 +``` + +可执行程序位于源码目录的zstd-Kzstar\_1.5.2子目录中: + +``` +lrwxrwxrwx. 1 root root 13 Sep 17 09:49 zstd +``` + +# 快速上手 + +安装生成的zstd二进制文件以及相关动态库的使用方法和开源zstd均保持一致。若鲲鹏优化版本zstd动态库位于/usr/local/kzstar/lib下,可以通过替换原有动态库或者设置环境变量LD\_LIBRARY\_PATH=/usr/local/kzstar/lib/:$LD\_LIBRARY\_PATH的方式使用鲲鹏优化版本的zstd动态库。 + +可以使用ldd命令查看上层软件程序所依赖的zstd动态库路径是否与鲲鹏优化版本zstd动态库保持一致 + +``` +[root@localhost lzbench]# ldd lzbench +linux-vdso.so.1 (0x0000ffff94bbd000) +libz.so.1 => /usr/lib64/libz.so.1 (0x0000ffff94b4f000) +libzstd.so.1 => /usr/local/kzstar/lib/libzstd.so.1 (0x0000ffff85c89000) +liblz4.so.1 => /home/kplz4/lib/liblz4.so.1 (0x0000ffff94a0d000) +libstdc++.so.6 => /usr/lib64/libstdc++.so.6 (0x0000ffff94817000) +libm.so.6 => /usr/lib64/libm.so.6 (0x0000ffff94776000) +libgcc_s.so.1 => /usr/lib64/libgcc_s.so.1 (0x0000ffff94745000) +libc.so.6 => /usr/lib64/libc.so.6 (0x0000ffff94596000) +/lib/ld-linux-aarch64.so.1 (0x0000ffff94b80000) +``` + +# 安装后验证 + +``` +[root@localhost kzstar]# ./zstd -V +*** zstd command line interface 64-bits v1.5.2, by Yann Collet *** +*** This version is optimized by Kunpeng, based on the open source zstd. *** +``` + +# 贡献指南 + +如果使用过程中有任何问题,或者需要反馈特性需求和bug报告,可以提交isssues联系我们,具体贡献方法可参考[这里](https://gitcode.com/boostkit/community/blob/master/docs/contributor/contributing.md)。 + +# 免责声明 + +此代码仓计划参与zstd软件开源,仅作性能提升,编码风格遵照原生开源软件,继承原生开源软件安全设计,不破坏原生开源软件设计及编码风格和方式,软件的任何漏洞与安全问题,均由相应的上游社区根据其漏洞和安全响应机制解决。请密切关注上游社区发布的通知和版本更新。鲲鹏计算社区对软件的漏洞及安全问题不承担任何责任。 -## 参与贡献 -如果您想为本仓库贡献代码,请向本仓库任意maintainer发送邮件; -如果您找到产品中的任何Bug,欢迎您提出ISSUE \ No newline at end of file