mirror of
https://github.com/danog/gojekyll.git
synced 2024-11-30 10:59:05 +01:00
Profile shows stddev
This commit is contained in:
parent
1d8d0a8f1a
commit
cd0de41939
@ -11,6 +11,7 @@ import (
|
|||||||
|
|
||||||
yaml "gopkg.in/yaml.v2"
|
yaml "gopkg.in/yaml.v2"
|
||||||
|
|
||||||
|
"github.com/montanaflynn/stats"
|
||||||
"github.com/osteele/gojekyll/helpers"
|
"github.com/osteele/gojekyll/helpers"
|
||||||
"github.com/osteele/gojekyll/pages"
|
"github.com/osteele/gojekyll/pages"
|
||||||
"github.com/osteele/gojekyll/server"
|
"github.com/osteele/gojekyll/server"
|
||||||
@ -40,8 +41,8 @@ func cleanCommand(site *site.Site) error {
|
|||||||
|
|
||||||
func benchmarkCommand() (err error) {
|
func benchmarkCommand() (err error) {
|
||||||
startTime := time.Now()
|
startTime := time.Now()
|
||||||
times := []float64{}
|
trials := []float64{}
|
||||||
for i := 0; time.Since(startTime) < 1*time.Second; i++ {
|
for i := 0; time.Since(startTime) < 10*time.Second; i++ {
|
||||||
site, err := loadSite(*source, configFlags)
|
site, err := loadSite(*source, configFlags)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
@ -51,10 +52,12 @@ func benchmarkCommand() (err error) {
|
|||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
dur := time.Since(startTime).Seconds()
|
dur := time.Since(startTime).Seconds()
|
||||||
times = append(times, dur)
|
trials = append(trials, dur)
|
||||||
logger.label("", "Run #%d; %.1fs elapsed", i+1, time.Since(commandStartTime).Seconds())
|
logger.label("", "Run #%d; %.1fs elapsed", i+1, time.Since(commandStartTime).Seconds())
|
||||||
}
|
}
|
||||||
fmt.Printf("%d runs; %.1fs total\n", len(times), time.Since(startTime).Seconds())
|
median, _ := stats.Median(trials)
|
||||||
|
stddev, _ := stats.StandardDeviationSample(trials)
|
||||||
|
fmt.Printf("%d trials @ %.1f±%.1fs \n", len(trials), median, stddev)
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user