4 ms·
Gc support is the important first step. But then the next step of work is scheduling work in a locality aware way. The libnuma lib in Linux and the portable h
by carterschonwald 13y ago
Gc support is the important first step.
But then the next step of work is scheduling work in a locality aware way. The libnuma lib in Linux and the portable hwloc lib that's part of the openmpi project are example substrates.
Admittedly, for most applications this second step won't make a large difference, but in my application domain, numerical computing, better memory locality at any given granularity can yield an order of magnitude improvement.
Locality aware scheduling in this context can actually yield a slightly super linear speed in the multicore / multi socket regime because of vagaries of a systems memory bus topology.
Ill hopefully be in a better position to quantify this last remark more precisely middle to late summer, assuming Wellposed's numerical product launch results in signing some early customers in the next 2 months.
- pjmlp 13y agoThanks for the explanation. I never used NUMA systems.