golang思考之運行速度

有些資料顯示golang的運行速度很慢,比Java慢,有時比Python慢。學習吧測試發現golang的運行速度和Java差很少。golang

首先,使用各類語言編寫同一個CPU密集的程序sum。編程

C(或C++)編程語言

#include <stdio.h>
#include <stdint.h>
#include <time.h>

int main(void){
    int iN; 
    int64_t jN; 
    scanf("%d %ld",&iN,&jN);
    time_t timeBegin=time(NULL);
    int i;
    for(i=0;i<iN;++i){
        int64_t sum=0;
        int64_t j;
        for(j=0;j<jN;++j){
            sum+=j;
        }
        printf("sum:%ld\n",sum);
    }   
    time_t timeEnd=time(NULL);
    printf("%ds\n",(int)(timeEnd-timeBegin));
    return 0;
}

Golang學習

package main

import "fmt"

func main() {
    for i := 0; i < 10; i++ {
        var sum int64 = 0
        var j int64
        for j = 0; j < 1000000000; j++ {
            sum += j
        }
        fmt.Println("sum:", sum)
    }   
}

Java測試

package hello;

public class Hello {
	public static void main(String[] args) {
		long startTime = System.currentTimeMillis();
		for (int i = 0; i < 10; ++i) {
			long sum = 0;
			for (long j = 0; j < 1000000000; ++j) {
				sum += j;
			}
			System.out.println("sum:" + sum);
		}
		long endTime = System.currentTimeMillis();
		System.out.println((endTime - startTime) / 1000.0 + "s");
	}
}

Pythoncode

#!/usr/bin/env pypy
#coding:utf-8

for i in range(10):
    s=sum(range(1000000000))
    print('sum:%d'%s)

運行速度統計:utf-8

編程語言    第一次時間    第二次時間
C                6s           6s
Golang       6.327s       6.159s
Java          6.03s       5.981s
Python      15.860s      13.184s

結論,golang的運行速度和Java差很少,比Python快。io

相關文章
相關標籤/搜索