~/talk

"Slice Recycling Performance and Pitfalls"

Talkat GothamGo 2019 · on Friday, 2019-04-12· [go]
slides:none on file

Claim: recycling byte slices drastically cuts GC time and peak heap versus throwing allocations away. Experiment builds a tiny encoder and four memory managers — null, sync.Pool, power-of-two bins, reserve strategy — and measures with benchmarks, parsed GC debug lines for max-heap, CPU flame graphs via go tool pprof and the trace web UI. Results show ~order-of-magnitude runtime and heap differences, reserved is fastest, null worst, and a leaky sync.Pool converges to reserved behavior if starting capacity is large.

AI-written summary · about

  1. 0:00Intro
  2. 0:55What is garbage
  3. 1:19Garbage collector job
  4. 1:29Flame graph
  5. 3:06Slices
  6. 3:19Garbage Collector
  7. 3:50Sink Pool
  8. 4:13Trash
  9. 4:40Undefined order
  10. 5:03Container size
  11. 5:27The pen
  12. 6:15The encoder
  13. 7:16The interface
  14. 7:36The pool
  15. 7:46The abstraction
  16. 8:04The four strategies
  17. 8:32Null strategy
  18. 9:47Sync strategy
  19. 11:25Power of Two strategy
  20. 12:13Reserved strategy
  21. 13:34Four ways to analyze performance
  22. 15:33Benchmarking
  23. 17:08Profiling
  24. 18:07Tracing
  25. 20:16Naive Approach
  26. 20:50Visualization
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.