Re: question: TLB sharing between child processes

From: Peter Chubb <peterc_at_gelato.unsw.edu.au>
Date: 2006-08-07 08:54:51
>>>>> "Sanjay" == Sanjay Bhandari <sbhandari@dataupia.com> writes:

Sanjay> (If this is the wrong forum for this question, a pointer to
Sanjay> the right one will be appreciated)
 
Sanjay> What can I expect in terms of TLB and cache sharing between
Sanjay> different processes when they are all non-exec'ed children of
Sanjay> the same parent (i.e. fork but no exec)?

There is no TLB sharing in standard Linux.  Matt Chapman had a patch
that enabled TLB sharing for memory regions with the same protections
and virtual address in different address spaces; benchmarking showed a
very large reduction in ITLB misses, but lesser reduction in DTLB
misses (COW means that data areas are not actually shared).  Overall,
ITLB misses weren't a big enough factor in the workloads we had
to make a real difference.  If you had a workload that had a large
shared memory region mapped into the same address in multiple
processes, the tradeoffs may differ.

Itanium caches are physically mapped, so they are always shared.

--
Dr Peter Chubb     http://www.gelato.unsw.edu.au  peterc_at_gelato.unsw.edu.au
http://www.ertos.nicta.com.au           ERTOS within National ICT Australia

-
To unsubscribe from this list: send the line "unsubscribe linux-ia64" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Received on Mon Aug 07 08:55:32 2006

This archive was generated by hypermail 2.1.8 : 2006-08-07 08:55:45 EST