Re: [RFC][PATCH] ipc: Remove IPCMNI
From: Manfred Spraul <hidden>
Date: 2018-03-29 18:07:46
Also in:
linux-fsdevel, lkml
Hello Mathew, On 03/29/2018 12:56 PM, Matthew Wilcox wrote:
On Thu, Mar 29, 2018 at 10:47:45AM +0200, Manfred Spraul wrote:quoted
quoted
quoted
quoted
quoted
quoted
This can be implemented trivially with the current code using idr_alloc_cyclic.Is there a performance impact? Right now, the idr tree is only large if there are lots of objects. What happens if we have only 1 object, with id=INT_MAX-1?The radix tree uses a branching factor of 64 entries (6 bits) per level. The maximum ID is 31 bits (positive signed 32-bit integer). So the worst case for a single object is 6 pointer dereferences to find the object anywhere in the range (INT_MAX/2 - INT_MAX]. That will read 12 cachelines. If we were to constrain ourselves to a maximum of INT_MAX/2 (30 bits), we'd reduce that to 5 pointer dereferences and 10 cachelines.
I'm concerned about the up to 6 branches. But this is just guessing, we need a test with a realistic workload. -- Manfred _______________________________________________ Containers mailing list Containers@lists.linux-foundation.org https://lists.linuxfoundation.org/mailman/listinfo/containers