Are you GCing so often that you're killing your branch predictor? I expect you're spending >>50% of the time in GC, and some GC branches (type tag tests in particular) tend to be unpredictable.
This is a test of the nursery so the mutator doesn't run at all. I'm repeated allocating dead objects in the nursery to see how many are overwritten in cache without being sent to main memory.
Branch misses does increase as the nursery gets smaller but it's still a fraction of 1 percent.
Are you GCing so often that you're killing your branch predictor? I expect you're spending >>50% of the time in GC, and some GC branches (type tag tests in particular) tend to be unpredictable.
ReplyDeleteThis is a test of the nursery so the mutator doesn't run at all. I'm repeated allocating dead objects in the nursery to see how many are overwritten in cache without being sent to main memory.
ReplyDeleteBranch misses does increase as the nursery gets smaller but it's still a fraction of 1 percent.