4 ms·
Perhaps cache effects. If one instance has relatively large memory footprint, then two instances will compete for L3 cache. One moment they may share some commo
by vient 3y ago
Perhaps cache effects. If one instance has relatively large memory footprint, then two instances will compete for L3 cache. One moment they may share some common memory or just not use much memory and work fast, next moment they will work on distinct memory sets which will cause active cache thrashing. Different runs of several instances will interact a bit differently each time, resulting in big differences in run times.
On their system two instances work fine because they have two CPUs so two L3 caches.
Their Opterons actually have an unusual cache hierarchy by modern standards - L2 and L1i caches are also shared, in every pair of cores. L3 is shared between all cores as usual.
- sitkack 3y agoI think this might have been a compiler or runtime bug. It sounds like from the write up that the answer changing by the number of cores was baffling.