Re: [RFC PATCH 1/8] Convert the RCU tasklet into a softirq

From: Paul E. McKenney
Date: Mon Jul 16 2007 - 22:12:18 EST


On Mon, Jul 16, 2007 at 10:53:23PM +0200, Ingo Molnar wrote:
>
> * Steven Rostedt <rostedt@xxxxxxxxxxx> wrote:
>
> > But to answer your question. No, I didn't take any actual
> > measurements. The changes just seemed obvious to me (and others).
>
> btw., does anyone know about some reliable way to stress and measure RCU
> completion performance, via some real userspace app? I think there used
> to be an open-tons-of-files thing that unearthed the
> RCU-completion-single-threadness bottleneck a year or two ago? Anyone
> got a link to it (or to some other performance tool for RCU)?

It was more of a stress test -- it simply opened a file and immediately
closes it in a tight loop. 2.6.22 survives four of the following running
on a 4-CPU machine.

Attached are the kernel modules I use to measure RCU performance
(and to torture RCU), but they don't really measure completion
performance. (All licensed under GPL, FWIW.)

Thanx, Paul

(The following is my reconstruction of the open/close stress test.)

#include <stdio.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>

int main(int argc, char *argv[])
{
int fd;

for (;;) {
fd = open("/dev/null", O_RDONLY);
if (fd >= 0) {
close(fd);
}
}
}

Attachment: RCUtorture.2007.07.17a.tgz
Description: RCUtorture.2007.07.17a.tgz