Messages in this thread | | | Date | Mon, 14 Apr 2003 18:43:21 +0200 | From | Antonio Vargas <> | Subject | Re: Quick question about hyper-threading (also some NUMA stuff) |
| |
On Mon, Apr 14, 2003 at 09:24:45AM -0700, Martin J. Bligh wrote: > >> > Perhaps it would be good to un-COW pages: > >> > > >> > 1. fork process > >> > 2. if current node is not loaded, continue as usual > >> > 3. if current node is loaded: > >> > 3a. pick unloaded node > >> > 4b. don't do COW for data pages, but simply copy them to node-local memory > >> > > >> > This way, read-write sharings would be replicated for each node. > >> > >> Sharing read-write stuff is a total nightmare - you have to deal with > >> all the sync stuff, and invalidation. In real-life scenarios, I really > >> doubt the complexity is worth it - read-only is quite complex enough, > >> thanks ;-) > > > > I mean MAP_PRIVATE stuff, not MAP_SHARED. > > OK, unless I misunderstand you, I think that happens naturally for that > kind of thing - when we do the COW split, we'll get a node-local page > by default (unless the local node is out of memory). > > M. � IYes, it happens naturaly, but it's done when we try to write to it. What I meant was, at fork time, it we are forking to a different node, instead of COW-marking, do the COW-mark and the immediately do a sort-of for_each_page(touch_as_if_written(page)), so that nodes would not have to reference the memory from others.
I don't know if it's really usefull, and anyways I could not try to code it unless there is a sort of NUMA simulator for "normal" machines.
Greets, Antonio.
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |