On Tue, Mar 31, 2015 at 3:26 PM, Richard W.M. Jones <rjones@redhat.com> wrote:
On Tue, Mar 31, 2015 at 12:21:55PM -0700, Dave Johansen wrote:
> You're right that is a problem because my "purely CPU bound task" was
> actually writing to disk every 10 seconds, so I've attached an updated
> version that pre-allocates a vector and stores the results there so they
> can be dumped when the users presses Ctrl-C. With this update, the "CPU
> bound task" should only using CPU and existing memory but I still see the
> same slow down in the "CPU bound task" when the disk I/O is happening.

For the definitive test, you might want to add a call to mlockall()
into your program.  It is supposed to lock every page of your process
into RAM (just in case it is being swapped out, and hence using I/O).

I guess you will also need to run the CPU test program as root.

I added the call to mlockall() (it did have to be run as root) on a F21 machine with no swap and the slow down was still visible in the "CPU bound task".