svn commit: r242402 - in head/sys: kern vm

Andre Oppermann andre at freebsd.org
Wed Oct 31 20:31:53 UTC 2012


On 31.10.2012 20:40, Ian Lepore wrote:
> On Thu, 2012-11-01 at 06:30 +1100, Peter Jeremy wrote:
>> On 2012-Oct-31 18:57:37 +0000, Attilio Rao <attilio at FreeBSD.org> wrote:
>>> On 10/31/12, Adrian Chadd <adrian at freebsd.org> wrote:
>>>> Right, but you didn't make it configurable for us embedded peeps who
>>>> still care about memory usage.
>>>
>>> How is this possible without breaking the module/kernel ABI?
>>
>> Memory usage may override ABI compatibility in an embedded environment.
>>
>>> All that assuming you can actually prove a real performance loss even
>>> in the new cases.
>>
>> The issue with padding on embedded systems is memory utilisation rather
>> than performance.
>>
>
> There are potential performance hits too, in that embedded systems tend
> to have tiny caches (16K L1 with no L2, that sort of thing), so
> purposely padding things so that large parts of a cache line aren't used
> for anything wastes a scarce resource.

You can define CACHE_LINE_SIZE to 0 on those platforms.
Or to make it even more granular there could be a CACHE_LINE_SIZE_LOCKS
that is used for lock padding.

-- 
Andre

> That said, I think a point Attilio was trying to make is that we won't
> see a large hit because this doesn't affect a large number of mutex
> instances.  I'm willing to accept his expert advice on that, not in
> small part because I'm not sure how I'd go about disputing it. :)
>
> I'm really busy with $work right now, but things should calm down in a
> couple weeks, and I'd be willing to do some measurements on arm systems
> then, if I can get some help on how to generate useful data.
>
> -- Ian
>
>
>
>



More information about the svn-src-all mailing list