paging behavior in Linux

Neelam Saboo (neelam_saboo@usa.net)
28 Feb 2001 11:58:15 CST


Hi,

I am a graduate student at Univ Of Illinois at Urbana-Champaign.
Regarding my thesis, I need some help with running a multithreaded program on
red hat linux. I am experimenting with paging behavior. I use a machine where
swap space is large compared to available memory. I run two threads, worker
thread & prefetch thread.
prefetch thread prefetches data in memory by accessing it which worker
thread will use later. Expected result is prefetch thread should take
most of the page faults leaving worker thread time to do actual work.
So, paging time in prefetch thread and work time in worker thread should
overlap and total time taken should be less.
In a PThreads book I found out that when one thread is waiting on a page
fault, other thread continues to work.

When I run my program on a readhat linux machine, I dont get results as
expected, work thread seems to be stuck when prefetch thread is waiting on
a page fault. Is it because, when one thread waits on a page fault, page
table is locked for the other thread also. This is linux specific, as I
get expected results on solaris.

Can you please provide some explanations ?

Thanks
Neelam

____________________________________________________________________
Get free email and a permanent address at http://www.netaddress.com/?N=1
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/