Re: #tj-percpu has been rebased

From: H. Peter Anvin
Date: Mon Feb 16 2009 - 18:32:13 EST


Rusty Russell wrote:
>>
>> All in all I think a dedicated virtual zone per CPU as opposed to
>> interleaving them seems to make more sense. Even with 4096 CPUs and
>> reserving, say, 256 MB per CPU it's not that much address space in the
>> context of a 47-bit kernel space. On 32 bits I don't think anything but
>> the most trivial amount of percpu space is going to fly no matter what.
>
> It's the TLB cost which I really don't want to pay; num_possible_cpus()
> 4096 non-NUMA is a little silly (currently impossible).
>
> I'm happy to limit per-cpu allocations to pagesize, then you only need to
> find num_possible_cpus() contig pages, and if you can't, you fall back to
> vmalloc.
>

num_possible_cpus() can be very large though, so in many cases the
likelihood of finding that many pages approach zero. Furthermore,
num_possible_cpus() may be quite a bit larger than the actual number of
CPUs in the system.

-hpa

--
H. Peter Anvin, Intel Open Source Technology Center
I work for Intel. I don't speak on their behalf.

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/