• Dmitriy Vyukov's avatar
    runtime: per-P defer pool · 1ba04c17
    Dmitriy Vyukov authored
    Instead of a per-goroutine stack of defers for all sizes,
    introduce per-P defer pool for argument sizes 8, 24, 40, 56, 72 bytes.
    
    For a program that starts 1e6 goroutines and then joins then:
    old: rss=6.6g virtmem=10.2g time=4.85s
    new: rss=4.5g virtmem= 8.2g time=3.48s
    
    R=golang-codereviews, rsc
    CC=golang-codereviews
    https://golang.org/cl/42750044
    1ba04c17
Name
Last commit
Last update
..
cmd Loading commit data...
lib9 Loading commit data...
libbio Loading commit data...
liblink Loading commit data...
libmach Loading commit data...
pkg Loading commit data...
Make.dist Loading commit data...
all.bash Loading commit data...
all.bat Loading commit data...
all.rc Loading commit data...
clean.bash Loading commit data...
clean.bat Loading commit data...
clean.rc Loading commit data...
make.bash Loading commit data...
make.bat Loading commit data...
make.rc Loading commit data...
race.bash Loading commit data...
race.bat Loading commit data...
run.bash Loading commit data...
run.bat Loading commit data...
run.rc Loading commit data...
sudo.bash Loading commit data...