aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDmitry Vyukov <dvyukov@google.com>2016-08-21 19:04:50 -0700
committerDmitry Vyukov <dvyukov@google.com>2016-08-21 19:04:50 -0700
commit96cc1ccc795c04887cb8b35c731c0e68be674eab (patch)
treee2a8b6c7f57d8c9c5d3faaf9e4d5946bcd049b1f
parentf0d0cfcbd6109dd969a9f29b2357c312cf9e884a (diff)
manager: measure execution speed starting from first VM connect
Currently execution speed is considerably skewed on start because we take into account VM boot time.
-rw-r--r--syz-manager/html.go5
-rw-r--r--syz-manager/manager.go5
2 files changed, 9 insertions, 1 deletions
diff --git a/syz-manager/html.go b/syz-manager/html.go
index f53791f2b..ae8a6e088 100644
--- a/syz-manager/html.go
+++ b/syz-manager/html.go
@@ -57,7 +57,10 @@ func (mgr *Manager) httpInfo(w http.ResponseWriter, r *http.Request) {
data.CallCoverMem += len(cov) * int(unsafe.Sizeof(cov[0]))
}
- secs := uint64(uptime) / 1e9
+ secs := uint64(1)
+ if !mgr.firstConnect.IsZero() {
+ secs = uint64(time.Since(mgr.firstConnect))/1e9 + 1
+ }
for k, v := range mgr.stats {
val := fmt.Sprintf("%v", v)
if x := v / secs; x >= 10 {
diff --git a/syz-manager/manager.go b/syz-manager/manager.go
index 0c80de938..a5975379a 100644
--- a/syz-manager/manager.go
+++ b/syz-manager/manager.go
@@ -46,6 +46,7 @@ type Manager struct {
port int
persistentCorpus *PersistentSet
startTime time.Time
+ firstConnect time.Time
stats map[string]uint64
shutdown uint32
@@ -439,6 +440,10 @@ func (mgr *Manager) Connect(a *ConnectArgs, r *ConnectRes) error {
mgr.mu.Lock()
defer mgr.mu.Unlock()
+ if mgr.firstConnect.IsZero() {
+ mgr.firstConnect = time.Now()
+ }
+
mgr.stats["vm restarts"]++
mgr.minimizeCorpus()
mgr.fuzzers[a.Name] = &Fuzzer{