mirror of
https://github.com/tiennm99/zfoo.git
synced 2026-05-30 12:24:53 +00:00
test[go]: go性能测试
This commit is contained in:
@@ -0,0 +1,70 @@
|
||||
package main
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
"time"
|
||||
)
|
||||
|
||||
func main() {
|
||||
// 预热
|
||||
test()
|
||||
// 正式执行
|
||||
test()
|
||||
}
|
||||
|
||||
func test() {
|
||||
var startTime = time.Now()
|
||||
var arr = []int{1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13}
|
||||
const NUM int = 100000000
|
||||
for i := 0; i < NUM; i++ {
|
||||
bubbleSort(arr)
|
||||
}
|
||||
fmt.Println(time.Since(startTime).Milliseconds())
|
||||
}
|
||||
|
||||
//排序
|
||||
func bubbleSort(arr []int) {
|
||||
for j := 0; j < len(arr)-1; j++ {
|
||||
for k := 0; k < len(arr)-1-j; k++ {
|
||||
if arr[k] < arr[k+1] {
|
||||
temp := arr[k]
|
||||
arr[k] = arr[k+1]
|
||||
arr[k+1] = temp
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
public class MainTest {
|
||||
public static void main(String[] args) {
|
||||
// java的jit预热
|
||||
test();
|
||||
// 正式执行
|
||||
test();
|
||||
}
|
||||
|
||||
static void test() {
|
||||
// 正式执行
|
||||
var startTime = System.currentTimeMillis();
|
||||
var array = new int[]{1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13};
|
||||
for (var i = 0; i < 100000000; i++) {
|
||||
bubbleSort(array);
|
||||
}
|
||||
var endTime = System.currentTimeMillis();
|
||||
System.out.println(endTime - startTime);
|
||||
}
|
||||
|
||||
public static void bubbleSort(int[] arr) {
|
||||
for (int i = 0; i < arr.length - 1; i++) {
|
||||
for (int j = 0; j < arr.length - 1 - i; j++) {
|
||||
if (arr[j] < arr[j + 1]) {
|
||||
int temp = arr[j];
|
||||
arr[j] = arr[j + 1];
|
||||
arr[j + 1] = temp;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
*/
|
||||
@@ -0,0 +1,54 @@
|
||||
package main
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
"time"
|
||||
)
|
||||
|
||||
func main() {
|
||||
// 预热
|
||||
test()
|
||||
// 正式执行
|
||||
test()
|
||||
}
|
||||
|
||||
func test() {
|
||||
var startTime = time.Now()
|
||||
for i := 0; i < 10000; i++ {
|
||||
fibonacci(32)
|
||||
}
|
||||
fmt.Println(time.Since(startTime).Milliseconds())
|
||||
}
|
||||
|
||||
func fibonacci(i int) int {
|
||||
if i < 2 {
|
||||
return i
|
||||
}
|
||||
return fibonacci(i-2) + fibonacci(i-1)
|
||||
}
|
||||
|
||||
/**
|
||||
public class MainTest {
|
||||
public static void main(String[] args) {
|
||||
// java的jit预热
|
||||
test();
|
||||
// 正式执行
|
||||
test();
|
||||
}
|
||||
|
||||
static void test() {
|
||||
// 正式执行
|
||||
var startTime = System.currentTimeMillis();
|
||||
for (int i = 0; i < 10000; i++) {
|
||||
fibonacci(32);
|
||||
}
|
||||
var endTime = System.currentTimeMillis();
|
||||
System.out.println(endTime - startTime);
|
||||
}
|
||||
|
||||
static int fibonacci(int i) {
|
||||
if (i < 2) return i;
|
||||
return fibonacci(i - 2) + fibonacci(i - 1);
|
||||
}
|
||||
}
|
||||
*/
|
||||
Reference in New Issue
Block a user