bob战队 rust_c、rust、golang、swift性能比较
mac
计算速度视觉判断是(由好到差):c > rust > swift > golang
内存开销在mac上是(由好到差):c > rust > golang > swift
注:例子都是采用uint64可溢出方式计算fib
如图:
生成文件大小、占用线程数:
c 8.3 KB 1
swift 48 KB (2.2) 47 KB (3.0) 1
rust 348 KB 1
golang 1.6 MB (1.6.2) 1.1 MB (1.7rc2) 4 (1.6.2) 5 (1.7rc2)
注:golang的缺省线程数与CPU核心数有关。
ubuntu
计算速度视觉判断是(由好到差):rust > c > swift > golang
内存开销在ubuntu上是(由好到差):c > golang > swift > rust
如图:
生成文件大小、占用线程数:
c 8.6 KB 1
swift 18 KB 1
rust 652 KB 1
golang 1.7 MB 5
Windows
计算速度视觉判断是(由好到差):c(gcc) > golang > rust > c(vs2015)
内存开销在windows上是(由好到差):c(gcc) > c(vs2015) > rust > golang
如图:
生成文件大小、占用线程数:
c (gcc) 67.7 KB 1
c (vs2015) 94.5 KB 1
golang 1.03 MB 5
rust 1.76 MB 1
fib代码描述:
如果输入整数 num <= 2,返回 1;
否则 返回 fib (num - 2) + fib (num - 1)。
例子:计算1~100的fib。
编译:
语言(mac/ubuntu/windows): 命令
c (llvm7.3.0:clang-703.0.31/gcc5.2.1/MinGW:gcc4.9.3 with -std=c11): gcc -Os test_c.c -o test_c
(vs2015:cl 19.00.24210): cl /Os test_c.c /link /out:test_c_VS2015.exe
rust (rustc 1.10.0 and cargo 0.11.0): cargo build --release
golang (go1.6.2/go1.5.1/go1.7rc1): go build -ldflags "-s -w" test_go.go
swift (swift 2.2/swift 3.0-preview1/--): swiftc -O test_swift.swift
注意:以上并非正规测试方案,比较结果仅供参考,并无权威性。
bob战队 rust_c、rust、golang、swift性能比较相关推荐
- delphi windows编程_2020年值得关注的新编程V语言Vlang,对标Golang、Rust、Swift
编程语言的世界总是能搞出新花样,虽然基本原理都是万变不离其宗,但是对我们个人而言,选择好一个语言的确可以事半功倍,何乐而不为呢? 要说目前2020年比较新奇的语言,就得说说V语言Vlang了,MIT开 ...
- Swift 性能相关
起初的疑问源自于「在 Swift 中的, Struct:Protocol 比 抽象类 好在哪里?」.但是找来找去都是 Swift 性能相关的东西.整理了点笔记,供大家可以参考一下. 一些疑问 在正题开 ...
- 【基本功】深入剖析Swift性能优化
简介 2014年,苹果公司在WWDC上发布Swift这一新的编程语言.经过几年的发展,Swift已经成为iOS开发语言的"中流砥柱",Swift提供了非常灵活的高级别特性,例如协议 ...
- python爬虫和golang爬虫性能对比_Scrapy VS Golang 爬虫对比(修正)
前言 之前写了一篇scrapy和golang爬虫性能对比,引起了很大的争议(就是被各位大佬喷的很惨的意思).其中,很多人提了数据库读写的问题,看到大家的评论后不久我又测了一下,把写数据库的那部分代码注 ...
- rust go java 性能_Java,Go和Rust之间的比较 - Dexter
这是Java,Go和Rust之间的比较.这不是基准测试,而是关于:可执行文件大小.内存使用.CPU使用率.运行时要求之间的比较,当然还有一个小的基准测试,可以每秒获取一些请求. 测试三个Web服务的存 ...
- 如何提高 Rust 程序的性能?
作者 | Aram Drevekenin 译者 | 马超 出品 | CSDN(ID:CSDNnews) Zellij是一款非常优秀的终端工作区和多路复用器(类似于tmux和screen),由于使用Ru ...
- java与swift性能,Swift语言性能分析
一.两个疑惑 OC 和 Swift 语言在 Richards 上评测的结果显示,Swift 比 OC 快了4倍,Swift同OC相比会更快,具体应归结在那些因素上面? 通常一个 Swift 项目少则编 ...
- 论,golang编程语言性能如何提升?
首先,c++,c等语言不存在这个问题,因为直接面对的是编译器,没有运行时环境. 性能优化可预期,可计算. 类似golang,java,python这种需要运行时环境的语言,往往存在理解不深入问题,特别 ...
- Golang + Swift 5,我们想认真做一款好的表情包工具
个人是表情包的重度使用者,经常喜欢恶搞身边的朋友,做一些好玩的表情包. 但是对手边的一些工具都不太满意. 编辑 GIF.GIF 倒放一类的功能用过 ImgPlay,功能强大而复杂,但有时候太复杂了,做 ...
最新文章
- 微服务架构之「 容器技术 」
- Unity用UGUI做虚拟摇杆
- 为什么叫python编程-为什么建议大家学习Python编程呢?老男孩Python入门
- pandas将Series变成键值对
- GetWindowThreadProcessId 获得窗口所在进程ID和线程ID
- MySQL官方提供的测试数据库脚本和数据文件下载
- rome rss_RSS阅读器使用:ROME,Spring MVC,嵌入式Jetty
- 易会满重磅发声!新证券法将给资本市场带来哪些新变化?证监会职责定位有何新要求?...
- stm32单片机相同系列型号代码移植
- html5在线表格生成器,js简单实现自动生成表格功能示例
- 【pyqt5学习】——pyqt5中.qrc资源文件的创建与编写
- 无法忘却的旋律:《荷东》、《猛士》各专辑的曲目列表
- 基带单元(BBU)与无线单元(RRU)之间的高速链路-CPRI接口
- ES 关于text和keyword两种类型数据搜索区别
- 可视化:架构师必看 京东咚咚架构演进
- Mysql数据处理函数/单行处理函数
- Android平板/手机,使用qq视频通话图像旋转90度
- 为什么会出现403 Forbidden错误?三分钟教你快速解决问题!
- Harmony鸿蒙开发 四、Ability的生命周期
- Matlab plot 光滑曲线
热门文章
- bool函数_PHP变量类型测试函数的使用:一、is_bool的用法
- qtitanribbon注册_点云平台之QtitanRibbon
- linux c 网络编程与信号量,linux网络编程-----线程同步--信号量
- python行业缺口_根据缺口的模式选股买股票,python 学习代码
- mysql目录树_MySQL B+树目录及索引优化_mysql
- linuxpython安装_Linux安装python3.6
- esp8266连接不上服务器不稳定,esp8266 联网问题+链接服务器问题
- oracle 生成 sql语句,Oracle使用SQL语句生成日历的实现方法
- java 包错_以下关于Java包的描述中,错误的是()
- java安装后启动程序在哪_java – 有没有办法在安装后使用一些“帮助应用程序”立即启动应用程序?...