One thing I'm not sure is addressed by this design is memory locality. I know of libnuma http://linux.die.net/man/3/numa which allows me to express what NUMA domain my memory should be allocated from at run-time for each allocation.

In the case that I want to allocate memory in a specific NUMA domain (not just local vs non-local), I believe this design is insufficient because the number of domains are only known at run-time.

Also, as far as alignment is concerned I will throw in that x86 is relatively unique in having a statically known cache-line size. Both ARM and PowerPC cores can differ in their cache-line sizes. I feel this is a significant argument for the ability to dynamically express alignment.

Reply via email to