海光CPU测试zlib性能对比

最近接了一个信创国产替代项目项目,测试了一把

配置如下:

CPU: Hygon C86 7285 32-core Processor

内存:三星 

操作系统:银河麒麟V10SP1 

内核版本:4.19.90-23.8

GCC : 7.3.0  

用的性能测试代码GitHub - jsnell/zlib-bench: Benchmark script for comparing different versions of zlib

升级了zlib的最新代码。主要对比zlib、cloudflare zlib和zlib-ng.GitHub - madler/zlib: A massively spiffy yet delicately unobtrusive compression library. 

commit: 0f51fb4933fc9ce18199cb2554dacea8033e7fd3

 GitHub - cloudflare/zlib: Cloudflare fork of zlib with massive performance improvements

commit:92530568d2c128b4432467b76a3b54d93d6350bd 

GitHub - zlib-ng/zlib-ng: zlib replacement with optimizations for "next generation" systems.

commit : 2e3e5f30a05ee7b113c755ad9a075304e02bc328

 因为海光CPU源自AMD Zen系列,所以可以加上如下参数编译, 记得要用perl的cpan安装一些依赖哦(或者从yum源里找)。

GCC 要保证gcc 支持znver1, 版本要新点

‘znver1’

AMD Family 17h core based CPUs with x86-64 instruction set support. (This supersets BMI, BMI2, F16C, FMA, FSGSBASE, AVX, AVX2, ADCX, RDSEED, MWAITX, SHA, CLZERO, AES, PCLMUL, CX16, MOVBE, MMX, SSE, SSE2, SSE3, SSE4A, SSSE3, SSE4.1, SSE4.2, ABM, XSAVEC, XSAVES, CLFLUSHOPT, POPCNT, and 64-bit instruction set extensions.)

export CFLAGS="-march=znver1"
export CXXFLAGS=${CFLAGS}

perl bench.pl --output-format=json --output-file=results.json 

压缩级别 1 3 5 6 9 (6是我临时加的,因为线上nginx用的6)

 测试结果如下:

结论:

zlib-ng > cloudflare > zlib

可以看到zlib-ng 简直是秒杀级别存在,执行时间非常短, 性能很高。cloudflare zlib性能也不错。

下一步测试下将zlib-ng集成到nginx的效果。

 

  • 3
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值