Re: [RFC PATCH] Fix aio performance regression for database caused by THP

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu, 2013-08-15 at 12:34 -0700, Andi Kleen wrote:
> Khalid Aziz <khalid.aziz@xxxxxxxxxx> writes:
> 
> > I am working with a tool that simulates oracle database I/O workload.
> > This tool (orion to be specific -
> > <http://docs.oracle.com/cd/E11882_01/server.112/e16638/iodesign.htm#autoId24>)
> > allocates hugetlbfs pages using shmget() with SHM_HUGETLB flag. 
> 
> Is this tool available for download?

I am not sure if it is available separately. It is part of Oracle 11gR2
release.

> 
> I would rather prefer to address the locking overhead in THP too.
> 
> The fundamental problem is that we have to touch all the pages?

Not so much that THP has to touch all the pages, rather it checks the
head and tail flags multiple times with the assumption they could change
underneath. Then it executes memory barriers (in compound_trans_head())
to force any updates to these flags from all cores. It also locks the
head page (in put_compound_page()) which stops any other thread trying
to put reference to one of the pages in the compound page. I see a lot
of cycles being spent in compound_trans_head() and various atomic
operations in the path added by THP. 

--
Khalid


--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@xxxxxxxxx.  For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@xxxxxxxxx";> email@xxxxxxxxx </a>




[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Bugtraq]     [Linux]     [Linux OMAP]     [Linux MIPS]     [ECOS]     [Asterisk Internet PBX]     [Linux API]