Re: [RFC] [rt-tests] change to cyclictest behavior

Carsten Emde
2010-01-07T07:20:33Z

On 01/07/2010 01:30 AM, Leyendecker, Robert wrote:

>>> How about -m (mlockall) as well?
>> Hmm, I think that this one is less obvious. Apparently, there are
>> a bunch of different opinions on mlockall(). I once heard, for
>> example, the opinion that mlockall() may - under some conditions -
>> introduce a performance penalty, but I did not verify that. Many
>> real-time systems do not have a "swap" line in /etc/fstab;
>> mlockall() is not needed in such systems. In addition, most today's
>> systems have so much RAM that swapping became a rather rare event.
>> I hope some other RT-ers who are more knowledgeable about memory
>> management and swapping can comment on this.
> I have found mlockall() necessary. I alloc very large buffers for
> transmitting and capturing hundreds of voip streams. In my testing,
> if I don't mlockall() mostly following the advice on the rt-wiki
> (thanks for this life saver) network rt performance is unacceptable,
> jitter is 10X - 50X worse on my system. File system activity renders
> the system choppy and sluggish. All my memory is nailed up and
> preloaded where possible before I pull the trigger. I run on standard
> FC distro (with most services turned off). Getting good performance
> on a standard distro is amazing to me.
> Our test team has discovered that they get good network performance
> while simultaneously running wireshark and other apps like VNC. I
> think audio guys run huge x apps and full blown distros, while
> running 12+ channels of raw audio to disk. I can't see how they do it
> without mlock.
> [..]
Yes, of course. No one wants to drop the -m option. It was only the
question whether we include it into the new -S (equals -a -t -n -d plus
same priority on all) option which would make it impossible to run -S
without -m. In case it is decided not to include -m, you would need to
specify it separately, such as, for example

cyclictest -Sp99 -m

I would guess that this is acceptable, isn't it?

Carsten.