前言
作为嵌入开发平台,往往需要数据库进行存储等,所以数据库的性能也是综合性能的关键因素。数据库的性能综合反映了CPU性能,存储IO性能,这一篇就基于嵌入式中使用最广泛的sqlite3进行测试。
过程
Win下下载代码
https://www.sqlite.org/2022/sqlite-amalgamation-3400000.zip
解压
拷贝到WSL中
mv -f /mnt/d/sqlite-amalgamation-3400000/ .
代码如下
lhj@lhj:~$ tree sqlite-amalgamation-3400000/
sqlite-amalgamation-3400000/
|-- shell.c
|-- sqlite3.c
|-- sqlite3.h
`-- sqlite3ext.h
0 directories, 4 files
lhj@lhj:~$
编译
cd sqlite-amalgamation-3400000/
aarch64-linux-gnu-gcc sqlite3.c shell.c -o sqlite -lpthread -ldl
生成可执行文件sqlite
导出到win下
cp sqlite /mnt/d
导入到开发板
添加可执行权限
chmod +x sqlite
运行./sqlite
性能测试
cd ..
git clone https://github.com/sqlite/sqlite.git
test/speedtest1.c程序估计典型工作负载下SQLite的性能。
将speedtest1.c复制到上面的源码路径,一起编译
cp sqlite/test/speedtest1.c sqlite-amalgamation-3400000
cd sqlite-amalgamation-3400000/
aarch64-linux-gnu-gcc sqlite3.c speedtest1.c -o speedtest1 -lpthread -ldl
cp speedtest1 /mnt/d
导入 speedtest1到开发板,
添加可执行权限
chmod +x speedtest1
运行
./speedtest1
和之前测试的瑞萨G2UL开发板对比
https://bbs.elecfans.com/jishu_2324837_1_1.html68.801s
45.8比G2UL(Cortex-A55)的这块开发板的68.8秒要快一点。
和EMMC存储,CPU等都有关系。所以数据库的性能可以作为综合性能测试参考。
总结
基于sqlite3进行数据库性能测试,横向对比某G2UL(Cortex-A55)开发板,测试结果性能比其高不少,说明本开发板综合性能非常不错。