go Benchmarkの運転

2376 ワード

書式設定

  • ファイル名は_でなければなりません.testエンディング.
  • メソッド名はBenchmarkで始まる必要があります.
  • 試験方法は*testingを使用する必要がある.B.

  • コマンドラインパラメータ


    入力パラメータ

    go test -v -bench=. -benchmem -count=3 
    

    パラメータの意味

    1.-bench  。 "." Benchmark 。
    2.-benchmem  。
    3,-count  
    

    出力パラメータ

    Benchmark1-8    12412908                96.4 ns/op            16 B/op          2 allocs/op
    Benchmark1-8    12856522                94.8 ns/op            16 B/op          2 allocs/op
    Benchmark1-8    12992362                92.8 ns/op            16 B/op          2 allocs/op
    

    出力パラメータの意味

  • ns/opは、論理を実行するたびに消費される時間
  • を表す.
  • B/opは、論理を実行するたびに消費されるメモリ
  • を表す.
  • allocs/opは、論理出願を実行するたびにメモリの回数
  • を表す.

    サンプル-demo

    package test
    
    import (
    	"fmt"
    	"testing"
    )
    
    func Benchmark1(b *testing.B)  {
         
    	//b.ResetTimer()  
    	for i:=0;i<b.N ;i++  {
         
    		fmt.Sprintf("%d",i)
    	}
    	//b.StopTimer()  
    }