1. 程式人生 > >Lua、Luajit、Python、Node.js和Java效能測試對比

Lua、Luajit、Python、Node.js和Java效能測試對比

這個Github專案提供了Lua、Luajit、Python、Node.js和Java等動態語言的效能測試,具體語言版本包括:
Lua 5.3.3
Luajit 2.0.4
Python 3.5.1
Pypy 2.4.0
HipHop VM 3.13.2
NodeJS v6.2.1
OpenJDK 1.8.0_92 (reference)

主要測試下面演算法的效能:
二叉樹
fannkuchredux
fasta
nbody
spectralnorm

測試結論如下:
1. Lua是非常快的解釋語言,甚至快於一些JIT,它最大的缺點是當出現大量的(re)alocating(分配或再分配)時會出現效能下降,可見其二叉樹演算法測試。

2.Luajit非常瘋狂的動態jit,非常閃耀的快速語言,但是當執行更長時間以後,它會被Java超越,也就是說,當分配了很多空間情況下,它的效能才非常好。

3.Python是最慢的解釋語言,最壞情況是進行Fibonacci 程式執行時(Python不能做CPU密集型的任務)

4.Pypy是處於HHVM, Lua和 Python以及Node,Luajit,Java之間的語言,當需要許多分配時它會有很多問題。

5.HHVM有時確實超過Pypy-s效能,但是不總是,如同原生Python實現,它在遞迴計算會有嚴重問題。

6.Node.js是非常快的JIT,只會被LuaJit和Java打敗,快於Pypy好幾倍,當實現氣泡排序時特別優秀。

7.Java:當執行很短程式時會輸給Luajit,但是執行超過幾秒的較長程式時,會超過Luajit,變成最快的。

相關推薦

LuaLuajitPythonNode.jsJava效能測試對比

這個Github專案提供了Lua、Luajit、Python、Node.js和Java等動態語言的效能測試,具體語言版本包括: Lua 5.3.3 Luajit 2.0.4 Python 3.5.1 Pypy 2.4.0 HipHop VM 3.13.

vue.js開發環境初步搭建腳手架工具安裝(node.js安裝)

環境搭建 ima pil utf node.js jni 可用 turn t430 當然,首先是node.js的安裝,百度node,js出現 (為後面的鋪墊) 選擇一個版本進行安裝,安裝完成後,在cmd命令行中輸入node --version(註意有兩個 --)查看

以太坊開發DApp實戰教程——用區塊鏈星際文件系統(IPFS)Node.jsMongoDB來構建電商平臺

IPFS 區塊鏈電商 區塊鏈開發 以太坊開發 以太坊dapp 以太坊教程 智能合約 以太坊 星際文件系統 區塊鏈 第一節 簡介 歡迎和我們一起來用以太坊開發構建一個去中心化電商DApp!我們將用區塊鏈、星際文件系統(IPFS)、Node.js和Mong

GitHubNode.jsHexo搭建個人部落格

GitHub、Node.js和Hexo搭建個人部落格 1.Git 1.1、下載 下載地址:https://git-scm.com/downloads 1.2、Git安裝 雙擊安裝,點選Next 填寫安裝路徑,點選Next 選中安裝內容,點選Next

以太坊開發DApp實戰教程——用區塊鏈星際檔案系統(IPFS)Node.jsMongoDB來構建電商平臺

第一節 簡介 歡迎和我們一起來用以太坊實戰開發構建一個去中心化電商DApp!我們將會構建一個類似淘寶的線上電子商務應用,我將使用區塊鏈、星際檔案系統(IPFS)、Node.js和MongoDB來構建電商平臺,賣家可以自由地出售商品,買家可以自由地購物: 去中心化:

用以太坊區塊鏈IPFSNode.jsMongoDB構建電商平臺

第一節 簡介 歡迎和我們一起來用以太坊實戰開發構建一個去中心化電商DApp!我們將會構建一個類似淘寶的線上電子商務應用,我將使用區塊鏈、星際檔案系統(IPFS)、Node.js和MongoDB來構建電商平臺,賣家可以自由地出售商品,買家可以自由地購物: ebay dapp

postman介面自動化測試之利用node.jsxmysql連線操作資料庫

一、背景 使用postman進行介面自動化測試時,除了要驗證介面的返回,有時候還要同時驗證資料庫的資料,或者將介面返回的資料與資料庫的資料做對比,檢驗資料的正確性。 有的時候還需要在執行自動化case之前,造一些測試資料,或者在跑完自動化之後,刪除測試資料。 所以,我們需要在postman裡連線並操作資料庫,

COMP/2013作業代做代寫software留學生作業代做PythonC/C++程式作業代寫Java/C++實驗設計作業

COMP/2013作業代做、代寫software留學生作業、代做Python、C/C++程式作業、代寫Java/C++實驗設計作業COMP/2013 (Lab 04 - 2018)1LAB 4: ADDING UNIT TESTS, WORKING WITH BUILD SCRIPTSAims: Add so

Show HN: **VBUILD**, to compile “.vue” files to HTML, with python (NO Node.js)

Its main purpose is to let you use components (.vue files) in your vuejs app, without a full nodejs stack. Just use python2 or python3. BTW, it provides a

Red Hat updates Python, PHP, Node.js, more; supports new arches

We use cookies on our websites to deliver our online services. Details about how we use cookies and how you may disable them are set out in our Privacy

Node.js Python之間如何進行選擇?

轉載請註明出處:葡萄城官網,葡萄城為開發者提供專業的開發工具、解決方案和服務,賦能開發者。 原文出處:https://dzone.com/articles/nodejs-vs-python-which-programming-language-is-go   最近,Node.js 和 Pytho

學習用Node.jsElasticsearch構建搜索引擎(6):實際項目中常用命令使用記錄

nds 黃色 ati cat htm action last shard open 1、檢測集群是否健康。 curl -XGET ‘localhost:9200/_cat/health?v‘#後面加一個v表示讓輸出內容表格顯示表頭 綠色表示一切正常,黃色表示所有

安裝node.jsnpm

href nodejs 官方 正常 div 容易出錯 選擇 6.0 wiki 轉載自https://www.liaoxuefeng.com/wiki/001434446689867b27157e896e74d51a89c25cc8b43bdb3000/00143450141

node.jswebpack做前後端分離的總結

調用 以及 定向 roc 目錄 加載 動靜 con 腳本 1.webpack打包的特點 (打包文件到指定地點,修改原文件裏的引用路徑為打包的地點) 涉及output的path/public path/dev-server裏的public path等概念  webpack的入

以太坊 DApp 開發入門實戰! 用Node.jstruffle框架搭建——區塊鏈投票系統!

以太坊 區塊鏈 Node.js truffle DApp 第一節 概述 面向初學者,內容涵蓋以太坊開發相關的基本概念,並將手把手地教大家如何構建一個 基於以太坊的完整去中心化應用 —— 區塊鏈投票系統。 通過學習,你將掌握: 以太坊區塊鏈的基本知識 開發和部署以太坊合約所需的軟件

node.jsMongoDB學習網址

www 項目 .com www. ria 開發 過程 菜鳥 mongodb 回想我寫的node.js和MongoDB的博客,都是菜鳥教程那裏的知識,所以我打算不寫了,那些都是基礎,在項目開發中,我發現單單有那些基礎不行,這些基礎可以盡快學好,然後學習項目開發過程 下面是兩個

軟件安裝及配置(ubuntu)——離線安裝node.jsnpm

ubuntu nod void www webpack rpd html help pack 參考鏈接: https://blog.csdn.net/topswim/article/details/79200936 http://www.360doc.com/content

1024_(即時通訊)使用node.jssocket.io實現多人聊天室

使用node.js和socket.io實現多人聊天室 2015年01月24日 03:24:54 遠古大猛獁 閱讀數:2775 轉自: http://www.cnblogs.com/flyoung2008/archive/2012/07/19/2600132.html

升級node.jsnpm

歡迎大家訪問我的個人網站 - Sunday俱樂部 升級node.js npm中有一個模組叫做“n”,專門用來管理node.js版本。 更新到最新的穩定版只需要在命令列中打下如下程式碼: npm install -g n n stable 如需最新版本則用n la

如何在Mac上安裝Node.jsNPM

原作者:Dave McFarland  翻譯轉載:https://blog.teamtreehouse.com/install-node-js-npm-mac   如何在Mac上安裝Node.js和NPM   JavaScript是世界上最流行