People who think this is a good idea may not be exactly right. There is a
related area of work, full of great papers, in the hardware area. The papers
are all about something called "cache affinity" and are a worthwhile read.
My personal take on these issues is:
BAD GOOD
--- ----
remote fork() remote exec()
process migration checkpoint / restart
dynamic load balancing static load balancing across machines
across machines + dynamic load balancing within
(SMP) machines.
Yup, there are limitations with my point of view. But it is easy to
implement what I'm describing and it sloves most problems easily. Some
problems need to be recoded.
Given that clusters are not anywhere near the common case (no matter how
much you and I like them), it would seem prudent to do the lesser amount
of change to the kernel that gains you most of the benefit. People who
haven't learned this lesson have repeatedly built overly complex and
expensive clusters. Let's not do that to Linux.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu