Permalink
Browse files

runtime: align mcentral by cache line size

This may improve perormance during concurrent access
to mheap.central array from multiple CPU cores.

Change-Id: I8f48dd2e72aa62e9c32de07ae60fe552d8642782
Reviewed-on: https://go-review.googlesource.com/41550
Reviewed-by: Austin Clements <austin@google.com>
Reviewed-by: Ian Lance Taylor <iant@golang.org>
Run-TryBot: Ian Lance Taylor <iant@golang.org>
TryBot-Result: Gobot Gobot <gobot@golang.org>
  • Loading branch information...
valyala authored and ianlancetaylor committed Apr 24, 2017
1 parent c433c37 commit 259d60995d735523fc25939c35847538eb0d0670
Showing with 1 addition and 1 deletion.
  1. +1 −1 src/runtime/mheap.go
View
@@ -121,7 +121,7 @@ type mheap struct {
// gets its own cache line.
central [_NumSizeClasses]struct {
mcentral mcentral
pad [sys.CacheLineSize]byte
pad [sys.CacheLineSize - unsafe.Sizeof(mcentral{})%sys.CacheLineSize]byte
}
spanalloc fixalloc // allocator for span*

0 comments on commit 259d609

Please sign in to comment.