DescriptionRewrite SamplingCircularQueue
The new implementation:
* uses MemoryBarriers to make sure up-to-date data is accessed on both producer and consumer threads
* will not allow to overwrite records
* doesn't have notion of chunks, instead each entry is aligned on the cache line boundaries
BUG=v8:2814
R=bmeurer@chromium.org
Committed: https://code.google.com/p/v8/source/detail?r=16284
Patch Set 1 #Patch Set 2 : Don't create extra copy of event #
Total comments: 13
Patch Set 3 : The queue was templatized, comments addressed except supporting MPSC #Patch Set 4 : Deleted circular-queue.cc #
Total comments: 13
Patch Set 5 : Supported ALIGNED_AT on __APPLE__ #Patch Set 6 : Comments addressed #
Total comments: 6
Patch Set 7 : Comments addressed #Patch Set 8 : Formatting #Patch Set 9 : Comments addressed #Patch Set 10 : Moved ALIGNAS to globals.h #Patch Set 11 : Rebase #Patch Set 12 : Use V8_ALIGNAS from include/v8config.h #
Messages
Total messages: 26 (0 generated)
|