Re: Problems with huge_pages and IBM Power8 - Mailing list pgsql-hackers

From reiner peterke
Subject Re: Problems with huge_pages and IBM Power8
Date
Msg-id 34326D2B-6E83-4695-9C63-6CA15C913D1F@drizzle.com
Whole thread Raw
In response to Re: Problems with huge_pages and IBM Power8  (Andres Freund <andres@anarazel.de>)
Responses Re: Problems with huge_pages and IBM Power8  (Tom Lane <tgl@sss.pgh.pa.us>)
List pgsql-hackers
> On Apr 12, 2016, at 10:20 PM, Andres Freund <andres@anarazel.de> wrote:
>
> On 2016-04-12 21:58:14 +0200, reiner peterke wrote:
>> Hi
>>
>> We have been doing some testing with Postgres (9.5.2) compiled on a Power8 running Centos 7
>>
>> When working with huge_pages, we initially got this error.
>>
>> munmap(0x3efbe4000000) failed: Invalid argument
>
> *munmap*, not mmap failed? that's odd; because there the hugepagesize
> shouldn't have much of an influence. If something fails it should be the
> initial mmap.
I’ll double check in the morning, but i did copy it from the log.

> Could you show a strace of a failed start with an
> unmodified postgres?

we didn’t have the error when not using huge_pages.

>> after a bit of investigation we noticed that hugepagesize is har coded
>> to 2MB
>
> Note it's not actually hardcoded to some size. It's just about rounding
> the size to a multiple of 2MB due to an older kernel bug:
>         /*
>          * Round up the request size to a suitable large value.
>          *
>          * Some Linux kernel versions are known to have a bug, which causes
>          * mmap() with MAP_HUGETLB to fail if the request size is not a
>          * multiple of any supported huge page size. To work around that, we
>          * round up the request size to nearest 2MB. 2MB is the most common
>          * huge page page size on affected systems.
>
>
>> Going further, we tried testing hugepages also on Ubuntu 16.04, also on the power8.  On Ubuntu Postgres did not like
thehugepages at all (set also to 16MB)  and consistently crashed. 
>
>> Looking for some insight into this issue.  the error from the postgres
>> log on ubuntu is below.  It apperas to be related to semephores.
>
> I've a bit of a hard time believing that this is related to huge pages.

Well all i have at the moment is that when we disabled huge pages on the kernel level and then restarted postgres there
wereno additional crashes. 
Unfortunately I cannot access the server now.  I will look further tomorrow.


>
>
> Greetings,
>
> Andres Freund

Sincerely,

Reiner Peterke




pgsql-hackers by date:

Previous
From: "David G. Johnston"
Date:
Subject: Re: Lets (not) break all the things. Was: [pgsql-advocacy] 9.6 -> 10.0
Next
From: Tom Lane
Date:
Subject: Re: Problems with huge_pages and IBM Power8