0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

【经验分享】在Omni3576上编译Redis-8.0.2源码,并安装及性能测试

电子发烧友论坛 2025-06-05 08:05 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

本文原文地址:‍https://bbs.elecfans.com/jishu_2490618_1_1.html‍

作者:@xusiwei1236

本文首先介绍Redis是什么,然后介绍如何在Omni3576上编译Redis-8.0.2源码,以及从源码编译、安装Redis,最后介绍如何在Omni3576上运行Redis性能测试,并与树莓派5上的结果进行对比。

一、Redis是什么

维基百科的介绍是:

Redis是一个使用ANSI C编写的开源、支持网络、基于内存、分布式、可选持久性的键值对存储数据库。

Redis官网的介绍是:

The open source, in-memory data store used by millions of developers as a database, cache, streaming engine, and message broker.

数以百万计的开发人员用作数据库、缓存、流式处理引擎和消息代理的开源内存数据存储。

二、源码编译Redis

2.1 安装git和编译工具链

# 安装 git 和编译工具链
sudo apt install git build-essential

2.2 下载Redis源码

安装完git之后,就可以使用git下载Redis源码了:

git clone https://github.com/redis/redis.git -b 8.0.2 --depth=1

其中,-b参数用于指定版本,--depth参数用于指定只下载一条提交记录(这样下载的数据更少,耗时更短)。

2.3 编译Redis源码

使用如下命令编译Redis源码:

make MALLOC=jemalloc -j 4

编译命令最后输出如下:

c559a828-41a0-11f0-986f-92fbcf53809c.png

可以看到,最后提示链接(LINK)的有三个可执行程序,分别为:

redis-server Redis服务程序,用于提供服务;

redis-benchmark Redis基准测试程序,用于进行性能测试;

redis-cli Redis命令行程序,用于操作Redis服务中的数据;

2.4 安装Redis

使用如下命令将Redis可执行程序安装到系统目录:

sudo make install

命令输出如下:

c56ce62c-41a0-11f0-986f-92fbcf53809c.png

可以看到,前面提到的三个可执行程序都安装了,安装目录为/usr/local/bin,可以用which redis-cli命令验证:

c57d97a6-41a0-11f0-986f-92fbcf53809c.png

三、运行Redis基准测试

3.1 查看redis-server用法

初次使用之前,使用redis-server --help命令,可以查看redis-server命令行选项用法:

c5979dcc-41a0-11f0-986f-92fbcf53809c.png

3.2 设置overcommit_memory选项

直接运行redis-server --check-system命令,检查Redis所需系统环境:

c5aa124a-41a0-11f0-986f-92fbcf53809c.png

提示必须打开Memory overcommit配置,打开overcommit_memory选项,需要执行的命令也给出了提示:

sudo sysctl vm.overcommit_memory=1

或者将该配置写入到配置文件中,重启之后依然能够生效:

echo 'vm.overcommit_memory = 1' | sudo tee -a /etc/sysctl.conf

设置完成后,重启,再次检测:

c5b7dd26-41a0-11f0-986f-92fbcf53809c.png

这次全部OK了。

3.3 启动redis-server

使用redis目录下的配置文件,启动redis-server服务:

c5c6a5cc-41a0-11f0-986f-92fbcf53809c.png

3.4 查看redis-benchmark用法

使用redis-benchmark --help命令,可以查看redis-benchmark命令行选项用法:

c5d93d54-41a0-11f0-986f-92fbcf53809c.png

c5e63d6a-41a0-11f0-986f-92fbcf53809c.png

3.5 运行redis-benchmark基准测试

默认参数执行redis-benchmark,将会连接到本地主机的redis服务,并执行所有基准测试用例:

c5f2b554-41a0-11f0-986f-92fbcf53809c.png

(-q选项仅输出query/sec,不输出其他统计信息)

可以看到大部分命令的QPS(Query per second)能达到39000多。

3.6 与RK3588-Rock5B测试结果对比

在RK3588-Rock5B开发板上,使用同样的操作,运行同样版本的redis-server和redis-benchmark,得到的测试结果如下:

c607a3b0-41a0-11f0-986f-92fbcf53809c.png

可以看到,大部分QPS在79000,成绩好于RK3576,主要是内存速度更快、Cache更大的原因.

四、本篇总结

本文首先介绍Redis是什么,然后介绍如何在Omni3576上编译Redis-8.0.2源码,以及从源码编译、安装Redis,最后介绍如何在Omni3576上运行Redis性能测试,并与树莓派5上的结果进行对比。Redis单机基准测试成绩主要取决于CPU、内存、缓存的综合性能。

五、参考链接

Redis官网:https://redis.io/

Redis源码仓:https://github.com/redis/redis/

Redis码云镜像仓(国内下载速度较快):https://gitee.com/mirrors/redis

树莓派OS镜像下载页面:https://www.raspberrypi.com/software/operating-systems/

树莓派OS启动分区config.txt说明:https://www.raspberrypi.com/documentation/computers/config_txt.html

树莓派OS启动分区cmdline.txt说明:Raspberry Pi Documentation - Configuration



c6140664-41a0-11f0-986f-92fbcf53809c.jpg

c635bc82-41a0-11f0-986f-92fbcf53809c.png

声明:本文由电子发烧友社区发布,转载请注明以上来源。如需平台(包括:试用+专栏+企业号+学院+APP+技术直播+三方社区)合作及入群交流,请咨询15994832713(微信同号),或者发邮箱liuyong@huaqiu.com,谢谢!

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 源码
    +关注

    关注

    8

    文章

    682

    浏览量

    31098
  • 性能测试
    +关注

    关注

    0

    文章

    227

    浏览量

    22257
  • Redis
    +关注

    关注

    0

    文章

    390

    浏览量

    12066
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    【新品体验】幸狐Omni3576边缘计算套件免费试用

    幸狐Core3576 核心板为边缘计算提供强大的算力,搭载八核64位CPU、ARM Mali-G52 MC3 GPU,集成6 TOPS算力的NPU,具备强大的计算和图形处理能力。Omni3576
    发表于 01-21 14:51

    【幸狐Omni3576边缘计算套件试用体验】开箱与系统安装

    RKDevTool并进入刷机状态,具体参考官方教程。 导入下载后的固件,因为计划安装在emmc,所以选择了emmc版本的固件。 烧写完成后重启Omni3576开发板即可,不要像教程一样再通过
    发表于 03-03 22:47

    【幸狐Omni3576边缘计算套件试用体验】Debian系统安装性能测试

    /1CO_sQQQh_Iws7XgpRv8JEg?pwd=7eq4 2.2 安装驱动 RK驱动助手 下载链接: https://files.luckfox.com/wiki/Omni3576/TOOLS
    发表于 03-06 22:05

    【幸狐Omni3576边缘计算套件试用体验】资源传输与 Home Assistant 连接

    【幸狐 Omni3576 边缘计算套件测评】资源传输与 Home Assistant 连接 本文介绍了幸狐 Omni3576 边缘计算开发板实现资源传输的测评内容,包括文件传输、无线连接、摄像头连接
    发表于 03-18 16:47

    【幸狐Omni3576边缘计算套件试用体验】RKNN 推理测试与图像识别

    【幸狐 Omni3576 边缘计算套件测评】RKNN 推理测试与图像识别 本文介绍了幸狐 Omni3576 边缘计算套件实现 RKNN 推理和图像物体识别的测试流程,包括 RKNN 介
    发表于 03-20 16:14

    【幸狐Omni3576边缘计算套件试用体验】DeepSeek 部署及测试

    【幸狐 Omni3576 边缘计算套件测评】DeepSeek 部署及测试 本文介绍了幸狐 Omni3576 边缘计算套件实现 DeepSeek 部署及测试的相关流程,包括模型介绍、部署
    发表于 03-21 19:31

    【幸狐Omni3576边缘计算套件试用体验】车牌识别

    模型样本数量、提高识别分辨率、更新算法模型、扩充迭代次数等。 ​ ​ 总结 本文介绍了幸狐 Omni3576 边缘计算套件实现车牌识别的项目设计和部署方案,包括模型介绍、推理测试、板端部署、程序运行和效果展示等,分析了结果和误
    发表于 04-01 02:45

    【幸狐Omni3576边缘计算套件试用体验】人脸识别

    Omni3576 边缘计算套件实现人脸特征识别的项目设计和部署方案,包括算法介绍、推理测试、板端部署、程序运行和效果展示等,分析了结果和误差产生原因,给出了相应的解决方案,为智能识别相关项目提供了参考。
    发表于 04-01 21:46

    【幸狐Omni3576边缘计算套件试用体验】测试USB 摄像头

    apt-get install libv4l-dev sudo apt-get install cmake 考虑到Omni3576开发板SoC强大的处理能力,直接在板子编译安装m
    发表于 04-09 23:50

    【幸狐Omni3576边缘计算套件试用体验】幸狐Omni3576开发板移植YOLOV10和推理测试

    ,也就是说基本可以Omni3576部署RKNN-Toolkit2工具)运行 RKNN-Toolkit2工具,将训练好的模型转换为 RKNN 格式模型,之后使用 RKNN C AP
    发表于 05-24 12:27

    【幸狐Omni3576边缘计算套件试用体验】Redis最新8.0.2版本源码安装性能测试

    本文首先介绍Redis是什么,然后介绍如何在Omni3576编译Redis-8.0.2源码,以
    发表于 06-03 01:28

    【昉·星光 2 高性能RISC-V单板计算机体验】Redis源码编译性能测试以及与树莓派4B对比

    本文首先介绍Redis是什么,然后介绍如何在VisionFive2编译Redis源码,以及从源码
    发表于 12-10 21:27

    【爱芯派 Pro 开发板试用体验】Redis源码编译和基准测试

    本文首先介绍Redis是什么,然后介绍如何在爱芯派上编译Redis源码,以及从源码安装
    发表于 12-10 22:18

    幸狐Omni3576边缘计算套件开箱与系统体验

    ,只好作罢。   最后来一个官方的介绍   Luckfox Omni3576 主控采用Rockchip RK3576 处理器,该处理器采用先进的 8nm 制程工
    的头像 发表于 03-05 17:03 1185次阅读
    幸狐<b class='flag-5'>Omni3576</b>边缘计算套件开箱与系统体验

    幸狐Omni3576开发板移植YOLOV10和推理测试

    因为Omni3576搭载了RockchipRK3576处理器,该处理器采用先进的8nm制程工艺,集成了6TOPS算力的NPU。NPU跟RK3588一致,所以这款Omni3576必须试试AI相关功能。一、RKNN简介RKNN-To
    的头像 发表于 06-24 08:04 1001次阅读
    幸狐<b class='flag-5'>Omni3576</b>开发板移植YOLOV10和推理<b class='flag-5'>测试</b>