We provide a constant time schedulability test for a multiprocessor server handling aperiodic tasks. Dhall?s effect is avoided by dividing the tasks in two priority classes based on task utilization: heavy and light. We prove that if the load on the multiprocessor server stays below U
threshold = 3 - \[\sqrt 7 \] \approx 35.425%, the server can accept incoming aperiodic tasks and guarantee that the deadlines of all accepted tasks will be met. 35.425% utilization is also a threshold for a task to be characterized as heavy.
The bound U
threshold = 3 - \[\sqrt 7 \] \approx 35.425% is easy-to-use, but not sharp if we know the number of processors in the multiprocessor. For a server with m processors, we calculate a formula for the sharp bound U
threshold(m), which converges to U
threshold from above as m \rightarrow \infty.
The results are based on a utilization function u
m(x) = 2(1 - x)/(2 + \[\sqrt {2 + 2x} \]) + x/m. By using this function, the performance of the multiprocessor can in some cases be improved beyond U
threshold(m) by paying the extra overhead of monitoring the individual utilization of the current tasks.