Note that there are some explanatory texts on larger screens.

plurals
  1. PO
    primarykey
    data
    text
    <blockquote> <p>EDIT: It appears that triggering a GC will shift the behaviour. These show repeated test on the same buffer+counters with a manually trigger GC halfway.</p> </blockquote> <p>GC means reaching a safepoint which means all threads have stopped executing bytecode &amp; the GC threads have work to do. This can have various side effects. For example, in the absence of any explicit cpu affinity, you may restart execution on a different core or cache lines may have been refreshed. Can you track which cores your threads are running on?</p> <p>What CPUs are these? Have you done anything about power management to prevent them dropping down into lower p and/or c states? Perhaps 1 thread is being scheduled onto a core that was in a different p state hence shows a different performance profile.</p> <p><strong>EDIT</strong></p> <p>I tried running your test on a workstation running x64 linux with 2 slightly old quadcore xeons (E5504), it's generally consistent within a run (~17-18M/s) with occasion runs much slower which appears to generally correspond with thread migrations. I didn't plot this rigorously. Therefore it appears your problem might be CPU architecture specific. You mention you're running an i7 at 4.6GHz, is that a typo? I thought the i7 topped out at <a href="http://ark.intel.com/products/61275/Intel-Core-i7-2700K-Processor-%288M-Cache-3_5-GHz%29" rel="noreferrer">3.5GHz with a 3.9Ghz turbo mode</a> (with an earlier version 3.3GHz to 3.6GHz turbo). Either way are you sure you're not seeing an artifact of turbo mode kicking in then dropping out? You could try repeating the test with turbo disabled to be sure.</p> <p>A couple of other points</p> <ul> <li>the padding values are all 0, are you sure there isn't some special treatment being meted out to uninitialised values? you could consider using the <code>LogCompilation</code> option to understand how the JIT is treating that method </li> <li><a href="http://software.intel.com/en-us/articles/intel-vtune-amplifier-xe/" rel="noreferrer">Intel VTune</a> is free for 30 day evaluation, if this is a cache line problem then you could use that to determine what the problem is on your host</li> </ul>
    singulars
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. VO
      singulars
      1. This table or related slice is empty.
    2. VO
      singulars
      1. This table or related slice is empty.
    3. VO
      singulars
      1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload