Re: read() syscall slowing down due to other threads?

From: Chris Friesen
Date: Wed May 02 2012 - 14:39:41 EST


On 05/01/2012 12:03 AM, George Porter wrote:

However, if I start doing more computation on those other threads, the
read() syscalls take longer to read the same amount of data,
eventually slowing down to 50 MBps (50% slower). I've used
setaffinity() to isolate the Reader threads to one set of cores, and
the compute threads to a different set of cores, and so I don't think
it is CPU/scheduling interference.

Thoughts? Has anyone run into this before?

If you're using hyperthreading you may want to try it with either putting the computation threads on the siblings of the cpus for the reader threads (to share cache) or else not on the siblings of the cpus for the reader threads (to minimize contention of cpu resources).

Similarly, you may want to play with wither or not the threads are on the same or different sockets.

Chris

--
Chris Friesen
Software Developer
GENBAND
chris.friesen@xxxxxxxxxxx
www.genband.com
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/