Several calls to set_mempolicy and heap consistency

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



We are trying to understand the usage model with numa in order to see
how SGX technology can cope with NUMA and we have a few points that
are not clear. Maybe someone can put some light:

Imagine (for example) that someone calls set_mempolicy(node=1) on say
thread t1. And calls set_mempolicy(node=2) on thread t2.

Any subsequent allocations made on thread t1 will come from node 1 -
agreed. But then if those buffers are freed back to the heap and
thread t2 calls alloc(), can the same buffer (just freed by t1) be
returned to t2 by the heap? In short how does the heap ensure
consistency of the policies across threads? Is their extra code
required in the heap manager in order to be NUMA compliant.

Second question: suppose t1 calls set_mempolicy(node=1) at some time=0
and calls set_mempolicy(node=2) at time=100. Again buffers being
released back to the heap between time 0 and 100 are all from node 1
and potentially can be used for allocation after time 100; i.e. those
allocations will not be consistent with the policy set at time 100.
The question is about how those conflicts are being resolved, special
heap manager / rules about using the NUMA apis / others?

Thanks in advance,
Serge
--
To unsubscribe from this list: send the line "unsubscribe linux-numa" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Linux Kernel]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux SCSI]     [Devices]

  Powered by Linux