[Bro] So uh...how do you know which pin_cpus to use?

Michał Purzyński michalpurzynski1 at gmail.com
Tue Oct 18 15:18:42 PDT 2016

2.6 kernels on Linux enumerate HT in a different way 3.x and 4.x do


Core 0 thread 0
Core 0 thread 1



Core 0-N on CPU 0 first half of threads
Then CPU 1
Then CPU 0 second half of threads
Then CPU 1

Results for HT vs cross numa are about to be published, soon ;)
I don't like cache misses when CPU 1 is reaching for data on node 0 though. It is not about cross numa bandwidth it's the fact then you have in the worst case 67ns to process a smallest packet on 10Gbit. And L3 hit on ivy bridge is at least 15ns.
Miss is 5x that.

> On 18 Oct 2016, at 23:34, Azoff, Justin S <jazoff at illinois.edu> wrote:
>> On Oct 18, 2016, at 5:23 PM, James Lay <jlay at slave-tothe-box.net> wrote:
>>> Possibly.. I'd check with what hwloc says.  I think just turning off
>>> hyper threading makes this even easier since that completely removes
>>> the possibility of accidentally pinning 2 workers to the same core.
>> Sweet...thanks Justin...hwloc is a cool app!
>> James
> Yeah... it can be a bit confusing though since it has both a 'logical' (-l)  and a 'physical' (-p) view.
> I _think_ that the cpu ids in the physical view match what taskset use via broctl.
> Fortunately you can run hwloc-ps -p and compare which pids are mapped to which cpus to verify it is working right.
> -- 
> - Justin Azoff
> _______________________________________________
> Bro mailing list
> bro at bro-ids.org
> http://mailman.ICSI.Berkeley.EDU/mailman/listinfo/bro

More information about the Bro mailing list