You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Some important and hot data is stored in Ps, such as write barrier buffers and defer pools. Getting from a G to a P currently requires evaluating g.m.p. We should consider adding a direct link, g.p, to avoid an extra memory lookup. This should reduce memory lookups and cache pressure / cache misses on hot code, particularly write barrier writes.
This might also enable us to eliminate the mcache.
This requires updating g.p every time a G gets (un)scheduled.
I took a stab at this but never quite got it working. I hope someone else might.
Sounds reasonable to try.
There are probably few hot things (like the ones required for GC barriers and malloc), so we could also try to cache them in g directly.
Some important and hot data is stored in Ps, such as write barrier buffers and defer pools. Getting from a G to a P currently requires evaluating
g.m.p
. We should consider adding a direct link,g.p
, to avoid an extra memory lookup. This should reduce memory lookups and cache pressure / cache misses on hot code, particularly write barrier writes.This might also enable us to eliminate the mcache.
This requires updating
g.p
every time a G gets (un)scheduled.I took a stab at this but never quite got it working. I hope someone else might.
cc @aclements @dvyukov
The text was updated successfully, but these errors were encountered: