The default scheduling algorithm in Solaris and other operatingsystems may result in frequent relocation of threads at run-time.Excessive thread relocation cause poor memory performance. This can beavoided by binding threads to processors. However, binding threads toprocessors may result in an unbalanced load. By considering a previouslyobtained theoretical result and by evaluating a set of multithreadedSolaris programs using a multiprocessor with eight processors, we areable to bound the maximum performance loss due to binding threads. Thetheoretical result is also recapitulated. By evaluating another set ofmultithreaded programs, we show that the gain of binding threads toprocessors may be substantial, particularly for programs withfine-grained parallelism
展开▼