2017年的golang、python、php、c++、c、java、Nodejs性能对比[续]
2017年的golang、python、php、c++、c、java、Nodejs性能对比[续]
最近忙,这个话题放了几天,今天来个续集。 上篇传送门: 2017年的golang、python、php、c++、c、java、Nodejs性能对比(golang python php c++ java Nodejs Performance)
好了,上回的某些事有些人有异议,今天也回应下。
1.有人说python性能没那么Low?
这个我用pypy 2.7确认了下,确实没那么差, 如果用numpy或其他版本python的话,性能更快。但pypy还不完善,pypy3在beta, 所以一般情况,我是说一般情况下,这点比较让人不爽。
qiangjian@sun-pro:/works/learnCPP$ pypy -V && time pypy fib.py
Python 2.7. (aff251e54385, Nov , ::)
[PyPy 5.6. with GCC 4.2. Compatible Apple LLVM 5.1 (clang-503.0.)] real 0m0.206s
user 0m0.173s
sys 0m0.028s
2.有人说怎么没有C#、Rust、Ruby这个那个的?
我只想说语言百千万,实在太多,但精力不要放在工具上, 选择一个合适的就好。
实在想看,也有:
Language | CPU time | Slower than | Language version |
Source code |
|||
---|---|---|---|---|---|---|---|
User | System | Total | C++ | previous | |||
C++ (optimized with -O2) | 0.899 | 0.053 | 0.951 | – | – | g++ 6.1.1 | link |
Rust | 0.898 | 0.129 | 1.026 | 7% | 7% | 1.12.0 | link |
Java 8 (non-std lib) | 1.090 | 0.006 | 1.096 | 15% | 6% | 1.8.0_102 | link |
Python 2.7 + PyPy | 1.376 | 0.120 | 1.496 | 57% | 36% | PyPy 5.4.1 | link |
C# .NET Core Linux | 1.583 | 0.112 | 1.695 | 78% | 13% | 1.0.0-preview2 | link |
Javascript (nodejs) | 1.371 | 0.466 | 1.837 | 93% | 8% | 4.3.1 | link |
Go | 2.622 | 0.083 | 2.705 | 184% | 47% | 1.7.1 | link |
C++ (not optimized) | 2.921 | 0.054 | 2.975 | 212% | 9% | g++ 6.1.1 | link |
PHP 7.0 | 6.447 | 0.178 | 6.624 | 596% | 122% | 7.0.11 | link |
Java 8 (see notes) | 12.064 | 0.080 | 12.144 | 1176% | 83% | 1.8.0_102 | link |
Ruby | 12.742 | 0.230 | 12.972 | 1263% | 6% | 2.3.1 | link |
Python 3.5 | 17.950 | 0.126 | 18.077 | 1800% | 39% | 3.5.2 | link |
Perl | 25.054 | 0.014 | 25.068 | 2535% | 38% | 5.24.1 | link |
Python 2.7 | 25.219 | 0.114 | 25.333 | 2562% | 1% | 2.7.12 | link |
还有权威对比: https://benchmarksgame.alioth.debian.org/u64q/go.html 原文 https://blog.famzah.net/2016/09/10/cpp-vs-python-vs-php-vs-java-vs-others-performance-benchmark-2016-q3/
大家看看就好。
最后,就是加个大图,说明一切
但是图中没有算compile时间,对动态语言不公平。
另外, 性能相差不大的话, 谁开发效率高,谁是王者, 明显Go是未来明星(也许要加之一,哈哈),nodejs潜力不小!!!
2017年的golang、python、php、c++、c、java、Nodejs性能对比[续]的更多相关文章
- 2017年的golang、python、php、c++、c、java、Nodejs性能对比(golang python php c++ java Nodejs Performance)
2017年的golang.python.php.c++.c.java.Nodejs性能对比 本人在PHP/C++/Go/Py时,突发奇想,想把最近主流的编程语言性能作个简单的比较, 至于怎么比,还是不 ...
- Go_18: Golang 中三种读取文件发放性能对比
Golang 中读取文件大概有三种方法,分别为: 1. 通过原生态 io 包中的 read 方法进行读取 2. 通过 io/ioutil 包提供的 read 方法进行读取 3. 通过 bufio 包提 ...
- Golang 中三种读取文件发放性能对比
Golang 中读取文件大概有三种方法,分别为: 1. 通过原生态 io 包中的 read 方法进行读取 2. 通过 io/ioutil 包提供的 read 方法进行读取 3. 通过 bufio 包提 ...
- Python flask 与 GO WEB服务器性能对比
测试环境: 系统: CentOS 7.1 Mem: 8G CPU: 虚拟机16核 Python版本: python3.6 Flask版本: 0.12.2 Golang版本: 1.6.3 1.首先写一个 ...
- SNMP学习笔记之Python的netsnmp和pysnmp的性能对比
0x00 概览 用python获取snmp信息有多个现成的库可以使用,其中比较常用的是netsnmp和pysnmp两个库.网上有较多的关于两个库的例子. 本文重点在于如何并发的获取snmp的数据,即同 ...
- python最全学习资料:python基础进阶+人工智能+机器学习+神经网络(包括黑马程序员2017年12月python视频(百度云链接))
首先用数据说话,看看资料大小,达到675G 承诺:真实资料.不加密,获取资料请加QQ:122317653 包含内容:1.python基础+进阶+应用项目实战 2.神经网络算法+python应用 3.人 ...
- IEEE发布2017年编程语言排行榜:Python高居首位,java第三,php第八
2017年7月18日,IEEE Spectrum 发布了第四届顶级编程语言交互排行榜.因为有各种不同语言的排行,所以 IEEE Spectrum 依据不同的变量对流行度进行了排行.据 IEEE Spe ...
- gRPC Golang/Python使用
gRPC Golang/Python使用 以前开发网站都是用http协议,学过TCP/IP协议的人都知道,在传输层TCP的基础上,应用层HTTP就是填充了一定规则的文本. 1.gRPC使用和介绍 工作 ...
- ASP.NET Core 性能对比评测(ASP.NET,Python,Java,NodeJS)
前言 性能是我们日常生活中经常接触到的一个词语,更好的性能意味着能给我们带来更好的用户体检.比如我们在购买手机.显卡.CPU等的时候,可能会更加的关注于这样指标,所以本篇就来做一个性能评测. 性能也一 ...
随机推荐
- kettel的stream lookup报错
kettel的stream lookup报错: you can't use the 'integer-pair' algorithm when you have more than one key o ...
- OAF中的MASTER-DETAIL关系
在日常开发中,我们经常会遇到头行结构,并且要求打开界面,行是隐藏的,点击头上的"显示"按钮,才要求头对应的行信息全部显示出来,这样,我们就用到了Master-Detail结构. 下 ...
- erlang在redhat上的安装
erlang在redhat上的安装 1) 下载源码包: http://www.erlang.org/download/otp_src_17.3.tar.gz 2) RHEL6.4预安装包 $ yum ...
- RTMPdump(libRTMP) 源代码分析 5: 建立一个流媒体连接 (NetConnection部分)
===================================================== RTMPdump(libRTMP) 源代码分析系列文章: RTMPdump 源代码分析 1: ...
- PS 滤镜算法原理——曝光过度
这个算法的原理,就是将图像反相,然后分别比较原图与反相后的图三个通道的大小,将小的值输出. clc; clear all; Image=imread('4.jpg'); Image=double(Im ...
- 基于Bresenham和DDA算法画线段
直线:y=kx+b 为了将他在显示屏上显示出来,我们需要为相应的点赋值,那么考虑到计算机的乘法执行效率,我们肯定不会选择用Y=kx+b这个表达式求值,然后进行画线段. 我们应当是将它转化为加法运算. ...
- SharePoint 2013配置开发环境,需安装VS2012插件
SharePoint 2013已经安装好了,接下来就是配置开发环境,安装VS2012,但是,装好了以后,发现没有SharePoint 2013开发的支持,如下图: 然后,去网上查找资料,VS2012对 ...
- 恶补web之七:html DOM知识
html DOM定义了访问和操作html文档的标准;dom是w3c的标准,dom定义了访问html和xml文档的标准: w3c文档对象模型(dom)是中立平台和语言的接口,它允许程序和脚本动态访问和更 ...
- PowerBI开发 第十篇:R 脚本
R是一种专门用于数据分析和统计的脚本语言,广泛应用在每一个需要统计和数据分析的领域.PowerBI支持R脚本,只不过,PowerBI Desktop默认没有安装R.在使用R脚本之前,必须向PowerB ...
- AngularJs 指令directive之require
controller的用法分为两种情形,一种是require自定义的controller,由于自定义controller中的属性方法都由自己编 写,使用起来比较简单:另一种方法则是require An ...