intel Z8300 2G 32G小主机跟树莓派3B的功耗/性能对比
具体硬件平台就不详细说了,浪费时间码字,贴一个淘宝上的配置:
有点广告的既视感,哈哈,不过我200块咸鱼收的2手,配置比这个稍低,比如CPU是Z8300,网卡是百兆的,WIFI可能也不是双频的(这个不确定。
因为linux下这玩意没驱动起来)不过我买回来不是做NAS,只是想搞个7*24在线的小服务器,映射到外网做一点小服务。所以配置差点也无所谓的样子
先来个待机功耗图:
待机2.0瓦。不过这个是算上这个220V/5V 3A的效率的,因为电源的总功率是15W(5V/3A)而目标功率小于3W,所以也算是低负载运行,所以实际功耗
应该是小于2瓦的,不像直测USB电流,测出来就是实际功耗,所以在接下来的对比中,我树莓派也用一个5V 3A的充电头来带,尽量做到情景一致
(不过考虑到不同的充电头,效率也不一样,所以还是不算严谨对比)先来个screenfetch。
-` .o+` yafeng@archlinux `ooo/ OS: Arch Linux `+oooo: Kernel: x86_64 Linux 5.3.0-arch1-1-ARCH `+oooooo: Uptime: 1h 5m -+oooooo+: Packages: 188 `/:-:++oooo+: Shell: bash 5.0.9 `/++++/+++++++: CPU: Intel Atom x5-Z8300 @ 4x 1.84GHz [40.2°C] `/++++++++++++++: GPU: `/+++ooooooooooooo/` RAM: 88MiB / 1862MiB ./ooosssso++osssssso+` .oossssso-````/ossssss+` -osssssso. :ssssssso. :osssssss/ osssso+++. /ossssssss/ +ssssooo/- `/ossssso+/:- -:/+osssso+- `+sso+:-` `.-/+oso: `++:. `-/+/ .` `/
算了,不说废话了,先记下现在测试过的结果:
空载 2.0W-2.1W,还算稳定
跑满单核(我自己写的单核计算圆周率的benchmark) 3.2W
跑满四核(同上),4.9W
Python递归算法计算斐波那契数列的40位:3.9W
测试成绩如下:
::Testing gcc installed ::>GCC installed ::===Benchmarking C=== ::Compling pi.c.. ::>Complie time:0.3423449993133545 ::>Calc time:111.01979780197144 ::Wait 10 seconds ::===Benchmarking GMP=== ::Compling gmpi.cpp.. ::>Complie time:2.5547237396240234 ::>Calc time:22.081634759902954 ::Wait 10 seconds ::===Benchmarking mtGMPi Mutithread=== ::Compling mtgmpi.c.. ::>Complie time:0.3653872013092041 ::Number of Thread: 4 ::>Calc time:65.04465556144714
嗯,记住时间就行,三个测试分别是111秒,22秒,65秒
最为比较,i7-4790K这三个成绩分别是:36.751,4.675,6.534
计算40位斐波那契数时间为:
[yafeng@archlinux fibn]$ python fib.py 102334155 151.38735151290894
比起台式机简直弱爆了哈哈。
树莓派3B,用的另外一个5V 3AUSB供电,测得空载功耗2.2W
python递归计算斐波那契数列,功耗3.4W
单线程计算圆周率: 3.4W
多线程计算圆周率:4.5-4.7W,不稳定,也有时候会蹦到4.0
[alarm@alarmpi pimark]$ python test.py ::Testing gcc installed ::>GCC installed ::===Benchmarking C=== ::Compling pi.c.. ::>Complie time:0.5492968559265137 ::>Calc time:106.87575554847717 ::Wait 10 seconds ::===Benchmarking GMP=== ::Compling gmpi.cpp.. ::>Complie time:3.184544086456299 ::>Calc time:26.894031286239624 ::Wait 10 seconds ::===Benchmarking mtGMPi Mutithread=== ::Compling mtgmpi.c.. ::>Complie time:0.5404598712921143 ::Number of Thread: 4 ::>Calc time:96.08412599563599
python递归速度有点让我不相信自己的眼睛了:
[alarm@alarmpi fibn]$ python fib.py 102334155 554.3715827465057
最终对比如下:
单线程满载,111秒 vs 106秒 3.2瓦 vs 3.4瓦 性能差距5% 树莓派小胜
多线程满载,65秒 VS 96秒 4.9瓦 vs 4.6瓦 性能差距47%,Z8300胜
python递归计算斐波那契数列: 151秒 vs 554秒 3.9瓦 vs 3.4瓦 性能差距367%,Z8300大胜
另外那个GMP单线程计算圆周率的结果是22秒 vs 26秒,Z8300 胜20%,
这里说明一下:第一个计算pi的程序,是用数组来做大数计算的,纯C语言编写。而后边俩都是用GMP大数库来做运算的,可以看作是GMP针对平台各自做一定的优化。
另外,树莓派的系统是32位系统,而Z8300系统为64位,也可能是有些项目差距过大的原因,后续我会再在树莓派64位系统做测试,看看是不是这个原因。
原文地址:https://www.cnblogs.com/yafengabc/p/11562232.html
- Educational Codeforces Round 21 D.Array Division(二分)
- Playrix Codescapes Cup (Codeforces Round #413, rated, Div. 1 + Div. 2)(A.暴力,B.优先队列,C.dp乱搞)
- [libvirt][nginx]libvirt文档访问速度提高的小技巧
- 图论----同构图(详解)
- 基数排序与桶排序,计数排序【详解】
- SG函数和SG定理【详解】
- 密码学经典之生日悖论与生日攻击【详解】
- POJ 1659 Frogs' Neighborhood(可图性判定—Havel-Hakimi定理)【超详解】
- BZOJ 1192: [HNOI2006]鬼谷子的钱袋(新生必做的水题)
- 快速傅里叶变换(FFT)算法【详解】
- Codeforces Round #416 (Div. 2)(A,思维题,暴力,B,思维题,暴力)
- 作为程序员的你在外行人眼里是一个怎样的群体?
- 高斯消元法(Gauss Elimination)【超详解&模板】
- [快学Python3]读写Excel - openpyxl库
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- ELK学习笔记之Docker Container exited with code 137
- 用这10个小技巧加速Python编程
- Dijkstra算法及其C++实现
- WPF 启动屏幕键盘
- dotnet 里的那些锁 AutoResetEvent 用法
- MySQL是如何实现事务的ACID
- 白话K8S核心组件概念
- k8s 架构、基本概念及命令
- Java API 连接 Hbase示例
- 点线图和阶梯图的画法
- 添加直线的两种方式
- nginx fastcgi模块ngx_http_fastcgi_module详细解析、使用手册、完整翻译
- Chrome代码调试指南
- Maven安装与配置
- CentOS7安装elk,并监控Nginx的access.log日志