On Sat, 2011-05-21 at 21:51 +0100, Pedro Gonnet wrote: > On Sat, 2011-05-21 at 16:48 -0400, Mark Hounschell wrote: > > On 05/20/2011 06:08 AM, Pedro Gonnet wrote: > > > > > > Hi guys, > > > > > > I'm currently working on a shared-memory parallel Molecular Dynamics > > > simulation library (http://mdcore.sourceforge.net/) geared towards > > > multi-core systems. > > > > > > The library uses pthreads (plus some OpenMP for some simple loops) and > > > uses pthread_cond_wait and pthread_cond_signal to coordinate a group of > > > worker threads. > > > > > > I've been profiling the library on different machines and kernels and > > > have noticed that in many cases there are significant (several ms, > > > measured with Intel's Vtune-thing) lags between calls to > > > pthread_cond_signal and the waiting thread actually getting back to > > > work. > > > > > > I've tried the Ubuntu -rt and -preempt kernels, and the whole simulation > > > runs twice as slowly, despite following the advice given here: > > > > > > https://rt.wiki.kernel.org/index.php/HOWTO:_Build_an_RT-application > > > > > > My question is the following: which kernel (or set of configuration > > > options) will minimize these latencies? And if linux-rt is the answer, > > > in what ways do I have to be careful when porting the simulation for > > > this kernel? > > > > > > > Are you saying several ms latency from pthread_cond_signal to waking up a > > thread in pthread_cond_wait? > > > > Yes. Or at least, this is what Vtune says. It could also be a fluke in > Vtune, but I would still be interested in knowing what kernel or what > kernel options can make these operations as fast as possible. > > Cheers, Pedro Do you use any pthread* primitives involving scheduling? How do you start your process? How many threads? What else is on the machine? IOW, can you describe your environment more completely. Best -PWM > > > > > -- > To unsubscribe from this list: send the line "unsubscribe linux-rt-users" in > the body of a message to majordomo@xxxxxxxxxxxxxxx > More majordomo info at http://vger.kernel.org/majordomo-info.html -- To unsubscribe from this list: send the line "unsubscribe linux-rt-users" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html