mirror of
https://github.com/golang/go.git
synced 2025-12-08 06:10:04 +00:00
cmd/trace: force GC occassionally
to return memory to the OS after completing potentially large operations. Update #21870 Sys went down to 3.7G $ DEBUG_MEMORY_USAGE=1 go tool trace trace.out 2018/03/07 09:35:52 Parsing trace... after parsing trace Alloc: 3385754360 Bytes Sys: 3662047864 Bytes HeapReleased: 0 Bytes HeapSys: 3488907264 Bytes HeapInUse: 3426549760 Bytes HeapAlloc: 3385754360 Bytes Enter to continue... 2018/03/07 09:36:09 Splitting trace... after spliting trace Alloc: 3238309424 Bytes Sys: 3684410168 Bytes HeapReleased: 0 Bytes HeapSys: 3488874496 Bytes HeapInUse: 3266461696 Bytes HeapAlloc: 3238309424 Bytes Enter to continue... 2018/03/07 09:36:39 Opening browser. Trace viewer is listening on http://100.101.224.241:12345 after httpJsonTrace Alloc: 3000633872 Bytes Sys: 3693978424 Bytes HeapReleased: 0 Bytes HeapSys: 3488743424 Bytes HeapInUse: 3030966272 Bytes HeapAlloc: 3000633872 Bytes Enter to continue... Change-Id: I56f64cae66c809cbfbad03fba7bd0d35494c1d04 Reviewed-on: https://go-review.googlesource.com/92376 Reviewed-by: Peter Weinberger <pjw@google.com>
This commit is contained in:
parent
20b14b71df
commit
93b0261d0a
2 changed files with 8 additions and 0 deletions
|
|
@ -17,6 +17,7 @@ import (
|
|||
"net/http"
|
||||
"os"
|
||||
"runtime"
|
||||
"runtime/debug"
|
||||
"sync"
|
||||
|
||||
_ "net/http/pprof" // Required to use pprof
|
||||
|
|
@ -119,10 +120,12 @@ func main() {
|
|||
os.Exit(0)
|
||||
}
|
||||
reportMemoryUsage("after parsing trace")
|
||||
debug.FreeOSMemory()
|
||||
|
||||
log.Print("Splitting trace...")
|
||||
ranges = splitTrace(res)
|
||||
reportMemoryUsage("after spliting trace")
|
||||
debug.FreeOSMemory()
|
||||
|
||||
addr := "http://" + ln.Addr().String()
|
||||
log.Printf("Opening browser. Trace viewer is listening on %s", addr)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue