Messages in this thread | | | Date | Thu, 29 May 2008 23:16:18 -0700 | From | Andrew Morton <> | Subject | Re: [patch 00/41] cpu alloc / cpu ops v3: Optimize per cpu access |
| |
On Fri, 30 May 2008 08:01:02 +0200 Eric Dumazet <dada1@cosmosbay.com> wrote:
> Really, percpu allocations are currently not frequent at all. > > vmalloc()/vfreee() are way more frequent and still use a list.
Sure it's hard to conceive how anyone could go and do a per-cpu allocation on a fastpath.
But this has nothing to do with the frequency! The problems surround the _amount_ of allocated memory and the allocation/freeing patterns.
Here's another example. And it's only an example! Generalise!
ext3 maintains three percpu_counters per mount. Each percpu_counter does one percpu_alloc. People can mount an arbitrary number of ext3 filesystems!
Another: there are two percpu_counters (and hence two percpu_alloc()s) per backing_dev_info. One backing_dev_info per disk and people have been known to have thousands (iirc ~10,000) disks online.
And those examples were plucked only from today's kernel. Who knows what other problems will be in 2.6.45?
| |