On Tue, Dec 09, 2014 at 02:03:16PM -0800, Andi Kleen wrote: > Martin Ichilevici de Oliveira <iomartin@xxxxxxxxxxxx> writes: > > > 1. What happens when I try to allocate 100 pages with a call like this: > > > > numa_alloc_interleaved(100 * numa_pagesize()) > > > > I can think of two possible allocation schemes: > > a. Pages 0-24 are allocated to node 0, pages 25-49 are allocated to > > node 1, pages 50-74 are allocated on node 2 and pages 75-99 are > > allocated on node 3. > > > > b. Pages 0,4,8... are allocated on node 0, pages 1,5,9... are > > allocated on node 1 and so on > > It's approximately (b) > > > 2. What's the effect of using numactl --interleaved=0,1,2,3 -- ./myprog? > > I would assume it "substitutes" any malloc's to > > numa_alloc_interleaved(), but I'm not sure if it's just that. > > Any page allocated by the process is interleaved in access order > (which is different from what numa_alloc_interleaved does) Andi, Thank you for clarifying these up. Martin
Attachment:
pgpG5GxKcW8Gl.pgp
Description: PGP signature