Re: [patch 2/2] cpusets: add interleave_over_allowed option

Paul Jackson
2007-10-30T23:44:28Z

David wrote:
> If your argument is that most applications are written to implement
> mempolicies without necessarily thinking too much about its cpuset
> placement or interactions with cpusets, then the requirement of remapping
> nodes when a cpuset changes for effected mempolicies isn't actually that
> important.

Just because they didn't think about cpuset remapping when they coded
their mempolicy calls, doesn't mean they wouldn't be broken by changes
in how mempolicy numbers nodes. Often, it's the other way around:
the less they though of it, the more likely changing it would break
them.

> In other words, my Choice C with AND'd behavior as opposed to
> remapping behavior could be introduced as a replacement for Choice A.

No - I will not agree to changing the default mempolicy kernel API node
numbering at this time. Period. Full stop. We can add non-default
choices for now, and perhaps in the light of future experience, we
may choose to do more later.

> Those applications that currently rely on the remapping are going to be
> broken anyway because they are unknowingly receiving different nodes than
> they intended, this is the objection to remapping that Lee agreed with.

No, they may or may not be broken. That depends on whether or not they had
specific hardware locality or affinity needs.

> The remap doesn't take into account any notion of locality or affinity to
> physical controllers and seems to be merely a convenience of not
> invalidating the entire mempolicy in light of an ever-changing cpuset
> policy.

If you're running apps that have specific hardware affinity requirements,
then perhaps you shouldn't be moving them about in the first place ;).
And if they did have such needs, aren't they just as likely to be busted
by AND'ing off some of their nodes as they are by remapping those nodes?

I sure wish I knew what real world, actual, not hypothetical, situations
were motivating this.

--
I won't rest till it's the best ...
Programmer, Linux Scalability
Paul Jackson <pj@sgi.com> 1.925.600.0401