Kk. Yue et Dj. Lilja, AN EFFECTIVE PROCESSOR ALLOCATION STRATEGY FOR MULTIPROGRAMMED SHARED-MEMORY MULTIPROCESSORS, IEEE transactions on parallel and distributed systems, 8(12), 1997, pp. 1246-1258
Existing techniques for sharing the processing resources in multiprogr
ammed shared-memory multiprocessors, such as time-sharing, space-shari
ng, and gang-scheduling, typically sacrifice the performance of indivi
dual parallel applications to improve overall system utilization. We p
resent a new processor allocation technique called Loop-Level Process
Control (LLPC) that dynamically adjusts the number of processors an ap
plication is allowed to use for the execution of each parallel section
of code, based on the current system load. This approach exploits the
maximum parallelism possible for each application without overloading
the system. We implement our scheme on a Silicon Graphics Challenge m
ultiprocessor system and evaluate its performance using applications f
rom the Perfect Club benchmark suite and synthetic benchmarks. Our app
roach shows significant improvements over traditional time-sharing and
gang-scheduling. It has performance comparable to, or slightly better
than, static space-sharing, but our strategy is more robust since, un
like static space-sharing, it does not require a priori knowledge of t
he applications' parallelism characteristics.