Messages in this thread | | | From | Denys Vlasenko <> | Subject | Re: Does process need to have a kernel-side stack all the time? | Date | Mon, 14 Apr 2008 20:42:40 +0200 |
| |
On Monday 14 April 2008 19:44, Andi Kleen wrote: > > A lot of effort went into minimizing of stack usage. > > If I understand it correctly, one of the reasons for this > > was to be efficient and not have lots of pages > > used for stacks when we have a lot of threads > > (tens of thousands). > > Actually the real reason the 4K stacks were introduced IIRC was that > the VM is not very good at allocation of order > 0 pages and that only > using order 0 and not order 1 in normal operation prevented some stalls. > > This rationale also goes back to 2.4 (especially some of the early 2.4 > VMs were not very good) and the 2.6 VM is generally better and on > x86-64 I don't see much evidence that these stalls are a big problem > (but then x86-64 also has more lowmem). > > Note that your proposal doesn't change this at all.
Actually, it does, because if you have only N*no_of_CPUs stacks, you can allocate them upfront, making fragmentation a non-issue.
However, the proposal doesn't look viable anyway. -- vda
| |